2017-04-02 113 views
0

我有一臺運行El Capitan 10.11並具有node.js v6.9.1的mac。 我想用自制軟件安裝mongodb 3.2。它似乎安裝,但是當我運行的mongod我得到這個錯誤:mongodb v3.2無法在mac中運行

Found an invalid index { v: 2, key: { version: 1 }, name: 
"incompatible_with_version_32",ns: "admin.system.version" } on the 
admin.system.version collection: this version of mongod cannot 
build new indexes of version number 2 

我想這可能是因爲我有過的MongoDB的另一個版本,所以我卸載以前下載,並與「釀造名單」已通過驗證的軟件包。

回答

1

this version of mongod cannot build new indexes of version number 2

看起來你以前安裝的MongoDB 3.4,並使用新的功能,其是not backward compatible與MongoDB的3.2創建了一些數據文件。 MongoDB 3.4引入了v:2索引,支持language-specific collation

I thought it might be because I had another version of mongodb before, so I uninstalled all packages previously downloaded and verified with 'brew list'.

通常卸載自制包不除去所有未在該包公式中指定的文件(或中指定的目錄,但現在具有附加文件)。這有意使您的MongoDB 保持不變,因此軟件包更新不會影響您的數據。

Any idea what Im doing wrong here?

有可以採取的解決這個問題的幾種方法:

  • 安裝的MongoDB 3.4服務器而不是3.2。
  • 遵循文檔的步驟到downgrade MongoDB 3.4 to 3.2。這將需要使用MongoDB 3.4從數據文件中刪除不兼容的功能。
  • 如果您的中的以前的數據不重要(例如可以重新創建開發/測試數據),請將中的所有文件移動到新位置,以便3.2服務器以空數據目錄開始。 Homebrew的默認(假設您正在啓動/停止MongoDB作爲服務)將爲/usr/local/var/mongodb