一、在docker外的宿主机上建立用于存储备份文件的文件夹/usr/local/mysqlbak/
二、建立脚本文件夹/usr/local/mysqlbak_scripts/ ,建立备份脚本文件mysql_backup.sh
#!/bin/bash
# MySQL 用户名和密码
USER="root"
PASSWORD="123456"
DATABASE="xxxx"
# 备份保存路径和文件名
BACKUP_PATH="/usr/local/mysqlbak"
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="$BACKUP_PATH/$DATABASE_$DATE.sql"
# 执行备份命令
docker exec -i mysql /bin/bash -c 'mysqldump -uroot -p123456 --databases xxxx' > $BACKUP_FILE
echo "docker exec -i mysql /bin/bash -c 'mysqldump -uroot -p123456 --databases xxxx' > $BACKUP_FILE"
echo "MySQL backup completed"
三、crontab -e
0 1 * * * /usr/local/mysqlbak_scripts/mysql_backup.sh
四、保存crontab并重启生效
# 查看定时任务状态命令
systemctl status cron
# 如果定时任务状态不是启动的,可以执行启动定时任务命令
sudo systemctl start cron