閱讀屋>資料庫作業系統> 6個安全設定mongodb資料庫的命令

6個安全設定mongodb資料庫的命令

6個安全設定mongodb資料庫的命令

  1、以安全認證模式啟動

  複製程式碼 程式碼如下:

  bin/mongod?–auth?-dbpath /Users/mc2/mongo/db -logpath /Users/mc2/mongo/log.log &

  使用–auth選項啟動mongod程序即可啟用認證模式。

  或者,也可以修改/etc/mongodb.conf,設定auth=true,重啟mongod程序。

  2.新增使用者

  複製程式碼 程式碼如下:

  db.addUser(“admin”, “123456″)

  3.安全認證

  複製程式碼 程式碼如下:

  db.auth(“admin”, “123456″)

  認證成功的情況下

  複製程式碼 程式碼如下:

  db.system.users.find()

  { “_id” : ObjectId(“5032e8386a7fc39e31978c50″), “user” : “admin”, “readOnly” : false, “pwd” : “95ec4261124ba5951720b199908d892b” }

  否則返回空

  4.為資料庫寫資料(同步到磁碟)加鎖

  複製程式碼 程式碼如下:

  db.runCommand({fsync:1,lock:1})

  說明:

  該操作已經對資料庫上鎖,不允許執行寫資料操作,一般在執行資料庫備份時有用。執行命令,結果示例如下:

  複製程式碼 程式碼如下:

  db.runCommand({fsync:1,lock:1})

  { “errmsg” : “access denied; use admin db”, “ok” : 0 }

  use admin

  > db.runCommand({fsync:1,lock:1})

  {“info” : “now locked against writes, use db.fsyncUnlock() to unlock”,

  “seeAlso” : “http://www.mongodb.org/display/DOCS/fsync+Command“,

  “ok” : 1}

  5、檢視當前鎖狀態

  複製程式碼 程式碼如下:

  db.currentOp()

  > db.currentOp()

  {“inprog” : [ ],

  “fsyncLock” : 1,

  “info” : “use db.fsyncUnlock() to terminate the fsync write/snapshot lock”}

  其中,fsyncLock為1表示MongoDB的fsync程序(負責將寫入改變同步到磁碟)不允許其他程序執行寫資料操作

  6、解鎖

  複製程式碼 程式碼如下:

  use admin

  >db.fsyncUnlock()

  { “ok” : 1, “info” : “unlock completed” }

  db.$cmd.sys.unlock.findOne() 效果等同

  > db.currentOp()

  { “inprog” : [ ] }

  說明當前沒有鎖,可以執行寫資料操作。

【6個安全設定mongodb資料庫的命令】相關文章: