關於 Mongodb 4.x
1)3.x 步驟
- 安裝
- 環境變量配置path
- 啓動mongodb服務 mongod --dbpath 跟上存儲路徑開啓服務
- 再次啓動一個客戶端:mongo 即可!
注:4.x 與3.x基本相同,但是無需指定存儲路徑,在安裝的時候,要求配置(舉例爲windows環境下)
2 )4.x 步驟
- 安裝(可選可視化工具,windows環境下)
- 環境變量Path配置
- 直接用 mongo (相關服務直接寫入開啓任務中)
MongoDB的權限配置
第一步創建超級管理用戶
use admin
db.createUser({
user:'admin', pwd:'123456', roles:[{role:'root',db:'admin'}]
})
注意這裏一定要是 use admin
, 而且db也是admin
第二步修改 Mongodb 數據庫配置文件
- Windows下,路徑:
C:\Program Files\MongoDB\Server\4.0\bin\mongod.cfg
這裏是默認安裝路徑 - 其他系統具體配置查看官方手冊:https://docs.mongodb.com/manual/reference/configuration-options/
- 注意windows和Mac的配置文件名不一樣
windows下的配置:
# 開啓權限認證
security:
authorization: enabled
mac下:路徑按照文檔上的來
systemLog:
destination: file
path: "/usr/local/mongodb/log/mongod.log"
logAppend: true
storage:
dbPath: "/Users/johnny/data/db"
journal:
enabled: true
processManagement:
fork: true
net:
bindIp: 127.0.0.1
port: 27017
security:
authorization: enable
第三步重啓 mongodb 服務
- 在windows下的 services.msc 下重啓
- mac下,只需要使用配置文件進行連接 , 任選其一即可
mongod --config /usr/local/mongodb/etc/mongod.conf
mongod -f /usr/local/mongodb/etc/mongod.conf
第四步用超級管理員賬戶連接數據庫
- 本機:mongo admin -u 用戶名 -p 密碼
- 如
mongo eggcms -u eggadmin -p 123456
- 如
- 遠程:mongo 192.168.1.200:27017/test -u user -p password
- 如:
mongo localhost:27017/eggcms -u eggadmin -p 123456
- 如:
第五步給 eggcms 數據庫創建一個專屬用戶
只能訪問 eggcms 不能訪問其他數據庫
use eggcms
db.createUser({
user: "eggadmin", pwd: "123456", roles: [ { role: "dbOwner", db: "eggcms" } ]
})
Mongodb 賬戶權限配置中常用的命令
show users;
查看當前庫下的用戶db.dropUser("eggadmin")
刪除用戶db.updateUser( "admin", {pwd:"password"});
修改用戶密碼db.auth("admin","password");
權限認證,如果沒有權限可以用權限的用戶的權限進行操作,參數是:角色,密碼- $
mongo eggcms -u eggadmin -p 123456
使用當前用戶eggadmin連接指定數據庫eggcms
Mongodb 數據庫角色
- 數據庫用戶角色:read、readWrite;
- 數據庫管理角色:dbAdmin、dbOwner、userAdmin;
- 集羣管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
- 備份恢復角色:backup、restore;
- 所有數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
- 超級用戶角色:root
- 參考:https://www.cnblogs.com/zzw1787044/p/5773178.html
連接數據庫的時候需要配置賬戶密碼
- 在nodejs中賬戶和密碼的鏈接配置
mongodb://username:pwd@localhost:27017/dbname
- 如:
const url = 'mongodb://admin:123456@localhost:27017/eggcms';
- 如: