6個安全設定mongodb資料庫的命令
1、以安全認證模式啟動
複製程式碼 程式碼如下:
bin/mongod??auth?-dbpath /Users/mc2/mongo/db -logpath /Users/mc2/mongo/ &
使用?auth選項啟動mongod程序即可啟用認證模式。
或者,也可以修改/etc/,設定auth=true,重啟mongod程序。
2.新增使用者
複製程式碼 程式碼如下:
ser(“admin”, “123456″)
3.安全認證
複製程式碼 程式碼如下:
(“admin”, “123456″)
認證成功的情況下
複製程式碼 程式碼如下:
()
{ “_id” : ObjectId(“5032e8386a7fc39e31978c50″), “user” : “admin”, “readOnly” : false, “pwd” : “95ec4261124ba5951720b199908d892b” }
否則返回空
4.為資料庫寫資料(同步到磁碟)加鎖
複製程式碼 程式碼如下:
ommand({fsync:1,lock:1})
說明:
該操作已經對資料庫上鎖,不允許執行寫資料操作,一般在執行資料庫備份時有用。執行命令,結果示例如下:
複製程式碼 程式碼如下:
ommand({fsync:1,lock:1})
{ “errmsg” : “access denied; use admin db”, “ok” : 0 }
use admin
> ommand({fsync:1,lock:1})
{“info” : “now locked against writes, use cUnlock() to unlock”,
“seeAlso” : ““,
“ok” : 1}
5、檢視當前鎖狀態
複製程式碼 程式碼如下:
entOp()
> entOp()
{“inprog” : [ ],
“fsyncLock” : 1,
“info” : “use cUnlock() to terminate the fsync write/snapshot lock”}
其中,fsyncLock為1表示MongoDB的fsync程序(負責將寫入改變同步到磁碟)不允許其他程序執行寫資料操作
6、解鎖
複製程式碼 程式碼如下:
use admin
>cUnlock()
{ “ok” : 1, “info” : “unlock completed” }
db.$One() 效果等同
> entOp()
{ “inprog” : [ ] }
說明當前沒有鎖,可以執行寫資料操作。