如何在 MongoDB 中重新命名使用者名稱?
要重新命名使用者,你需要使用 update() 和 $set 來設定新使用者名稱。以下為語法 −
db.system.users.update({"user":"yourOldUserName"}, {$set:{"user":"yourNewUserName"}});首先,顯示來自 MongoDB 資料庫的所有使用者 −
> use admin; switched to db admin > db.getUsers();
這將產生以下輸出 −
[
{
"_id" : "admin.Chris",
"user" : "Chris",
"db" : "admin",
"roles" : [
{
"role" : "readWrite",
"db" : "test"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
},
{
"_id" : "admin.John",
"user" : "John",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
},
{
"_id" : "admin.Robert",
"user" : "Robert",
"db" : "admin",
"roles" : [
{
"role" : "readWrite",
"db" : "sample"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}
]現在將使用者名稱從 ‘John’ 重新命名為 ‘Larry’ −
> db.system.users.update({"user":"John"}, {$set:{"user":"Larry"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })讓我們驗證一下是否已經使用 getUser() 建立了名為 ‘Larry’ 的使用者 −
> db.getUser('Larry');這將產生以下輸出 −
{
"_id" : "admin.John",
"user" : "Larry",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}如果你現在嘗試獲取舊使用者名稱,那麼將顯示一個 null 值。我們來看看 −
> db.getUser('John');這將產生以下輸出 −
Null
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
安卓
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP