以下是一个用于自动备份MySQL数据库的bash脚本示例:
#!/bin/bash
# MySQL数据库相关信息
DB_USER="username"
DB_PASSWORD="password"
DB_NAME="database_name"
# 备份文件存储路径
BACKUP_DIR="/path/to/backup/directory"
# 备份文件名
BACKUP_FILE="$DB_NAME-$(date +'%Y%m%d%H%M%S').sql"
# 创建备份文件
mysqldump -u $DB_USER -p$DB_PASSWORD $DB_NAME > $BACKUP_DIR/$BACKUP_FILE
# 压缩备份文件
gzip $BACKUP_DIR/$BACKUP_FILE
# 删除7天前的备份文件
find $BACKUP_DIR -type f -name "$DB_NAME-*.sql.gz" -mtime +7 -exec rm {} \;
将上述脚本保存为一个.sh文件,然后使用crontab来定时执行备份任务。可以在终端中输入crontab -e
来编辑cron任务,添加以下行来每天备份数据库:
0 0 * * * /bin/bash /path/to/backup/script.sh
这将在每天的午夜12点执行备份任务。您可以根据自己的需求调整备份频率。