mongodb-用戶認(rèn)證、權(quán)限設(shè)置祟同、配置文件作喘、備份還原

創(chuàng)建數(shù)據(jù)庫(kù)用戶
> use admin
switched to db admin
> db.createUser(
...   {
...     user: "dba",
...     pwd: "dba",
...     roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
...   }
... )
Successfully added user: {
    "user" : "dba",
    "roles" : [
        {
            "role" : "userAdminAnyDatabase",
            "db" : "admin"
        }
    ]
}
  • user:用戶名
  • pwd:密碼
  • db : 數(shù)據(jù)庫(kù)名字
  • roles:指定用戶的角色,可以用一個(gè)空數(shù)組給新用戶設(shè)定空角色晕城;在roles字段,可以指定內(nèi)置角色和用戶定義的角色泞坦。
role里的角色可以選:
Built-In Roles(內(nèi)置角色):
1. 數(shù)據(jù)庫(kù)用戶角色:read、readWrite;
2. 數(shù)據(jù)庫(kù)管理角色:dbAdmin砖顷、dbOwner贰锁、userAdmin赃梧;
3. 集群管理角色:clusterAdmin、clusterManager豌熄、clusterMonitor授嘀、hostManager;
4. 備份恢復(fù)角色:backup房轿、restore粤攒;
5. 所有數(shù)據(jù)庫(kù)角色:readAnyDatabase、readWriteAnyDatabase囱持、userAdminAnyDatabase夯接、dbAdminAnyDatabase
6. 超級(jí)用戶角色:root  
// 這里還有幾個(gè)角色間接或直接提供了系統(tǒng)超級(jí)用戶的訪問(wèn)(dbOwner 、userAdmin纷妆、userAdminAnyDatabase)
7. 內(nèi)部角色:__system
具體角色:
read:允許用戶讀取指定數(shù)據(jù)庫(kù)
readWrite:允許用戶讀寫(xiě)指定數(shù)據(jù)庫(kù)
dbAdmin:允許用戶在指定數(shù)據(jù)庫(kù)中執(zhí)行管理函數(shù)盔几,如索引創(chuàng)建、刪除掩幢,查看統(tǒng)計(jì)或訪問(wèn)system.profile
userAdmin:允許用戶向system.users集合寫(xiě)入逊拍,可以找指定數(shù)據(jù)庫(kù)里創(chuàng)建、刪除和管理用戶
clusterAdmin:只在admin數(shù)據(jù)庫(kù)中可用际邻,賦予用戶所有分片和復(fù)制集相關(guān)函數(shù)的管理權(quán)限芯丧。
readAnyDatabase:只在admin數(shù)據(jù)庫(kù)中可用,賦予用戶所有數(shù)據(jù)庫(kù)的讀權(quán)限
readWriteAnyDatabase:只在admin數(shù)據(jù)庫(kù)中可用世曾,賦予用戶所有數(shù)據(jù)庫(kù)的讀寫(xiě)權(quán)限
userAdminAnyDatabase:只在admin數(shù)據(jù)庫(kù)中可用缨恒,賦予用戶所有數(shù)據(jù)庫(kù)的userAdmin權(quán)限
dbAdminAnyDatabase:只在admin數(shù)據(jù)庫(kù)中可用,賦予用戶所有數(shù)據(jù)庫(kù)的dbAdmin權(quán)限轮听。
root:只在admin數(shù)據(jù)庫(kù)中可用骗露。超級(jí)賬號(hào),超級(jí)權(quán)限
開(kāi)啟用戶權(quán)限

新建mongodb.conf文件血巍,并加入“auth=true”

從配置文件啟動(dòng)mongodb服務(wù)

./bin/mongod -f mongodb.conf

用戶驗(yàn)證
[caideyang@localhost mongodb3.2.10]$ ./bin/mongo 
MongoDB shell version: 3.2.10
connecting to: test
> use caideyang
switched to db caideyang
> db.auth('cdy','passwd')
1
> 
mongodb.conf配置文件
#數(shù)據(jù)庫(kù)數(shù)據(jù)存放目錄
dbpath=/usr/local/mongodb304/data
#數(shù)據(jù)庫(kù)日志存放目錄
logpath=/usr/local/mongodb304/logs/mongodb.log 
#以追加的方式記錄日志
logappend = true
#端口號(hào) 默認(rèn)為27017
port=27017 
#以后臺(tái)方式運(yùn)行進(jìn)程
fork=true 
 #開(kāi)啟用戶認(rèn)證
auth=true
#關(guān)閉http接口萧锉,默認(rèn)關(guān)閉http端口訪問(wèn)
nohttpinterface=true
#mongodb所綁定的ip地址
bind_ip = 127.0.0.1,192.168.1.140
#啟用日志文件,默認(rèn)啟用
journal=true 
#這個(gè)選項(xiàng)可以過(guò)濾掉一些無(wú)用的日志信息述寡,若需要調(diào)試使用請(qǐng)?jiān)O(shè)置為false
quiet=true 
其他配置參數(shù)含義
--quiet # 安靜輸出
--port arg  # 指定服務(wù)端口號(hào)柿隙,默認(rèn)端口27017
--bind_ip arg   # 綁定服務(wù)IP,若綁定127.0.0.1鲫凶,則只能本機(jī)訪問(wèn)优俘,不指定默認(rèn)本地所有IP
--logpath arg   # 指定MongoDB日志文件,注意是指定文件不是目錄
--logappend # 使用追加的方式寫(xiě)日志
--pidfilepath arg   # PID File 的完整路徑掀序,如果沒(méi)有設(shè)置,則沒(méi)有PID文件
--keyFile arg   # 集群的私鑰的完整路徑惭婿,只對(duì)于Replica Set 架構(gòu)有效
--unixSocketPrefix arg  # UNIX域套接字替代目錄,(默認(rèn)為 /tmp)
--fork  # 以守護(hù)進(jìn)程的方式運(yùn)行MongoDB不恭,創(chuàng)建服務(wù)器進(jìn)程
--auth  # 啟用驗(yàn)證
--cpu   # 定期顯示CPU的CPU利用率和iowait
--dbpath arg    # 指定數(shù)據(jù)庫(kù)路徑
--diaglog arg   # diaglog選項(xiàng) 0=off 1=W 2=R 3=both 7=W+some reads
--directoryperdb    # 設(shè)置每個(gè)數(shù)據(jù)庫(kù)將被保存在一個(gè)單獨(dú)的目錄
--journal   # 啟用日志選項(xiàng)叶雹,MongoDB的數(shù)據(jù)操作將會(huì)寫(xiě)入到j(luò)ournal文件夾的文件里
--journalOptions arg    # 啟用日志診斷選項(xiàng)
--ipv6  # 啟用IPv6選項(xiàng)
--jsonp # 允許JSONP形式通過(guò)HTTP訪問(wèn)(有安全影響)
--maxConns arg  # 最大同時(shí)連接數(shù) 默認(rèn)2000
--noauth    # 不啟用驗(yàn)證
--nohttpinterface   # 關(guān)閉http接口,默認(rèn)關(guān)閉27018端口訪問(wèn)
--noprealloc    # 禁用數(shù)據(jù)文件預(yù)分配(往往影響性能)
--noscripting   # 禁用腳本引擎
--notablescan   # 不允許表掃描
--nounixsocket  # 禁用Unix套接字監(jiān)聽(tīng)
--nssize arg (=16)  # 設(shè)置信數(shù)據(jù)庫(kù).ns文件大小(MB)
--objcheck  # 在收到客戶數(shù)據(jù),檢查的有效性换吧,
--profile arg   # 檔案參數(shù) 0=off 1=slow, 2=all
--quota # 限制每個(gè)數(shù)據(jù)庫(kù)的文件數(shù)折晦,設(shè)置默認(rèn)為8
--quotaFiles arg    # number of files allower per db, requires --quota
--rest  # 開(kāi)啟簡(jiǎn)單的rest API
--repair    # 修復(fù)所有數(shù)據(jù)庫(kù)run repair on all dbs
--repairpath arg    # 修復(fù)庫(kù)生成的文件的目錄,默認(rèn)為目錄名稱dbpath
--slowms arg (=100) # value of slow for profile and console log
--smallfiles    # 使用較小的默認(rèn)文件
--syncdelay arg (=60)   # 數(shù)據(jù)寫(xiě)入磁盤(pán)的時(shí)間秒數(shù)(0=never,不推薦)
--sysinfo   # 打印一些診斷系統(tǒng)信息
--upgrade   # 如果需要升級(jí)數(shù)據(jù)庫(kù) * Replicaton 參數(shù)

--------------------------------------------------------------------------------

--fastsync  # 從一個(gè)dbpath里啟用從庫(kù)復(fù)制服務(wù),該dbpath的數(shù)據(jù)庫(kù)是主庫(kù)的快照沾瓦,可用于快速啟用同步
--autoresync    # 如果從庫(kù)與主庫(kù)同步數(shù)據(jù)差得多满着,自動(dòng)重新同步,
--oplogSize arg # 設(shè)置oplog的大小(MB) * 主/從參數(shù)

--------------------------------------------------------------------------------

--master    # 主庫(kù)模式
--slave # 從庫(kù)模式
--source arg    # 從庫(kù) 端口號(hào)
--only arg  # 指定單一的數(shù)據(jù)庫(kù)復(fù)制
--slavedelay arg    # 設(shè)置從庫(kù)同步主庫(kù)的延遲時(shí)間 * Replica set(副本集)選項(xiàng):

--------------------------------------------------------------------------------

--replSet arg   # 設(shè)置副本集名稱 * Sharding(分片)選項(xiàng)

--------------------------------------------------------------------------------
--configsvr # 聲明這是一個(gè)集群的config服務(wù),默認(rèn)端口27019贯莺,默認(rèn)目錄/data/configdb
--shardsvr  # 聲明這是一個(gè)集群的分片,默認(rèn)端口27018
--noMoveParanoia    # 關(guān)閉偏執(zhí)為moveChunk數(shù)據(jù)保存

備份還原數(shù)據(jù)庫(kù)

備份
[caideyang@localhost mongodb3.2.10]$ ./bin/mongodump --port=27017 -ucdy -ppasswd --db=caideyang -o /home/caideyang/backup/
2016-10-30T15:58:58.082+0800    writing caideyang.score to 
2016-10-30T15:58:58.083+0800    writing caideyang.user to 
2016-10-30T15:58:58.084+0800    done dumping caideyang.score (4 documents)
2016-10-30T15:58:58.085+0800    done dumping caideyang.user (2 documents)
[caideyang@localhost ~]$ tree backup/
backup/
└── caideyang
    ├── score.bson
    ├── score.metadata.json
    ├── user.bson
    └── user.metadata.json

1 directory, 4 files
還原
[caideyang@localhost mongodb3.2.10]$ ./bin/mongorestore --port=27017 -ucdy -ppasswd --db=caideyang ../backup/caideyang/
2016-10-30T16:04:43.914+0800    building a list of collections to restore from ../backup/caideyang dir
2016-10-30T16:04:43.918+0800    reading metadata for caideyang.score from ../backup/caideyang/score.metadata.json
2016-10-30T16:04:43.918+0800    reading metadata for caideyang.user from ../backup/caideyang/user.metadata.json
2016-10-30T16:04:43.918+0800    restoring caideyang.score from ../backup/caideyang/score.bson
2016-10-30T16:04:43.918+0800    restoring caideyang.user from ../backup/caideyang/user.bson
2016-10-30T16:04:43.930+0800    error: multiple errors in bulk operation:
  - E11000 duplicate key error collection: caideyang.user index: _id_ dup key: { : ObjectId('5815a5fa5fee222be4c321c9') }
  - E11000 duplicate key error collection: caideyang.user index: _id_ dup key: { : ObjectId('5815a63a5fee222be4c321ca') }

2016-10-30T16:04:43.930+0800    restoring indexes for collection caideyang.user from metadata
2016-10-30T16:04:43.936+0800    finished restoring caideyang.user (2 documents)
2016-10-30T16:04:43.988+0800    restoring indexes for collection caideyang.score from metadata
2016-10-30T16:04:43.989+0800    finished restoring caideyang.score (4 documents)
2016-10-30T16:04:43.989+0800    done
[caideyang@localhost mongodb3.2.10]$
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末风喇,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子缕探,更是在濱河造成了極大的恐慌魂莫,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,729評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件爹耗,死亡現(xiàn)場(chǎng)離奇詭異耙考,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)潭兽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門倦始,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人山卦,你說(shuō)我怎么就攤上這事鞋邑。” “怎么了怒坯?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,461評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵炫狱,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我剔猿,道長(zhǎng)视译,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,135評(píng)論 1 300
  • 正文 為了忘掉前任归敬,我火速辦了婚禮酷含,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘汪茧。我一直安慰自己椅亚,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,130評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布舱污。 她就那樣靜靜地躺著呀舔,像睡著了一般。 火紅的嫁衣襯著肌膚如雪扩灯。 梳的紋絲不亂的頭發(fā)上媚赖,一...
    開(kāi)封第一講書(shū)人閱讀 52,736評(píng)論 1 312
  • 那天霜瘪,我揣著相機(jī)與錄音,去河邊找鬼惧磺。 笑死颖对,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的磨隘。 我是一名探鬼主播缤底,決...
    沈念sama閱讀 41,179評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼番捂!你這毒婦竟也來(lái)了个唧?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 40,124評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤白嘁,失蹤者是張志新(化名)和其女友劉穎坑鱼,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體絮缅,經(jīng)...
    沈念sama閱讀 46,657評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鲁沥,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,723評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了耕魄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片画恰。...
    茶點(diǎn)故事閱讀 40,872評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖吸奴,靈堂內(nèi)的尸體忽然破棺而出允扇,到底是詐尸還是另有隱情,我是刑警寧澤则奥,帶...
    沈念sama閱讀 36,533評(píng)論 5 351
  • 正文 年R本政府宣布考润,位于F島的核電站,受9級(jí)特大地震影響读处,放射性物質(zhì)發(fā)生泄漏糊治。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,213評(píng)論 3 336
  • 文/蒙蒙 一罚舱、第九天 我趴在偏房一處隱蔽的房頂上張望袍啡。 院中可真熱鬧诫隅,春花似錦藤违、人聲如沸谍咆。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,700評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)刷允。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間树灶,已是汗流浹背搀菩。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,819評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留破托,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,304評(píng)論 3 379
  • 正文 我出身青樓歧蒋,卻偏偏與公主長(zhǎng)得像土砂,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子谜洽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,876評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容