किसी उपयोगकर्ता का नाम बदलने के लिए, आपको नया उपयोगकर्ता नाम सेट करने के लिए अपडेट() और $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"
]
}
] अब उपयोगकर्ता नाम का नाम बदलकर 'जॉन' से 'लैरी' कर दें -
> db.system.users.update({"user":"John"}, {$set:{"user":"Larry"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) आइए सत्यापित करें कि उपयोगकर्ता 'लैरी' नाम से बनाया गया है या getUser() का उपयोग नहीं कर रहा है -
> db.getUser('Larry'); यह निम्नलिखित आउटपुट देगा -
{
"_id" : "admin.John",
"user" : "Larry",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
} यदि आप अब पुराने उपयोगकर्ता नाम प्राप्त करने का प्रयास करेंगे तो एक शून्य मान प्रदर्शित होगा। आइए हम वही देखें -
> db.getUser('John'); यह निम्नलिखित आउटपुट देगा -
Null