微布开发-数据库备份
要定时每天固定时间将MySQL数据库备份成.sql.gz格式的文件,可以使用Linux上的cron作业和mysqldump
命令结合使用。
步骤如下:
创建备份脚本:
创建一个Shell脚本,例如
backup_mysql.sh
,并确保该脚本可执行。使用文本编辑器创建并编辑脚本文件,然后添加以下内容:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# MySQL数据库连接信息
DB_USER="your_username"
DB_PASS="your_password"
DB_NAME="your_database_name"
# 备份文件的保存路径
BACKUP_DIR="/path/to/backup/directory"
# 生成备份文件名(带有时间戳)
BACKUP_FILE="$BACKUP_DIR/backup_$(date +\%Y\%m\%d\%H\%M\%S).sql.gz"
# 使用mysqldump命令备份数据库
mysqldump -u$DB_USER -p$DB_PASS $DB_NAME | gzip > $BACKUP_FILE
# 删除旧的备份文件(可选)
# find $BACKUP_DIR -type f -name "backup_*.sql.gz" -mtime +7 -exec rm {} \;请替换
your_username
,your_password
,your_database_name
和/path/to/backup/directory
为您的MySQL数据库凭据和备份文件目录。设置执行权限:
通过运行以下命令来为脚本文件赋予执行权限:
1
chmod +x backup_mysql.sh
设置定时任务:
使用cron作业来定时运行备份脚本。运行以下命令编辑cron作业:
1
crontab -e
在打开的编辑器中,添加以下行来定时运行备份脚本(将时间和脚本路径替换为您的偏好):
1
0 2 * * * /path/to/backup_mysql.sh
上述示例表示每天凌晨2点运行备份脚本。您可以根据需要调整时间。
保存并退出编辑器。
现在,cron将在指定的时间每天运行备份脚本,并将MySQL数据库备份成.sql.gz文件保存在指定的目录中。可以根据需要自定义备份的保留策略(如上面脚本中的删除旧备份文件的示例)。请确保脚本中的敏感信息(如用户名和密码)得到妥善保护,以免泄露。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 HUT菜鸟小八的博客!
评论