[已解決]成功完成django tutorial後,我嘗試使用mongoDB作爲數據庫,其中Django MongoDB Engine。這是settings.py
數據庫配置:Django MongoDB引擎連接失敗
DATABASES = {
'default': {
'ENGINE': 'django_mongodb_engine',
'NAME': 'test',
'HOST': 'localhost',
'PORT': 27017,
# 'OPTIONS' : {
# 'slave_okay' : True,
# }
}
}
這是錯誤消息我得到的,運行python manage.py syncdb
後:
raise AutoReconnect("could not find master/primary")
pymongo.errors.AutoReconnect: could not find master/primary
我得到這個錯誤,甚至關停MongoDB服務器後,讓我發現這需要成爲一個連接問題。我發佈了一個關於如何解決這個問題的答案。
使用Ubuntu 12.04 LTS 64位,Python 2.7版,Django的1.4.2,MongoDB的x86_64的2.2.1(清潔新安裝)
您是否設置了副本集?如果您只連接到單個服務器'slave_okay'選項沒有任何意義... –
正如我所提到的,我不使用副本集。最初,我沒有使用「OPTIONS」條目,但錯誤是完全一樣的。我補充說,因爲我認爲這可能有幫助。無論有沒有它,我都會得到同樣的錯誤。 – DrKaoliN
ns無效僅表示在您連接的數據庫中沒有用戶集合。你的數據庫沒有損壞 - 它顯然沒有包含預期的合適的集合/模式。 –