Mysql增量备份shell脚本
时间: 2023-09-22 13:05:18 浏览: 172
你可以使用以下示例的Shell脚本来执行MySQL的增量备份:
```shell
#!/bin/bash
# 设置MySQL的用户名、密码和数据库名称
DB_USER="your_username"
DB_PASS="your_password"
DB_NAME="your_database"
# 设置备份目录和文件名
BACKUP_DIR="/path/to/backups"
BACKUP_FILE="${BACKUP_DIR}/$(date +%Y%m%d%H%M%S).sql"
# 创建备份目录(如果不存在)
mkdir -p ${BACKUP_DIR}
# 执行增量备份
mysqldump --user=${DB_USER} --password=${DB_PASS} --single-transaction --flush-logs --master-data=2 --databases ${DB_NAME} > ${BACKUP_FILE}
# 备份完成后,压缩备份文件
gzip ${BACKUP_FILE}
# 删除30天之前的备份文件(可根据需要调整保留时间)
find ${BACKUP_DIR} -type f -name "*.gz" -mtime +30 -delete
```
请将脚本中的`your_username`、`your_password`和`your_database`替换为你自己的MySQL用户名、密码和数据库名称。然后,将脚本保存为`.sh`文件,并给予执行权限。执行该脚本将在指定的备份目录中创建一个带有时间戳的SQL备份文件,并压缩该文件。另外,脚本还会删除30天之前的备份文件以节省磁盘空间。
请注意,该脚本只能执行增量备份,而不是完全备份。如果你需要进行完全备份,请调整备份命令中的参数。此外,为了安全起见,建议将备份目录设置为只有特定用户可访问。
阅读全文