mongodb基础系列—主从复制具体搭建以及解说(2)

来源:未知 责任编辑:责任编辑 发表时间:2013-12-22 14:57 点击:

5.其实我们所做的操作,mongodb都给我们记录了oplog,保存在特殊数据库中local的oplog.$main集合中。注意:local数据库中只保存更改数据库状态的操作,insert、delete、update.查询操作find()是不会跟我们记录的。

查看oplog记录:【后期另一种主从复制模式也是保存在此集合中】
\

6.介绍oplog.$main集合的数据结构,这些都代表什么意思,我们又是如何找到有用的信息呢?为什么我们要了解这块呢?

因为复制机制,就是通过查看oplog信息来维护数据库同步一致。

如上图,这个集合中,有属性key :ts,op,n,o

其实:ts:代表的是8字节的 时间戳,由4字节unix timestamp + 4字节自增计数表示这个值很重要,在选举(如master宕机时)新primary时,会选择ts最大的那个secondary作为新primary。【后面我们介绍另一种主从模式复本集中就会用到】

op:1 字节的操作类型,例如i表示insert,d表示delete。【如上图中,我们在日志中查看op 是i,正是我们刚插入的一条信息】

ns:操作所在的namespace。【namespace是当前数据.当前集合。使用db.my.insert则是默认创建my集合】

o:操作所对应的 document,即当前操作的内容(比如更新操作时要更新的的字段和值【上图正是我们insert的一条具体信息】)

o2: 在执行更新操作时的where条件,仅限于 update时才有该属性【下图则会展示此属性】

其中op,可以是如下几种情形之一:

"i": insert

"u": update

"d": delete

"c": db cmd

"db": 声明当前数据库 (其中ns 被设置成为=>数据库名称+ '.')

"n":  no op,即空操作,其会定期执行以确保时效性

7.展示日志记录中op其他值,比如删除、更新。【前提我们在主服务器中执行这些操作】

op:d 删除操作。o:具体删除那一条。因为_id是唯一的。
\

op:u 更新操作。o:具体更新那一条记录,o2:更新那个字段。
\

哎,絮絮叨叨了N长,下篇博客再更新另一种主从复制模式吧:副本集。

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • db2管理工具小结
  • DB2数据库的导出与导入(Windows客户端)
  • db2 CLP中如何换行
  • DB2查看表结构及所用表语句
  • DB2 · CREATE TABLESPACE
  • 使用DB2对象:创建模式、表和视图
  • DB2数据库逻辑卷的复制
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1