mongodb4.0认证及备份恢复等相关操作

mongo添加用户认证
安装完mongo后,启动mongo
在mongo shell中执行:use admin
查看当前用户的情况:

db.system.users.find().pretty()

创建新用户,用户名为 root。注意,这里的权限问题一定要明确,如果一个用户拥有最高的权限,每个文档都能执行读写命令,那么按照下面写就行。如果要分权分档,则需要在roles中写明文档名称,并赋予读或者写的权限。

db.createUser({
    user:"root",
    pwd:"W1tdLCB7fSwgeyJjYWxsYmFja3MiOiBudWxsL",
    roles:[{role:"userAdminAnyDatabase", db:"admin"}, "readWriteAnyDatabase"]})

这里另外说一下,如果不小心权限搞错了,最快的方式就是删掉重建。步骤很简单:
删除我们自己建立的用户。

db.dropUser("root")

重新执行添加用户的操作。
重启mongod即可。

mongo4.0的认证方式与之前版本相比较是有区别的,不再是在配置文件中修改auth=True。对应的修改如下:
mongodb.conf文件,安装方式不同,配置文件名称可能不同,但都很类似,一般在/etc/mongodb.conf下,具体执行情况大家find一下就行。

#security:
security:
  authorization: enabled

配置文件截图为:
4.0

重启mongod:
systemctl restart mongod

mongo备份和恢复命令
主要针对带认证的mongodb的备份和恢复

  1. 备份命令行为:
 mongodump -h 127.0.0.1 --authenticationDatabase admin -u root  -d test -o /opt/mongo_dump_data/

参数:

  • -h mongo服务器地址,端口号默认为27017
  • –authenticationDatabase 认证的库,一般为admin
  • -u 登录用户名
  • -d 要导出哪个文档(库)
  • -o 导出的位置,前提是该路径必须存在
    回车之后,输入密码即可导出,导出的文件结构如下所示:
    导出结果
  1. 恢复命令行为:
mongorestore -h 127.0.0.1 --authenticationDatabase admin -u root -d test --dir /opt/mongo_dump_data/test/

参数:
–dir 从哪个文件目录导出,即数据来源
导出成功。
另外,由于在新建用户时赋值的权限可能有问题,一旦遇到权限报错,最快的方式就是先关闭认证,先把数据导入,然后进一步确认登陆账号与文档(库)的权限问题。
关闭认证将配置文件修改为:

#security:
security:
  authorization: disabled

重启即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值