zoukankan      html  css  js  c++  java
  • mongodb系列~oplog

    一 oplog基本格式
       0 ts-> 日志时间戳(选举根据最新的日志时间戳)
       1 h->操作的全局唯一标识(也是时间戳)
       2 ns->db.collcetion(具体的集合元信息)
       3 ui->表示当前登录用户的会话 id 值(uuid值形式)
       4 wall->表示该操作的执行时间,utc时间。
       5 op-> 具体的操作命( i-insert,u-update,d-delete,c-db cmd(比如drop)))
       6 o->对应的document:
          0 针对数据的变更都包含唯一_id,数据变更依赖的就是_id
          1 insert包含_id和具体插入内容
          2 delete包含_id
          3 update包含具体更新操作 0-2包含_id
          4 db_cmd包含具体的命令
      二 oplog窗口时间
          1 oplog中最旧和最新条目之间的时间间隔  
          2 oplog大小是固定的,所以窗口时间不固定,因为单位时间内写入的条数并不是恒定的
          3 查看oplog命令
             db.getReplicationInfo()  
             "logSizeMB" : 1800, 设置的大小
             "usedMB" : 0.01,       应用的大小
             "timeDiff" : 471,         第一次和最新一次的相差秒数
             "timeDiffHours" : 0.13, 第一次和最新一次的相差时间数
              "tFirst" : "Mon Aug 23 2021 14:37:21 GMT+0800 (CST)", 最早的oplog
              "tLast" : "Mon Aug 23 2021 14:45:12 GMT+0800 (CST)",  最新的oplog
              "now" : "Mon Aug 23 2021 14:45:16 GMT+0800 (CST)"    现在的时间
      三 oplog 更改大小(小于3.6)
           1 关闭从节点mongod 然后去掉repl参数,以单节点方式启动
           2  use local
               db.temp.save( db.oplog.rs.find( { }, { ts: 1, h: 1 } ).sort( {$natural : -1} ).limit(1).next() )
               db.temp.find() #确定是否存在
               oplog db.oplog.rs.drop() 删除
               db.runCommand( { create: "oplog.rs", capped: true, size: (20 * 1024 * 1024 * 1024) } ) #新建
               db.oplog.rs.save( db.temp.findOne() )  #导入 
            3 加入repl参数 重启mongod节点,以从节点方式加入启动
       四 oplog更改大小(大于3.6)
            在集群每个成员分布执行 db.adminCommand({replSetResizeOplog: 1, size: XXMB})
            1 推荐先更改从节点再更改主节点
            2 更改完会立刻输出getReplicationInfo()的输出结果
       五 备份应用
           1 dump备份添加--oplog 这样备份的有效期就在备份的结束那一刻 但是注意只能应用全库备份的情况下
           2 restore恢复添加 --oplogReplay
              

     

     
             
              

  • 相关阅读:
    输出控制符的详解
    printf函数的讲解
    关于字节、Ascll码、字符的存储的讲解
    1.2
    1.1
    OS模块学习笔记
    time时间模块总结
    编译py为exe
    python计算excel平均值和标准差
    Python与Excel交互--Xlwings
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/15167949.html
Copyright © 2011-2022 走看看