2016-02-23 112 views
0

我配置了3節點副本集並卸載了mongo,當我的虛擬內存超出限制時,我開始了mongo複製,但無法使這些命令正常工作。Mongo副本集配置

rs.initiate() 
rs.reconfig()//with config params 

我以前的副本集有primary(27017)secondary(27018,27019) 重裝我能得到輔助的工作,但我主要是說

沒有副本集的conf文件找到後。

我不明白究竟發生了什麼。 我錯過了一些文件,或者mongo想讓我更多地瞭解它。 請儘快諮詢。

+1

嘗試'rs.status();'讓我知道它給了什麼。 –

回答

0

rs.initiate需要配置文件。給它,同時調用rs.initiate。

config = { 
_id : "name_of_replica_set", members : [ 
    { _id : 0, host : "localhost:27017" }, 
    { _id : 1, host : "localhost:27018" }, 
    { _id : 2, host : "localhost:27019" } 
    ] 
}; 
rs.initiate(config); 

試試這個,看看它是否適合你。

+0

爲什麼要這樣做?副本集仍然存在,基本上只增加了一個新成員。 –

+0

我沒有發現他提到了有關添加新成員的任何內容。但後來他提到他可以連接到輔助人員。所以他應該一定能夠連接到初級。我建議這是因爲錯誤消息是關於缺少配置。 –

+0

請仔細閱讀:「我的__condary__工作」。他刪除了舊的小學,然後再次設置。只有小學。其他機器仍然構建一個由兩個成員組成的副本集。現在,爲了讓新設置的機器和剩餘的副本集建立一個新的機器,會調用什麼? –