mongodb 修改oplog的大小

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Brighter_Xiao/article/details/83576234

mongodb 修改oplog的大小

  1. 关闭mongd的实例, 如果是主那么需要先进行切换(rs.stepDown())
    db.shutdownServer()

    /usr/local/mongodb-3.0.15/bin/mongod -f /etc/mongod_5011.cnf --shutdown

  2. 以单实例启动mongod
    修改配置文件为单实例
    usr/local/mongodb-3.0.15/bin/mongod -f /etc/mongod_5011.cnf

  3. 重新创建oplog size 的大小
    use local
    db = db.getSiblingDB(‘local’)
    db.temp.drop()
    db.temp.save( db.oplog.rs.find( { }, { ts: 1, h: 1 } ).sort( {$natural : -1} ).limit(1).next() )
    db.temp.find()

  4. 删除现有的oplog(如果是复制集无需备份oplog, 假如真的坏了还可以从另一个节点复制,或者重新同步数据)
    db = db.getSiblingDB(‘local’)
    db.oplog.rs.drop()

  5. 创建一个新的oplog
    db.runCommand( { create: “oplog.rs”, capped: true, size: (150 * 1024 * 1024 * 1024) } )
    150 表示你设置oplog的oplog 的大小,单位是GB, 上面我设置oplog 大小为 150GB

  6. 插入最后一条oplog数据到新的oplog
    db.oplog.rs.save( db.temp.findOne() )
    db.oplog.rs.find()

  7. 以复制集的模式重启该实例
    db.shutdownServer()

    /usr/local/mongodb-3.0.15/bin/mongod -f /etc/mongod_5011.cnf --shutdown
    修改配置文件为复制集模式
    /usr/local/mongodb-3.0.15/bin/mongod -f /etc/mongod_5011.cnf

参考官方文档
https://docs.mongodb.com/v3.0/tutorial/change-oplog-size/

猜你喜欢

转载自blog.csdn.net/Brighter_Xiao/article/details/83576234