【CentOS】Linux系统设置定时任务进行mysql数据库备份

1、Linux系统设置定时任务进行数据备份几乎是每个环境都必备一种基本操作,还有一些活动安排也是靠定时任务完成的,下面就是定时任务的具体实现:

1、创建存放定时任务脚本的文件夹:

mkdir shell
vi backup_mysql.sh

2、写入以下脚本文件:

#!/bin/sh
#备份地址
BACK_DIR="/backups"  
DATE=`date +%Y%m%d`
LOG_DIR=$BACK_DIR"/logs"
LOG=$LOG_DIR"/"$DATE".log"
DATE_TIME=`date +"%Y-%m-%d %H:%M:%S"`
echo $DATE_TIME"    start" >> $LOG
echo $DATE_TIME"    开始备份数据库" >> $LOG
#备份并且打成压缩包 注意写自己的路径 我这里是backups 必须是存在的文件夹
mysqldump xuan | gzip > /backups/xuan_$(date +%Y%m%d_%H%M%S).sql.gz  
echo $DATE_TIME"    备份成功" >> $LOG
echo $DATE_TIME"    删除前一天备份数据库" >> $LOG
find /backups -mtime +1 -name "*.sql.gz" -exec rm -rf {} \;
#end

3、修改Mysql的配置文件my.cnf:(如果没有下列配置项加上即可

[mysqldump]
quick
max_allowed_packet = 16M
user=root
password=xuan

3.1、修改之后的效果图:

在这里插入图片描述

4、创建定时任务:

crontab -e

4.1、效果图如下:

在这里插入图片描述

Cron表达式范例:( * * * * * 表示每一分钟备份一次)

每隔5秒执行一次:*/5 * * * * ?

每隔1分钟执行一次:0 */1 * * * ?

每天23点执行一次:0 0 23 * * ?

每天凌晨1点执行一次:0 0 1 * * ?

每月1号凌晨1点执行一次:0 0 1 1 * ?

每月最后一天23点执行一次:0 0 23 L * ?

每周星期天凌晨1点实行一次:0 0 1 ? * L

在26分、29分、33分执行一次:0 26,29,33 * * * ?

每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?

每隔5分钟执行一次:0 0/5 * * *

5、重启crond查看效果:

sudo systemctl restart crond

5.1、备份成功效果图:

在这里插入图片描述

2、提示:如果没有成功!必然是路径问题!仔细排查就好遇到困难
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值