mysql多个数据库定时备份shell脚本
时间: 2023-06-28 11:08:23 浏览: 109
以下是一个基本的 MySQL 多个数据库定时备份的 shell 脚本示例:
```bash
#!/bin/bash
# 备份目录
BACKUP_DIR="/var/backup/mysql"
# MySQL 用户名和密码
MYSQL_USER="your_username"
MYSQL_PASSWORD="your_password"
# 备份文件名
BACKUP_NAME=$(date +%Y-%m-%d_%H-%M-%S)
# MySQL 数据库列表,用空格分隔
DATABASES="db1 db2 db3"
# 循环备份每个数据库
for DB in $DATABASES; do
# 备份文件名
FILENAME="$BACKUP_NAME-$DB.sql"
# 备份命令
mysqldump -u $MYSQL_USER -p$MYSQL_PASSWORD $DB > $BACKUP_DIR/$FILENAME
# 压缩备份文件
gzip $BACKUP_DIR/$FILENAME
done
```
修改脚本中的 `BACKUP_DIR`、`MYSQL_USER`、`MYSQL_PASSWORD` 和 `DATABASES` 变量,根据实际情况进行设置。然后将脚本保存为文件,比如 `mysql_backup.sh`,并将其添加到定时任务中,比如每天凌晨 2 点备份:
```
0 2 * * * /path/to/mysql_backup.sh
```
注意:在生产环境中,建议将备份文件存储到其他地方,比如远程服务器或云存储服务,以避免备份文件和数据库一起丢失。
阅读全文