|
#!/bin/bash DATE=$(date "+%Y%m%d") MYSQL_DATA="/data/mysql_data_backup" CONTAINER_NAME="mysql" mkdir -p ${MYSQL_DATA} config_bak() { NUM_BAK=100 COUNT_BAK=$(ls -lrt ${MYSQL_DATA} | grep mysql | wc -l) if [ ${COUNT_BAK} -gt ${NUM_BAK} ] then rm -f ${MYSQL_DATA}/$(ls -lt ${MYSQL_DATA} | grep mysql | tail -n 1 | awk '{print $9}') fi } main(){ # 请修改为root用户对应的密码 docker exec ${CONTAINER_NAME} sh -c 'exec mysqldump --all-databases -uroot -p"plf123456"' > ${MYSQL_DATA}/mysql_${DATE}.sql config_bak } main |
|
chmod +x mysql_backup.sh # 定时任务,每周执行一次 crontab -e 0 2 * * 0 mysql_backup.sh |
本文介绍了一个使用bash脚本定期备份MySQL数据库的实例,包括创建目录、备份数据库、配置清理旧备份以及设置cron任务每周执行一次。
347

被折叠的 条评论
为什么被折叠?



