我在MongoDB 2.2中的複製分片集羣中使用了mongodump和mongorestore。獲得備份並將其恢復。MongoDB。在還原時保留關於分片集合的信息
首先,我使用mongodump創建所有系統的轉儲,然後刪除一個具體的集合並使用mongorestore將它恢復爲mongodump的輸出。之後,收集是正確的(它包含的數據是正確的,也是索引),但有關這個收集是否分片的信息將丟失。在丟棄它之前,這個集合被分割了。但是,恢復之後,該集合不再被分割。
我想知道是否存在保存這些信息的備份方式。我在想,可能將用於收集的分片信息保存在管理數據庫中,但在轉儲中,admin文件夾是空的,並且使用show集合來獲取此數據庫,我什麼也得不到。然後我認爲它可以保存在元數據中,但這會很奇怪,因爲我知道在元數據中存儲了有關索引的信息並正確地還原了索引。
然後,我想知道是否可以使用此信息而不是mongodump + mongorestore,文件系統快照;或者可能仍然使用mongodump和mongorestore,但是會停止系統或鎖定寫入。我不這樣做,最後的選擇可能是原因,因爲我沒有執行寫作操作,而恢復甚至不鎖定它,而只是給出想法。
我也想知道是否有人完全確定是否這種功能在當前版本中仍然不可用。
任何想法?
關於分片的信息保存在配置服務器的config數據庫中 - 三個專用的'mongod'實例。 – ghik 2013-02-27 23:11:35
我一直在看配置數據庫中的塊集合,我認爲這正是我正在尋找的。但是,我試着恢復這個集合,它不起作用。我是否應該恢復整個配置數據庫以使我的集合重新分區? – 2013-02-28 18:38:12
目前尚不清楚您要*擁有哪個流程。你是否試圖在其他地方重新創建分片羣集? – 2013-02-28 19:57:40