2015-01-05 55 views
0

失敗我試圖將轉儲的數據庫恢復到本地服務器,但它失敗。mongorestore空的system.js.bson

爲了使轉儲我運行:
mongodump --host somehost.com -d app123 --port 10043 --username my_username --password my_password --out /tmp/mongodump
並能正常工作。

要恢復我運行:
mongorestore --db my_db --drop /tmp/mongodump/app123
並在空文件失敗:

2015-01-05T12:56:47.759+0100 /tmp/mongodump/app123/system.js.bson 
2015-01-05T12:56:47.759+0100 going into namespace [my_db.system.js] 
file /tmp/mongodump/app123/system.js.bson empty, skipping 
2015-01-05T12:56:47.759+0100 Creating index: { key: { _id: 1 }, ns: "my_db.system.js", name: "_id_" } 
2015-01-05T12:56:47.803+0100 DBClientCursor::init call() failed 
assertion: 10276 DBClientBase::findN: transport error: 127.0.0.1:27017 ns: my_db.$cmd query: { getlasterror: 1 } 

如果我刪除系統*從轉儲然後mongorestore工作沒有任何錯誤。

+0

這不是一個編程問題。與數據庫管理和配置相關的問題屬於[dba.stackexchange.com](http://dba.stackexchange.com)。 StackOverflow只是一個編程問題的網站。 –

回答

1

我覺得這跟_id_指數有關。嘗試刪除或重命名此,然後再做mongodump,看看是否有效。

我曾經有一個類似的問題,這是一個索引。我不記得是否刪除了索引或將其重命名。所以它可能是下劃線,在這種情況下重命名它應該工作。或者可能是索引損壞了,在這種情況下刪除它是你唯一的選擇。

+0

我試圖重命名或刪除遠程服務器上的system.js/_id_索引,但索引保持不變。我使用的是Robomongo客戶端,並沒有任何影響。在日誌中有一個錯誤:'dropIndex失敗' – oluckyman

+0

嘗試從mongodump目錄中刪除索引文件並查看它是否導入。如果是這樣,它肯定與該索引有關。如果你不能放棄索引,那麼它可能會被使用。我們正在詳細介紹您的實施細節,因此很難提供相關的準確支持。 –

+0

刪除文件'system.js.metadata.json'(存儲索引)解決了這個問題。 – oluckyman

相關問題