欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MongoDB快速入門筆記(七)MongoDB的用戶管理操作

 更新時(shí)間:2016年06月02日 10:10:05   作者:tiger_zhang  
這篇文章主要介紹了MongoDB快速入門筆記(七)MongoDB的用戶管理操作 的相關(guān)資料,需要的朋友可以參考下

MongoDB 簡(jiǎn)介

MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由 C++ 語(yǔ)言編寫。旨在為 WEB 應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

MongoDB 是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的。

1、修改啟動(dòng)MongoDB時(shí)要求用戶驗(yàn)證

加參數(shù) --auth 即可。

現(xiàn)在我們把MongoDB服務(wù)刪除,再重新添加服務(wù)

復(fù)制代碼 代碼如下:

mongod --dbpath "D:\work\MongoDB\data" --logpath "D:\work\MongoDB\log\mongodb.log" --install --serviceName "MongoDB" --auth

2、創(chuàng)建用戶,并使用創(chuàng)建的用戶登錄

打開(kāi)shell操作界面,默認(rèn)test數(shù)據(jù),再查看所有數(shù)據(jù)庫(kù),發(fā)現(xiàn)報(bào)錯(cuò),因?yàn)闆](méi)有用戶驗(yàn)證。

使用db.auth("user","pwd")進(jìn)行用戶驗(yàn)證。

user:用戶名

pwd:密碼

因?yàn)閿?shù)據(jù)庫(kù)中沒(méi)有用戶,所以需要先使用無(wú)用戶驗(yàn)證的方式啟動(dòng)數(shù)據(jù),在admin數(shù)據(jù)庫(kù)下新建用戶。

復(fù)制代碼 代碼如下:

db.createUser({user:"", pwd:"", roles:[{role:"", db:""}]})

在當(dāng)前數(shù)據(jù)庫(kù)下創(chuàng)建一個(gè)用戶

user:用戶名

pwd:密碼

roles:角色信息

[role:角色名, db:對(duì)指定數(shù)據(jù)庫(kù)的操作]

> db.createUser({user:"admin", pwd:"admin", roles:[{role:"userAdminAnyDatabase", db:"admin"}]})
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
} 

在使用用戶驗(yàn)證的方式啟動(dòng)數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)admin中,使用admin登錄

> db.auth("admin","admin")

1

狀態(tài)1表示驗(yàn)證成功,0表示驗(yàn)證失敗

創(chuàng)建用戶默認(rèn)給當(dāng)前使用的數(shù)據(jù)下創(chuàng)建用戶,

例如:當(dāng)前使用的數(shù)據(jù)是admin,在admin數(shù)據(jù)下新建用戶

復(fù)制代碼 代碼如下:

db.createUser({user:"zyh", pwd:"zyh", roles:[{role:"readWrite", db:"zyhdb"}]})

在admin數(shù)據(jù)庫(kù)下使用zyh登錄,可讀寫zyhdb的collection。

當(dāng)在zyhdb下,無(wú)法使用zyh登錄,因?yàn)橛脩魖yh是在admin數(shù)據(jù)庫(kù)下。

3、查看當(dāng)前數(shù)據(jù)下的用戶

show users 顯示當(dāng)前數(shù)據(jù)庫(kù)下所有的用戶

使用有用戶管理權(quán)限的用戶登錄才能看見(jiàn),例如使用zyh登錄后,執(zhí)行會(huì)報(bào)錯(cuò);使用admin登錄后,顯示用戶

復(fù)制代碼 代碼如下:

> db.auth("zyh","zyh")
1
> show users
2016-06-01T20:32:30.639+0800 E QUERY [thread1] Error: not authorized on admin to execute command { usersInfo: 1.0 } :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.getUsers@src/mongo/shell/db.js:1523:1
shellHelper.show@src/mongo/shell/utils.js:743:9
shellHelper@src/mongo/shell/utils.js:650:15
@(shellhelp2):1:1
> db.auth("admin","admin")
1
> show users
{
"_id" : "admin.admin",
"user" : "admin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
{
"_id" : "admin.zyh",
"user" : "zyh",
"db" : "admin",
"roles" : [
{
"role" : "readWrite",
"db" : "zyhdb"
}
]
}

還可以使用db.getUsers()查看所有的用戶

使用db.getUser("user")查詢指定用戶的具體信息

4、修改用戶信息

復(fù)制代碼 代碼如下:

db.changeUserPassword("user", "newpwd"),修改密碼

user:用戶名

newpwd:新的密碼

db.updateUser("user", {roles:[{role:"", db:""}]})

修改用戶信息

復(fù)制代碼 代碼如下:

db.grantRolesToUser("user", [{role:"", db:""}])

追加角色

復(fù)制代碼 代碼如下:

db.revokeRolesFromUser("user", [{role:"", db:""}])

取消角色

5、刪除用戶

db.dropUser("user") 刪除指定用戶
db.dropAllUsers() 刪除當(dāng)前數(shù)據(jù)下所有用戶

附:常用內(nèi)置角色說(shuō)明

數(shù)據(jù)庫(kù)用戶角色(每個(gè)數(shù)據(jù)庫(kù)都有的角色)

read 對(duì)non-system集合的讀取權(quán)限,以及以下system集合的讀取權(quán)限:system.indexes,system.js,system.namespaces
readWrite 對(duì)non-system集合的讀寫權(quán)限,以及system.js上的讀寫權(quán)限

數(shù)據(jù)庫(kù)管理角色(每個(gè)數(shù)據(jù)庫(kù)都包含的數(shù)據(jù)管理角色)
dbAdmin 完成管理性任務(wù)的權(quán)限,比如schema相關(guān)任務(wù)、索引、統(tǒng)計(jì)信息收集。不能用于管理用戶和角色
dbOwner 管理數(shù)據(jù)庫(kù)需要的所有權(quán)限。包含(readWrite、dbAdmin、userAdmin角色的權(quán)限)
userAdmin 在當(dāng)前數(shù)據(jù)庫(kù)創(chuàng)建和修改角色和用戶的權(quán)限

集群管理角色

admin數(shù)據(jù)庫(kù)包含以下角色用于管理整個(gè)系統(tǒng),而不是只針對(duì)單個(gè)數(shù)據(jù)庫(kù)
clusterAmin 提供集群管理的最大權(quán)限。包含了clusterManager、clusterMonitor、hostManager角色的權(quán)限
clusterManager 管理和監(jiān)控集群,可以訪問(wèn)local和config數(shù)據(jù)庫(kù)。
clusterMonitor 對(duì)集群的讀權(quán)限
hostManager 管理和健康servers

備份和還原角色

admin數(shù)據(jù)庫(kù)包含以下角色用于備份和還原數(shù)據(jù)
backup 備份權(quán)限
restore 還原權(quán)限

all-database roles
admin數(shù)據(jù)提供以下角色,對(duì)所有數(shù)據(jù)庫(kù)都有效。
readAnyDatabase 提供對(duì)所有數(shù)據(jù)庫(kù)的讀權(quán)限
readWriteAnyDatabase 提供對(duì)所有數(shù)據(jù)庫(kù)的寫權(quán)限
userAdminAnyDatabase 提供對(duì)所有數(shù)據(jù)庫(kù)用戶的管理權(quán)限
dbAdminAnyDatabase 對(duì)所有數(shù)據(jù)庫(kù)的dbAdmin權(quán)限

超級(jí)角色

角色 說(shuō)明
root 擁有最高權(quán)限
另外角色也可以自定義設(shè)置

以上內(nèi)容是小編給大家介紹的MongoDB快速入門筆記(七)MongoDB的用戶管理操作的相關(guān)知識(shí),希望對(duì)大家有所幫助!

相關(guān)文章

  • mongodb 常見(jiàn)問(wèn)題處理方法收集

    mongodb 常見(jiàn)問(wèn)題處理方法收集

    這篇文章主要介紹了mongodb 常見(jiàn)問(wèn)題收集,這里的問(wèn)題是我在看MongoDB官網(wǎng)文章時(shí),從里面總結(jié)出來(lái)的,需要的朋友可以參考下
    2017-03-03
  • 關(guān)于對(duì)MongoDB索引的一些簡(jiǎn)單理解

    關(guān)于對(duì)MongoDB索引的一些簡(jiǎn)單理解

    索引的作用是為了提升查詢效率,如果查詢條件帶有索引,MongoDB 將掃描索引, 通過(guò)索引確定要查詢的部分文檔,而非直接對(duì)全部文檔進(jìn)行掃描,下面這篇文章主要給大家介紹了關(guān)于對(duì)MongoDB索引的一些簡(jiǎn)單理解,需要的朋友可以參考下
    2021-09-09
  • 高效mongodb的php分頁(yè)類(不使用skip)

    高效mongodb的php分頁(yè)類(不使用skip)

    這篇文章主要介紹了高效mongodb的php分頁(yè)類,并且沒(méi)有使用mongodb的skip來(lái)實(shí)現(xiàn)分頁(yè),需要的朋友可以參考下
    2014-05-05
  • MongoDB整庫(kù)備份與還原以及單個(gè)collection備份、恢復(fù)方法

    MongoDB整庫(kù)備份與還原以及單個(gè)collection備份、恢復(fù)方法

    mongodb數(shù)據(jù)庫(kù)維護(hù)離不開(kāi)必要的備份、恢復(fù)操作,而且一般不會(huì)出錯(cuò),所以我們?cè)谑褂玫臅r(shí)候大部分時(shí)候使用備份和恢復(fù)操作就可以了
    2013-08-08
  • MongoDB游標(biāo)超時(shí)問(wèn)題的4種解決方法

    MongoDB游標(biāo)超時(shí)問(wèn)題的4種解決方法

    這篇文章主要給大家介紹了關(guān)于MongoDB游標(biāo)超時(shí)問(wèn)題的4種解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MongoDB具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • mongodb中使用distinct去重的簡(jiǎn)單方法

    mongodb中使用distinct去重的簡(jiǎn)單方法

    怎么在mongodb中實(shí)現(xiàn)類似于SQL中distinct的功能,查詢某一個(gè)字段所有的值,今天我們就來(lái)探討下這個(gè)問(wèn)題。
    2015-05-05
  • MongoDB常用操作命令大全

    MongoDB常用操作命令大全

    成功啟動(dòng)MongoDB后,再打開(kāi)一個(gè)命令行窗口輸入mongo,就可以進(jìn)行數(shù)據(jù)庫(kù)的一些操作。輸入help可以看到基本操作命令,只是MongoDB沒(méi)有創(chuàng)建數(shù)據(jù)庫(kù)的命令,但有類似的命令
    2014-03-03
  • MongoDB入門教程之Windows下的MongoDB數(shù)據(jù)庫(kù)安裝圖解

    MongoDB入門教程之Windows下的MongoDB數(shù)據(jù)庫(kù)安裝圖解

    這篇文章主要介紹了MongoDB入門教程之Windows下的MongoDB數(shù)據(jù)庫(kù)安裝圖解,本文還講解了MongoDB的基本操作,如insert、find、 update、remove等操作,需要的朋友可以參考下
    2014-08-08
  • MongoDb的

    MongoDb的"not master and slaveok=false"錯(cuò)誤及解決方法

    今天小編就為大家分享一篇關(guān)于MongoDb的"not master and slaveok=false"錯(cuò)誤及解決方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • MongoDB實(shí)現(xiàn)創(chuàng)建刪除數(shù)據(jù)庫(kù)、創(chuàng)建刪除表(集合 )、數(shù)據(jù)增刪改查

    MongoDB實(shí)現(xiàn)創(chuàng)建刪除數(shù)據(jù)庫(kù)、創(chuàng)建刪除表(集合 )、數(shù)據(jù)增刪改查

    這篇文章介紹了MongoDB實(shí)現(xiàn)創(chuàng)建刪除數(shù)據(jù)庫(kù)、創(chuàng)建刪除表(集合 )、數(shù)據(jù)增刪改查的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06

最新評(píng)論