1.安装mongodb
sudo apt install mongodb
2.启动mongod服务
sudo systemctl start mongod
3.设置为上电自启动mongod服务
sudo systemctl enable mongod
4.创建各种账号
进入admin管理数据库
mongo
use admin
创建超级用户:
db.createUser({user:"db_root",pwd:"db123",roles:["root"]})
创建所有数据库的用户管理账号:
db.createUser({user:"db_admin",pwd:"db123",roles:["userAdminAnyDatabase","readWriteAnyDatabase"]})
创建备份账号:
db.createUser({user:"db_backup",pwd:"db123",roles:["backup"]})
创建所有数据库的读写账号:
db.createUser({user:"db_user",pwd:"db123",roles:["readWriteAnyDatabase"]})
创建所有数据库只读账号:
db.createUser({user:"db_reader",pwd:"db123",roles:["readAnyDatabase"]})
重启服务 sudo systemctl restart mongod
5.修改配置文件
sudo vim /etc/mongod.conf文件
将bind_ip=127.0.0.1 修改为 bind_ip=0.0.0.0
增加安全认证参数,启用不同用户策略
security:
authorization: "enabled"
重启服务 sudo systemctl restart mongod
6.数据库的备份和恢复
ssh登录数据库(如启用了账户权限管理和安全认证,远程备份会有问题,本地操作无问题)
用backup账户或者root账户dump数据库:
mongodump -udb_backup -o save_log/
mongodump -udb_root -o save_log/
提示输入密码时,输入对应账户的密码即可
使用db_root账号恢复(backup账户亲测不可用):
mongorestore -u db_root --drop --dir save_log/
--drop:强制覆盖重复项目
提示输入密码时,输入对应账户的密码即可
当没有创建用户名和密码时,直接使用下面两个指令即可完成备份和恢复:
//保存原数据库中的数据
mongodump -o save_log/
//将save_log路径完整的复制到备份数据库的电脑上,然后在备份数据库电脑中执行恢复数据操作
mongorestore --drop --dir save_log/