2014-12-05 112 views
0

我跟蹤了mongodb文檔以進行羣集備份。 http://docs.mongodb.org/manual/tutorial/backup-sharded-cluster-with-database-dumps/Mongodb羣集備份

當我試圖採取我的relpicaset備份。複製套件中的輔助節點沒有關閉。我得到以下錯誤。

[email protected]:/$ mongo --port 22222 -u admin -p admin --authenticationDatabase admin --eval 'printjson(db.adminCommand("shutdown"))' 
    { 
      "ok" : 0, 
      "errmsg" : "unauthorized: this command must run from localhost when running db without auth" 
    } 

admin用戶角色是「userAdminAnyDatabase」。如果它已啓動,我無法進行備份。請指教

+0

從錯誤消息中,您未啓用授權啓用的mongod(例如在命令行上使用--auth),因此無法遠程關閉它。您需要在啓用auth的情況下重新啓動它,併爲遠程關機創建適當的用戶。 – wdberkeley 2014-12-10 20:07:22

+0

是的wdberkeley我沒有運行--auth。其實我正在部署MongoDB羣集。所以我需要啓動所有的mongodb實例,並啓用--auth。在開始之後,我需要對dbs進行一些操作,例如引發rs等。對於那些我需要首先創建用戶還是不需要? – 2014-12-12 08:10:04

回答

0

既然你正在處理的集羣備份其推薦使用clusterAdmin角色來備份data.Also提供所需的數據庫訪問read

db.grantRolesToUser("backupUser", [{role: "clusterAdmin", db:"admin"}])