MySQL 自动备份脚本
本文档介绍如何编写一个简单的 Bash 脚本来自动备份 MySQL 数据库,并设置定时任务以每天运行该脚本。
脚本内容
以下是用于备份 MySQL 数据库的 Bash 脚本:
#!/bin/bash
# MySQL 凭证
MYSQL_USER="root"
MYSQL_PASSWORD="abc#1520"
# 备份目录
BACKUP_DIR="/opt/mysql_back"
# 获取当前日期,格式为 YYYY-MM-DD
CURRENT_DATE=$(date +"%Y-%m-%d")
# 执行 mysqldump 备份
mysqldump -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" --all-databases > "$BACKUP_DIR"/backup_"$CURRENT_DATE".sql
# 删除 7 天前的备份
find "$BACKUP_DIR" -type f -name "backup_*" -mtime +7 -exec rm {} \;
设置定时任务
要每天凌晨 0 点执行备份脚本,可以使用 cron 定时任务。编辑 crontab 文件并添加以下行:
0 0 * * * /bin/bash /path/to/mysql_backup.sh
温馨提示
- 使用
--single-transaction参数可以避免锁定数据库,非常适合在白天进行备份时使用。
通过以上步骤,您可以轻松设置 MySQL 数据库的自动备份。