1,錯誤做法,直接更新表
> db.system.users.update({"_id" : ObjectId("529e67553992b24438d5e315")},{"user":"tank2","readOnly" : false,"pwd":"123"}) > db.system.users.find(); { "_id" : ObjectId("529e5f8474b4c660718a70f3"), "user" : "tank1", "readOnly" : false, "pwd" : "35dd47abff098f5b4f0b567db8edeac5" } { "_id" : ObjectId("529e67553992b24438d5e315"), "user" : "tank2", "readOnly" : false, "pwd" : "123" } //這樣就不對了
2,正確做法,利用db.addUser
> db.addUser('tank2','111') { "_id" : ObjectId("529e6f1c8d95afd190add450"), "user" : "tank2", "readOnly" : false, "pwd" : "6b4334d2c97c526e6a11b2f9ce1996e0" }
有人會問,這個不是添加用戶的方法嗎。不錯這是添加用戶的方法,但是如果用戶名相同,密碼不同的話,就會更新密碼。
3,正確做法,利用db.changeUserPassword
> db.changeUserPassword('tank2','test');