轉載:https://blog.csdn.net/q1056843325/article/details/70941697
今天使用MongoDB時遇到了一些問題
建立數據庫連接時出現了warnings
出現這個警告的原因是新版本的MongDB為了讓我們創建一個安全的數據庫
必須要進行驗證
后來在外網找到了答案
解決方案如下:
創建管理員
use admin
db.createUser(
{
user: "userAdmin", //用戶名
pwd: "123", //密碼
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] //權限
}
)
重啟MongoDB服務器
mongod --auth --port 27017 --dbpath <關聯路徑>
1
(端口默認就是27017可以不指定)
終端最后輸出"[initandlisten] waiting for connections on port 27017",
啟動完成
連接並認證
mongo --port 27017 -u "userAdmin" -p "123" --authenticationDatabase "admin"
1
添加額外權限用戶
use test
db.createUser(
{
user: "tester",
pwd: "123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"
MongoDB更新了,使用mongoose也不能簡單的建立連接了
必須要添加必要參數
var mongoose = require('mongoose');
var db = mongoose.createConnection('localhost', 'test', 27017, {user: 'tester', pass: '123'});