2013-11-15 59 views
0

我已經建立了一個基於磁盤的表,有2個datanodes,一個mgmt和2個sql節點。啓動數據節點沒有 - 初始mysql集羣

Cluster is working fine ... 所以我只想測試它的HA,所以我在linux提示符下用KILL命令手工殺死了一個datanode,並且我連接到了sql節點並在表中插入了一些記錄。

我然後試圖啓動數據管理部,其餘與此命令殺死

倉,而無需使用任何--initial

/NDBD當我看到managmnt節點 上的日誌它顯示下面的錯誤和數據節點沒有啓動:

/節點3:強制節點關閉完成。在開始階段發生5.由錯誤2355導致:'無法恢復模式(資源配置錯誤)。永久性錯誤,需要外部行動'。

但是當我使用--initial啓動,則意味着做,從開始一個乾淨的開始(這將是耗時拷貝所有的數據文件,如果我們有100G?)

但我想要的數據節點開始複製記錄從它停止(殺害)的點

我該怎麼做?

回答

1

您遇到了不可恢復的故障(對於該節點,而不是整個集羣),因此您別無選擇,只能重建它。爲了避免這種情況,請安全地停止節點而不是殺死進程。例如停止節點3執行命令

ndb_mgm -e '3 stop' 

但是復甦也不會丟失數據,如果該節點組中的節點(你只有一組)仍然上漲,從恢復數據。

首先啓動節點組中的其他節點。

/bin/ndbd 

檢查他們是「開始」(否則你會丟失數據)

ndb_mgm -e show 

在腐敗的節點與其他節點的數據

node 3> /bin/ndbd --initial 
+0

初始化它可是難道不這樣要求的節點3檢索數據的新鮮副本,即使它們已經提交了嗎? –

+0

正確。我想我應該更新答案,說如何避免這個......完成 – KCD