编写shell脚本实现mongo的定期备份
项目要求定期备份MongoDB数据,于是使用官方的mongodump,简单好用。
主要就是编写shell脚本,来定期自动备份
使用服务器自带的crontab来定时执行。
shell脚本踩了很多坑,但是经此一役,算是入门了,以后要写其他相关的脚本应该也毫无压力。
直接上脚本,注释很清晰,没啥好说的
mongodump.sh
#!/bin/bash
# 宿主机相关配置
# 宿主机的备份日志
LOG_DIR=/root/dumplog
# 宿主机上备份压缩文件目录
BACKUP_DIR=/home/mongo/dumptar
# mongodb容器的名称
CONTAINERNAME=mongo-master
# 备份文件传送到的远程服务器信息
# 远程服务器ip
REMOTE_IP=10.12.249.67
# 远程服务器端口
REMOTE_PORT=22
# 远程服务器用户
REMOTE_USER=root
# 远程服务器备份目录
REMOTE_DIR=/root/mongoDump
# mongo容器内路径
# 容器内存放的备份打包结果的输出路径,该路径要映射到宿主机
OUT_DIR=./dumptar
# 容器内要打包的备份文件的路径
DUMP_DIR=./dump
# 数据库相关信息
# bd库的用户
# 用户名
DB_USER=creabine
# 密码
DB_PASS=creabine
# 数据库名
DB_NAME=bd
# 数据库连接uri