实现Mysql数据库每天自动备份定时备份

Mysql自动备份

1.创建备份目录:

root@localhost:~# cd /data/backup
root@localhost:/data/backup# mkdir mysql
root@localhost:/data/backup# cd mysql

2.创建备份Shell脚本

root@localhost:/data/backup/mysql# vim bkBailemen.sh

输入/粘贴以下内容:

#!/bin/bash
rq=`date +%Y%m%d`
mysqldump -u army -parmyqin bailemen > /data/backup/mysql/blm_$rq.sql

对备份进行压缩

#!/bin/bash
rq=`date +%Y%m%d`
mysqldump -u army -parmyqin bailemen | gzip > /data/backup/mysql/blm_$rq.sql.gz

3.添加可执行权限

chmod u+x bkBailemen.sh

./bkBailemen.sh

4.添加计划任务

root@localhost:/data/backup/mysql# cd /etc
root@localhost:/etc# nano -w /etc/crontab

输入/粘贴以下内容: (每3分钟执行一次)

*/3 *   * * *   root    /data/backup/mysql/bkBailemen.sh

重启:

root@localhost:/etc/init.d# service cron restart

如出现这样的错误, 删除后再重启:

cron: can't lock /var/run/crond.pid, otherpid may be 1020: Resource temporarily unavailable
root@localhost:/etc/init.d# rm -rf /var/run/crond.pid
root@localhost:/etc/init.d# service cron restart

 

Job 时间获取

date +%Y%m%d        //显示前天年月日
date +%Y%m%d --date="+1 day"  //显示前一天的日期
date +%Y%m%d --date="-1 day"  //显示后一天的日期
date +%Y%m%d --date="-1 month"  //显示上一月的日期
date +%Y%m%d --date="+1 month"  //显示下一月的日期
date +%Y%m%d --date="-1 year"  //显示前一年的日期
date +%Y%m%d --date="+1 year"  //显示下一年的日期

 

滚动至顶部