1、编写备份数据库使用的shell脚本
代码如下 | 复制代码 |
vim /home/mysqlBack.sh #!/bin/bash MYSQL_USER=root MYSQL_PASS=root DATABASE=test FILE_NAME=$DATABASE.`date +%Y%m%d`.tar.gz TMP_FILENAME=$DATABASE.`date +%Y%m%d%H%M%S`.sql.gz #切换到文件存放的目录,防止在tar时,报警告信息:tar: Removing leading `/’ from member names cd /alidata1/mysqlback/ #删除7天以前的备份文件 rm -rf $DATABASE.$(date -d -1day +"%Y%m%d").tar.gz mysqldump -u$MYSQL_USER -p$MYSQL_PASS $DATABASE --socket=/tmp/mysql.sock | gzip -9 -> $TMP_FILENAME tar -czf $FILE_NAME $TMP_FILENAME rm -rf $TMP_FILENAME |
2、使用crontab执行定时计划任务
代码如下 | 复制代码 |
crontab -e 00 1 * * * root /home/mysqlBack.sh |
定为每天凌晨1:00执行脚本
简单注明
MYSQL_USER=root 数据库用户名
MYSQL_PASS=root 数据库密码
DATABASE=test 备份数据库
FILE_NAME=$DATABASE.`date +%Y%m%d`.tar.gz 按日期生成备份文件
时间: 2024-10-14 21:43:52