linux 定时备份数据库(数据库是docker启动的)
1.编写shell脚本备份数据库的命令 替换数据库对应的 ip 用户名 密码 数据库 >opt/dbbackup 也可以自定义备份脚本的位置 >后没有空格
文件名为 db_backup.sh:
#!/bin/bash
docker -H 192.168.1.1 exec mysql mysqldump -uroot -proot student_prod >/opt/dbbackup/student_prod_$(date +%Y%m%d_%H%M%S).sql
如果需要压缩 可以换行后加上 gzip /opt/dbbackup/student_prod_*.sql
一定写上绝对路径 gz文件解压缩 gzip -d 文件名
2.授权 chmod 777 db_backup.sh
3.把服务器的编辑器改为vim
export EDITOR=vim
4.编辑服务器的定时任务文件
crontab -e
5. 输入 定时执行的脚本 cron表达式从分钟开始 然后保存退出
*/2 * * * * /opt/dbbackup/db_backup.sh
6.查看定时任务是否执行 -LLLLL
crontab -l
7.如果不执行 需要配置docker mysql服务 一般只需要添加-H以及之后的内容即可
* 然后重启docker* systemctl daemon-reload* sudo service docker restart