mysql 数据库自动备份
时间: 2023-09-05 10:13:35 浏览: 46
你可以使用定时任务来自动备份 MySQL 数据库。以下是一个简单的备份脚本示例:
```bash
#!/bin/bash
# 设置备份文件名
BACKUP_FILENAME="backup-$(date +%Y%m%d%H%M%S).sql"
# 设置 MySQL 数据库连接参数
DB_HOST="localhost"
DB_USER="username"
DB_PASS="password"
DB_NAME="database_name"
# 备份 MySQL 数据库
mysqldump --host=$DB_HOST --user=$DB_USER --password=$DB_PASS $DB_NAME > /path/to/backup/folder/$BACKUP_FILENAME
# 删除早于 7 天的备份文件
find /path/to/backup/folder/* -mtime +7 -exec rm {} \;
```
在上面的脚本中,你需要设置以下参数:
- `BACKUP_FILENAME`:备份文件名,这里使用当前时间来区分不同的备份文件。
- `DB_HOST`:MySQL 数据库的主机名或 IP 地址。
- `DB_USER`:MySQL 数据库的用户名。
- `DB_PASS`:MySQL 数据库的密码。
- `DB_NAME`:要备份的 MySQL 数据库的名称。
- `/path/to/backup/folder/`:备份文件存放的目录,你需要根据实际情况修改。
最后,你可以将上面的脚本保存为 `backup.sh`,并使用 crontab 来定时执行备份任务。例如,以下是将每天凌晨 2 点执行备份任务的 crontab 配置:
```
0 2 * * * /bin/bash /path/to/backup.sh
```
这样,你的 MySQL 数据库就可以自动备份了。