我下載了一個mongoDB數據庫,這意味着我有一組XXX.0 [xxx.1,...]和XXX.ns文件。我使用Homebrew安裝了mongoDB(在Mac OS X上)並運行了mongod,dbpath參數指向一個包含這些文件的目錄。但是,當我使用mongo shell並要求查看可用數據庫或集合時,除了「本地」數據庫和沒有集合外,我什麼也得不到。我究竟做錯了什麼?我如何讓mongoDB在目錄中「查看」數據庫?感謝, Yariv。如何將mongodb連接到現有的一組數據庫文件
0
A
回答
1
根據您下載的數據庫文件命名,使用MongoDB MMAPv1 storage engine生成文件。就好像它是使用MongoDB WiredTiger storage engine生成的那樣,您將擁有collection.*.wt
文件。
現在,如果您剛剛通過自制軟件安裝了最新的穩定版本的MongoDB,它目前是v3.2。這將與new default storage engine of WiredTiger一起出現。
如果你也有在該目錄中local.<n>
和local.ns
文件,MongoDB的會給你一個錯誤,說明存儲文件不兼容象下面這樣:
[initandlisten] exception in initAndListen: 28662 Cannot start server. Detected data files in /data/target created by the 'wiredTiger' storage engine, but the specified storage engine was 'mmapv1'., terminating
沒有這些文件mongod
將WiredTiger存儲引擎運行,並會忽略現有的(複製的)MMAPv1文件。
如果這是你的情況,你可以運行mongod
和--storageEngine選項來指定MMAPv1。這將設置mongod
與MMAPv1存儲引擎一起運行。例如:
mongod --dbpath <your db files dir> --storageEngine=mmapv1
而且備案,結賬mongodump和mongorestore導出/導入,而不是複製數據庫文件的二進制格式的數據庫內容。
相關問題
- 1. 如何連接到現有的mongodb數據庫
- 2. 將Rails應用程序連接到現有的Mongodb數據庫
- 3. 如何將字節數組連接到數據庫中的現有數組
- 4. 將PhoneGap App連接到MongoDB數據庫
- 5. 如何將TeamCity連接到現有的SQLServer 2005數據庫
- 6. 如何將現有的SQL Server數據庫連接到Access 2007
- 7. 如何將現有數據庫連接到sequelize.js?
- 8. 如何連接到.sql文件中定義的現有數據庫?
- 9. 如何將achartEngine連接到數據庫?
- 10. MongoDB IRepository數據庫連接
- 11. mongodb本地連接到vps數據庫
- 12. NodeJS/MongoDB:只連接一次數據庫
- 13. 如何連接到ASP.NET MVC中的現有數據庫?
- 14. 如何連接到手機上的現有sqlite數據庫
- 15. 如何連接到Laravel 5中的現有MySQL數據庫?
- 16. 在tJava組件中使用現有的數據庫連接
- 17. 如何將數據推送到MongoDB中的現有文檔?
- 18. 加載現有的數據庫到mongodb
- 19. 如何將數據從json數組保存到數據庫MongoDB?
- 20. 將現有的數據庫連接到mysql
- 21. 將OPA連接到現有的關係數據庫
- 22. 將Magento連接到現有數據庫的能力?
- 23. 如何使用貓鼬連接到Heroku上的mongodb數據庫?
- 24. 如何使用帶環回的SSL連接到MongoDB數據庫
- 25. 將sqlite數據庫連接到linqpad時出現連接錯誤
- 26. 如何將文件從數組連接到新文件夾?
- 27. MongoDB:如何使用相同的連接連接到不同的數據庫?
- 28. 如何將文件附加到現有文件中的mongodb
- 29. 如何將圖像文件上傳到現有數據庫?
- 30. 在Windows上Meteor.js,如何連接到現有數據庫
謝謝!事實證明,當我使用默認存儲引擎(WiredTiger)運行mongod時,會自動創建多個WiredTiger文件。因此,在運行--storageEngine = mmapv1開關時出現錯誤。但在刪除除了。之外的所有文件後。和.ns之一,並與開關運行,它的工作很好。 –