2015-02-23 78 views
0

我一直在使用MongoDB一會兒。我一直設法連接,而不使用用戶名和密碼(在我設置Mongo的2臺服務器上)。MongoDB連接憑證

我現在想改變它,所以用戶名和密碼必須被使用。到目前爲止,我使用userAdminAnyDatabase角色在admin數據庫中創建了一個用戶。我可以看到用戶在那裏。

接下來,我儘量讓我的連接並進行測試:

mongoose.connect("mongodb://username:[email protected]:8080/MEAN"); 

var conn = mongoose.connection;    

conn.on("error", function(err){ 
    console.log(err); 
}); 

我沒有把我的真實的用戶名和密碼,還有的課程。 有了這個,我得到以下錯誤:[Error: connection closed]

這是怎麼回事?

+0

是你的密碼「密碼」和你的用戶名「用戶名」? – 2015-02-23 14:06:01

+0

@HelioSantos哈哈不,我明顯沒有公佈真正的憑據安全原因 – Coop 2015-02-23 14:06:51

+0

啓動'mongo'實例usind'--auth'模式,或在'mongo.conf'中設置'auth = true' – itzMEonTV 2015-02-23 14:07:37

回答

1

如果你想與憑證連接,使用--auth

sudo mongod --dbpath=/your/db/path --auth 

/etc/mongodb.conf

開始蒙戈mongo實例,設置

auth=true 

然後重啓服務

sudo service mongodb restart 
+0

感謝您的幫助。在我本地版本的Mongo(Mac Yosemite)上,我似乎沒有/ etc /目錄下的mongodb.conf文件(儘管我可以在安裝了它的另一臺服務器上看到它)。 – Coop 2015-02-23 14:15:03

+0

我的意思是無論'mongo'配置文件:) – itzMEonTV 2015-02-23 14:16:20

+0

啊是的,我在'/ usr/local/etc/mongod.conf'中找到了它。謝謝,我現在就試試這個。 – Coop 2015-02-23 14:17:25