1.先在一个自己喜欢的目录中创建备份目录(最好不是系统盘,能搞个挂载盘最好)

cd /mnt/
mkdir bak
cd bak/

 

 

1290815-20230515162023371-1636769427.png

 

2.判断自己有没有安装crond的:(一般都会有的)

service crond status

1290815-20230515162624471-938111756.png

 没有的话就自己yum一下

yum install vixie-cron
yum install crontabs

 

3.先去mysql恢复一下数据

mysql -uroot -p
#输入你自己的mysql密码

1290815-20230515163534793-65979564.png

 

4.查看现在有几个库,并创建一个自己的库

show databases;
create database shaun;

1290815-20230515164052608-593608385.png

1290815-20230515164118719-1021524379.png

 

5.恢复数据库

source /mnt/bak/2023.sql
exit

1290815-20230515164752708-27088131.png

1290815-20230515164909961-617642958.png

 

6.至此演示环境搭建完成,接下来定时任务备份mysql

创建一个新的空脚本:

touch shaun.sh

编辑脚本,添加mysql打包备份命令:

mysqldump -uroot -p'123456' shaun | gzip > /mnt/bak/database_`date +%Y%m%d%H%M`.sql.gz

 

7.给脚本添加权限:

chmod 777 shaun.sh

1290815-20230515165945140-1794723336.png

 

8.测试运行一下:

sh shaun.sh

1290815-20230515170140975-1420696403.png

 没问题的,就OK。

 

 

9.进行定时任务编辑

crontab -e
i
#每5min执行一下这个脚本
*/5 * * * * sh /mnt/bak/shaun.sh
ESC :wq

 

10.得重启crond使改动生效

service crond restart

 

1290815-20230515171217232-895411494.png

 

11.查看crond执行内容(看5min后脚本文件有没有被执行,或者直接看指定的那个目录下文件有没有多出来)

tail -f /var/log/cron

1290815-20230515171402693-1330064321.png

1290815-20230515171838515-416381236.png