mysql8 备份脚本
时间: 2023-07-12 22:25:24 浏览: 45
你可以使用以下脚本备份MySQL 8数据库:
```
#!/bin/bash
# MySQL备份脚本
# 数据库配置
DB_USER="root"
DB_PASS="password"
DB_HOST="localhost"
DB_NAME="database"
# 备份目录
BACKUP_DIR="/path/to/backup/directory"
# 备份文件名
BACKUP_FILENAME="${DB_NAME}_$(date '+%Y-%m-%d_%H-%M-%S').sql"
# 备份命令
mysqldump --user=${DB_USER} --password=${DB_PASS} --host=${DB_HOST} ${DB_NAME} > ${BACKUP_DIR}/${BACKUP_FILENAME}
# 压缩备份文件
tar czf ${BACKUP_DIR}/${BACKUP_FILENAME}.tar.gz ${BACKUP_DIR}/${BACKUP_FILENAME}
# 删除原始备份文件
rm ${BACKUP_DIR}/${BACKUP_FILENAME}
# 删除30天前的备份文件
find ${BACKUP_DIR} -type f -name "*.tar.gz" -mtime +30 -delete
```
将上面的脚本保存为一个可执行文件,例如`backup.sh`,然后使用以下命令运行备份脚本:
```
./backup.sh
```
这个脚本会备份指定的MySQL数据库,并将备份文件压缩为`.tar.gz`格式,保存在指定的备份目录中。备份文件名中包含当前时间戳,避免了多次备份文件名的冲突。同时,脚本还会删除30天前的备份文件,避免备份文件过多占用磁盘空间。