Failed: restore error: error applying oplog: applyOps

来源:互联网 发布:香港新四大才子知乎 编辑:程序博客网 时间:2024/05/20 11:21

用mongorestore  做数据恢复的时候出现了如下错误:
replaying oplog
Failed: restore error: error applying oplog: applyOps: not authorized on admin to execute command { applyOps: 


恢复命令如下:
mongorestore --host=127.0.0.1 --port=27017 --username=admin --password=123456  --oplogReplay 20170213_bak/


官方文档解释如下:
https://docs.mongodb.com/manual/reference/command/applyOps/
If authorization is enabled, you must have access to all actions on all resources in order to run applyOps. Providing such access is not recommended, but if your organization requires a user to run applyOps, create a role that grants anyAction on anyResource. Do not assign this role to any other user.


解决方法:


db.createRole({role:'sysadmin',roles:[], privileges:[ {resource:{anyResource:true},actions:['anyAction']}]})

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



0 0
原创粉丝点击