docker mysql 数据定时备份和清理方法

  • 2022-10-03
  • 浏览 (1103)

数据库使用docker的mysql镜像创建的实例mysql5.6,定时备份和清理备份文件的方法。

一、定时备份

1.备份脚本backup.sh

# 使用tar压缩文件后删除原文件,可以节省存储空间
docker exec mysql5.6 /bin/bash -c 'td=`date +"%Y%m%d_%H%M%S"`;fileName=/backup/pixiu_$td.sql;mysqldump -P 3306 -uroot -h127.0.0.1 -p146a0efc -c pixiu > $fileName;tar -zcvPf $fileName.tar.gz $fileName;rm -f $fileName'

2.定时任务

使用crontab -e打开定时任务管理,添加

# 每天早上3点执行任务
0 3 * * *  /home/blog/back_database.sh

二、定时清理

使用crontab -e打开定时任务管理,添加

# 每天早上0点清理30天以外的文件
0 0 * * * find /var/lib/docker/overlay2/5fc21e03e53a0f45683f993675ebb4cdbef6734728062b8421226af66948c075/diff/backup -atime +30 -exec rm -rf {} \;
2  赞