国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MongoDB > 正文

MongoDB添加仲裁節點報錯:replica set IDs do not match的解決方法

2020-10-29 18:42:52
字體:
來源:轉載
供稿:網友

背景:

由于歷史原因,某個MongoDB副本集只有一主一從雙節點,無法滿足自動故障轉移要求,需要配置一個仲裁節點。

原有節點192.168.10.20:27017,192.168.10.21:27017,現在準備在20上配置一個新節點27018當做仲裁

在當前主節點上執行

repset:PRIMARY> cfg={_id:"repset", members:[{_id:0, host:'192.168.10.20:27017', priority:1},{_id:2, host:'192.168.10.21:27017', priority:2}, {_id:3, host:'192.168.10.20:27018', arbiterOnly:true}]};repset:PRIMARY> rs.reconfig(cfg)


顯示配置是成功的,接著用命令查看副本集狀態時,發現仲裁節點不可用,報錯信息replica set IDs do not match。

repset:PRIMARY> rs.status()


網上的各種文檔都是說①查看副本集的名稱是否一致 ②把節點上的數據全都刪掉。

我在確認副本集配置名稱一致后,刪除仲裁節點的數據時發現:1、通過客戶端是無法刪除副本集配置集合;2、刪除底層物理文件會導致Mongod進程啟動失敗。

在仔細回想initiate一次性副本集配置的操作時,發現配置后,只啟動了一個客戶端。我的猜想是會不會是因為我啟動了仲裁節點的客戶端,仲裁節點生成了單獨的副本集ID。

于是我將仲裁節點的配置文件db、log、Mongodb.conf全都刪除,并重新命令啟動仲裁節點MongoD進程后,直接在當前Primary節點按之前的操作添加仲裁節點后,發現仲裁節點已正常。

結論:

目前只是證實了我的猜想,還沒找到官方的說法。

在添加副本集節點的時候,新增的節點在啟動服務后,一定不要連接客戶端,否則新增節點會生成另外的副本集ID,雖然副本集名稱一致,但是IDs不一致會報錯。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丰城市| 延长县| 凤山县| 龙井市| 偏关县| 克什克腾旗| 连南| 繁昌县| 都昌县| 会宁县| 烟台市| 石泉县| 祁门县| 浪卡子县| 如皋市| 丰原市| 瑞金市| 丰都县| 乐陵市| 晋城| 苍南县| 榆社县| 尤溪县| 武胜县| 两当县| 都江堰市| 建德市| 临泽县| 咸宁市| 雷州市| 泾川县| 鲁甸县| 镇安县| 忻州市| 临澧县| 永嘉县| 新龙县| 玉屏| 阳曲县| 老河口市| 鹤壁市|