准备:定时服务
/sbin/service crond start
/sbin/service crond stop
/sbin/service crond restart
/sbin/service crond reload
第一步:编写备份脚本
#!/bin/bash
myPath="/opt/extdata/mysqlback/"
db_Ip="127.0.0.1"
db_name="test"
port=35060
user_name="root"
db_password='123456'
now_date=$(date +%Y%m%d%H%M%S)
last_date=zzkjg_$(date -d "20 days ago" +%Y%m%d)
if [ ! -d "$myPath" ]; then
mkdir "$myPath"
fi
mysqldump -h 127.0.0.1 -P $port -u $user_name -p$db_password $db_name > "$myPath"zzkjg_"$now_date".sql
echo "$last_date"
if [ ! -f "$myPath$last_date.sql" ]; then
rm -rf "$myPath$last_date"*
fi
echo '执行完毕';
第二步:添加定时任务
执行 crontab -e 添加任务 每天23点59分钟执行
59 23 * * * /opt/extdata/mysqlback/back.sh
第三步:重新加载 crond
/sbin/service crond reload
如果是docker运行的,可执行docker内部的命令备份,如下所示
docker exec -it mysql8 mysqldump --single_transaction --hex-blob --default-character-set=utf8mb4 --skip-add-locks --set-gtid-purged=off -hlocalhost -uroot -p'Root@1234' -P3306 ohps_patient patient patient_condition > /root/patient.sql
最后修改于 2020-12-25 10:02:07
如果觉得我的文章对你有用,请随意赞赏
扫一扫支付

