ubuntu mongo数据库无缘无故丢失了?如何保护mongoDB的数据。

前两次在ubuntu上部署了mongo 数据库后,分别在docker 和 宿主机上都部署过一次,但是两次的数据都“无缘无故”被丢失了。后来通过查看mongoDB的log (mongo默认log路径: /var/log/mongodb/mongod.log),可以看到
在这里插入图片描述
后来分析到,因为在部署mongodb数据库时,没有对其进行账号密码的设置,导致被黑了,安全意识不够导致的。
解决方法
给mongod数据库设置账号以及密码。

use admin
db.createUser(
{
user: "admin",
pwd: "123456&",
roles: [ "root" ]
}
)

设置开启权限,这一步就是上面配置文件(mongo默认的配置文件位置 /etc/mongod.conf)中的 auth = true

修改配置文件后,重启mongo服务

sudo systemctl start mongod

重启服务完成后,

use admin
db.auth("admin","123456&")

给其他数据库创建用户和权限
最后就是给其他数据库创建权限了,这个就是自己使用的数据库。如果不创建角色权限的话,其他数据库也是用不了。

use testdb
db.createUser(
    {
        user:"testdb",
        pwd:"root1234",
        roles:[
            {role:"readWrite",db:"testdb"},
            {role:"dbOwner",db:"testdb"}
        ]
    }
)

代码中数据库连接时就需要添加用户名密码了。
在这里插入图片描述
问题应该可以解决了。
过段时间,可以再次看看,是否在mongodb中,又会产生
READ__ME_TO_RECOVER_YOUR_DATA 的数据表。
如果持久一段时间没有再产生,说明问题应该是已经解决了。

谢谢https://blog.csdn.net/u013513053/article/details/105785980?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值