mysqldump备份数据库的脚本
时间: 2025-02-20 10:23:26 浏览: 34
### 编写使用 `mysqldump` 备份 MySQL 数据库的 Shell 脚本
#### 创建备份脚本
为了创建一个可靠的 `mysqldump` 备份脚本,可以按照如下方式构建:
```bash
#!/bin/bash
# 定义变量用于存储数据库连接参数以及备份路径
DB_USER="root"
DB_PASS="your_password_here"
BACKUP_DIR="/data/mysqlbackup"
DATE=$(date +%F)
mkdir -p $BACKUP_DIR/$DATE
databases=`mysql --user=$DB_USER --password=$DB_PASS -e "SHOW DATABASES;" | tr -d "| " | grep -v Database`
for db in $databases; do
if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]]; then
echo "Dumping database: $db"
mysqldump --force --opt --user=$DB_USER --password=$DB_PASS --databases $db > $BACKUP_DIR/$DATE/${db}_$(date +%F_%T).sql
fi
done
```
这段代码会遍历所有的数据库并排除掉一些系统自带的数据表(如 information_schema 和 performance_schema),然后逐一对剩余的每一个数据库执行一次完整的导出操作[^1]。
#### 设置定时任务
为了让这个脚本能定期运行,在 Linux 中可以通过 crontab 来设置计划任务。编辑用户的 cron 表格 (`crontab -e`) 并添加一行以每天凌晨两点钟触发上述脚本为例:
```cron
0 2 * * * /path/to/your_script.sh >> /var/log/mysqldump.log 2>&1
```
这行配置意味着每晚两点整将会调用指定位置下的 shell 文件来进行数据库备份工作,并把日志记录到 `/var/log/mysqldump.log` 文件里[^2]。
阅读全文
相关推荐


















