一、安裝前創建文件目錄
1.創建C:\MongoDB目錄。
2.創建C:\MongoDB\data目錄。
3.創建C:\MongoDB\logs目錄。
4.創建C:\MongoDB\logs\mongo.log文件。
二、官網下載安裝
安裝目錄選擇第一步創建的目錄。
三、加入系統環境變量
C:\MongoDB\bin
四、安裝服務
1.創建配置文件C:\MongoDB\mongod.conf
#數據庫路徑
dbpath=C:\MongoDB\data
#日志輸出文件路徑
logpath=C:\MongoDB\logs\mongo.log
#錯誤日志采用追加模式
logappend=true
#啟用日志文件,默認啟用
journal=true
#這個選項可以過濾掉一些無用的日志信息,若需要調試使用請設置為false
quiet=true
#端口號 默認為27017
port=27017
#密碼驗證
#auth=true
2.安裝服務
mongod --config "C:\MongoDB\mongod.conf" --install --serviceName "MongoDB"
3.啟動
net start MongoDB
4.創建管理員
mongo
>use admin;
>db.createUser(
{ user: "admin",
customData: {description: "superuser"},
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
);
5.創建超級管理員
>use admin
>db.createUser(
{
user:"root",
pwd:"password",
roles:["root"]
}
);
角色具體說明:
注意:創建某個數據庫用戶時,應先use dataBaseName切換到對應數據庫
Read:允許用戶讀取指定數據庫
readWrite:允許用戶讀寫指定數據庫
dbAdmin:允許用戶在指定數據庫中執行管理函數,如索引創建、刪除,查看統計或訪問system.profile
userAdmin:允許用戶向system.users集合寫入,可以找指定數據庫里創建、刪除和管理用戶
dbOwner:數據庫擁有者,包含readWrite、dbAdmin、userAdmin
clusterAdmin:只在admin數據庫中可用,賦予用戶所有分片和復制集相關函數的管理權限
readAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀權限
readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀寫權限
userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的userAdmin權限
dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的dbAdmin權限
root:只在admin數據庫中可用。超級賬號,超級權限
五、配置登陸驗證
1.取消注釋
配置文件C:\MongoDB\mongod.conf中的
#auth=true
2.重啟服務加載配置文件
sc stop MongoDB
sc start MongoDB
3.測試
mongo
>use admin;
>db.auth("admin", "password");
1
P.S:
創建業務數據庫管理員
>db.createUser({
user:"user1",
pwd:"123456",
customData:{
name:'coodyz',
email:'coodyz@qq.com',
age:20,
},
roles:[
{role:"readWrite",db:"db001"},
{role:"readWrite",db:"db002"},
'read'// 對其他數據庫有只讀權限,對db001、db002是讀寫權限
]
});
修改密碼
>use admin;
>db.changeUserPassword("username", "password");
修改密碼和用戶信息
>db.runCommand(
{
updateUser:"username",
pwd:"password",
customData:{title:"password"}
}
);
查看所有用戶
>use admin
>db.system.users.find().pretty()
