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

來源:互聯網
上載者:User

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})

說明:

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

複製代碼 代碼如下:

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” : [ ] }

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.