溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mongodb開啟oplog的方法

發(fā)布時(shí)間:2020-08-04 14:34:31 來源:億速云 閱讀:701 作者:清晨 欄目:編程語言

小編給大家分享一下mongodb開啟oplog的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

解決方案:在單實(shí)例上配置副本集,就有Oplog。

1.Linux服務(wù)器安裝Mongo

具體步驟請(qǐng)移駕 :https://www.jianshu.com/p/a6fc584d76e4

2.修改配置文件

# vi /etc/mongod.conf

文件末添加(yml文件注意格式)

replication:
  oplogSizeMB: 50
  replSetName: rs

3.重啟服務(wù)

systemctl restart mongod.service

4.后續(xù)操作

4-1 登錄

# mongo

4-2 服務(wù)初始化

> show dbs

服務(wù)重啟后,第一次登入,執(zhí)行其他命令時(shí)(例如:show dbs),會(huì)提示錯(cuò)誤,錯(cuò)誤信息如下:

E QUERY [thread1] Error: listDatabases failed:{
"ok" : 0,
"errmsg" : "not master and slaveOk=false",
"code" : 13435,
"codeName" : "NotMasterNoSlaveOk"
}

此時(shí)需要執(zhí)行初始化命令

rs.initiate({ _id: "副本集名稱", members: [{_id:0,host:" 服務(wù)器的IP : Mongo的端口號(hào) "}]})
例如(對(duì)應(yīng)上述配置):
rs.initiate({ _id: "rs", members: [{_id:0,host:"172.30.23.213:27017"}]})

執(zhí)行完成后提示,代表執(zhí)行成功:

{ "ok" : 1 }

4-3 初始完后

初始完,副本集中唯一的節(jié)點(diǎn),可能短時(shí)間顯示為SECONDARY或OTHER。一般而言,稍等一會(huì),就會(huì)自然恢復(fù)為primary,無需人工干預(yù)。

rs:OTHER>
rs:PRIMARY>
rs:PRIMARY>

5.查看結(jié)果

使用Robo3T 連接數(shù)據(jù)庫查看 local 下的 Collections

mongodb開啟oplog的方法

6.可能出現(xiàn)的問題

(1)初始化時(shí),請(qǐng)指明 Server信息和端口信息,否則初始化時(shí)可能報(bào)錯(cuò),報(bào)錯(cuò)信息如下:

原因 :沒有指定IP 和 端口,副本集名稱

"errmsg" : "No host described in new configuration 1 for replica set replwms maps to this node",

(2)如果數(shù)據(jù)庫的數(shù)據(jù)量不大,并且長時(shí)間初始這種過渡狀態(tài)(SECONDARY或OTHER),去看實(shí)例的日志,也顯示無進(jìn)展,此時(shí)可以考慮重啟服務(wù)。

看完了這篇文章,相信你對(duì)mongodb開啟oplog的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI