use admin >db.auth( root , 123456 ) > var schema=db.system.version.findOne({ _id : authSchema }) Y> sc..."/>
溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MongoDB報錯"not authorized on root to execute command"問題解決一例

發(fā)布時間:2020-08-11 05:36:56 來源:ITPUB博客 閱讀:2330 作者:chenfeng 欄目:關(guān)系型數(shù)據(jù)庫

用root用戶在修改MongoDB認證機制的時候報錯:
>use admin
>db.auth('root','123456')
> var schema=db.system.version.findOne({"_id" : "authSchema"})

Y> schema.currentVersion = 3
3
> db.system.version.save(schema)
WriteResult({
        "writeError" : {
                "code" : 13,
                "errmsg" : "not authorized on root to execute command { update: \"system.version\", updates: [ { q: { _id: \"authSchema\" }, u: { _id: \"authSchema\", currentVersion: 3 }, multi: false, upsert: true } ], ordered: true }"
        }
})

此錯誤是因為沒有授權(quán)給admin用戶對system.version表執(zhí)行命令的權(quán)限,解決方法如下:
> db.grantRolesToUser ( "root", [ { role: "__system", db: "admin" } ] )

再次執(zhí)行命令成功:
> db.system.version.findOne({"_id" : "authSchema"})
{ "_id" : "authSchema", "currentVersion" : 3 }
向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI