一、問題
在安裝了3.4.9的MongDB後,在網上隨便下載了一個MongoVUE客戶端,無法查看默認數據庫local的集合,並且創建集合的時候出現了下面的問題
Error in creating new Collection
未將對象引用設置到對象的實例。
Type: System.NullReferenceException
Stack: 在 MangoUI.ComNavTree.dbAddCollection_Click(Object sender, EventArgs e)
MongoDB在3.2之後默認的是wiredTiger引擎,而管理軟件匹配的還是之前的引擎,所以無法使用,必須重置存在引擎。
二、原因:
在2015/3/17以前,MongoDB只有一個存儲引擎,叫做MMAP,MongoDB3.0的推出使得MongoDB有了兩個引擎:MMAPv1和WiredTiger。
MMAPv1:適應於所有MongoDB版本,MongoDB3.0的默認引擎
WiredTiger:僅支持64位MongoDB
MongoDB兩種引擎可以互相切換,我們可以在創建服務的時候指定引擎類型。
三、解決步驟:
重置存儲引擎:
cd D:\MongoDB\bin
重置存儲引擎語句
mongod –storageEngine mmapv1 –dbpath D:\MongoDB\data2
*注意的是:數據庫位置必須重新指定,如原來的是D:\MongoDB\data 重置存儲引擎的時候必須更換名稱,D:\MongoDB\data2 以及所在盤符存儲空間應大於4G
完成後客戶端用命令use TestDB創建自己的數據庫
重新用MongoVUE鏈接TestDB