mongodb 修改oplog的大小
mongodb 修改oplog的大小
-
關閉mongd的例項, 如果是主那麼需要先進行切換(rs.stepDown())
db.shutdownServer()
或
/usr/local/mongodb-3.0.15/bin/mongod -f /etc/mongod_5011.cnf --shutdown -
以單例項啟動mongod
修改配置檔案為單例項
usr/local/mongodb-3.0.15/bin/mongod -f /etc/mongod_5011.cnf -
重新建立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() -
刪除現有的oplog(如果是複製集無需備份oplog, 假如真的壞了還可以從另一個節點複製,或者重新同步資料)
db = db.getSiblingDB(‘local’)
db.oplog.rs.drop() -
建立一個新的oplog
db.runCommand( { create: “oplog.rs”, capped: true, size: (150 * 1024 * 1024 * 1024) } )
150 表示你設定oplog的oplog 的大小,單位是GB, 上面我設定oplog 大小為 150GB -
插入最後一條oplog資料到新的oplog
db.oplog.rs.save( db.temp.findOne() )
db.oplog.rs.find() -
以複製集的模式重啟該例項
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/