centos7.6添加mysql每天定时备份

半城伤御伤魂 提交于 2020-01-19 03:07:21

1、创建要执行的备份任务

1.1创建存放备份文件的存储位置

 [root@ecs-19ed data]#  mkdir -p /data/mysql_data_bak

1.2给该文件夹分配744的权限

[root@ecs-19ed data]#  chmod 744  /data/mysql_data_bak

1.3创建要执行备份的脚本文件

 [root@ecs-19ed data]#  touch /data/mysqlBack_everyDay.sh

1.4给脚本文件授权


[root@ecs-19ed data]#  chmod 744   /data/mysqlBack_everyDay.sh

1.5编辑该脚本文件,写入要执行的脚本内容:

[root@ecs-19ed data]# vim   /data/mysqlBack_everyDay.sh

 /usr/local/mysql/bin/mysqldump -uroot -p71fad9e684c1fb25f62548a6a83eed8f PetCtrPro>/data/mysql_data_bak/date_$(date +%Y%m%d_%H%M%S).sql
  # /usr/local/mysql/bin/mysqldump 备份命令(完整路径)
 #-uroot -p71fad9e684c1fb25f62548a6a83eed8f 数据库用户名和密码
 # PetCtrPro要备份的数据库 后面不带空格直接跟>
 #备份文件存放路径和命名
find mysql_data_bak/ -mtime +30 -name "*.sql" -exec rm -rf {} \; # 删除30天前的备份文件 反斜杠后面直接跟分号不带空格

注意: 1.数据库和‘>’之间不能有空格,否则报错 2.第二行{}和\之间一定要有空格,末尾一定要有';'分号,而且'\'和';'之间不能有空格,否则会报错

测试一下脚本是否能正确执行,不报错且备份文件夹下多出一个文件“date_20200114_153821.sql”,表示脚本没问题,可以创建定时任务了。

 [root@ecs-19ed data]# ./mysqlBack_everyDay.sh

2、加入到定时任务

2.1 编辑定时任务

 [root@ecs-19ed data]# crontab -e

在打开的文本编辑器中添加下面这行命令(和vim一样操作)。

1 0 * * * sh /data/mysqlBack_everyDay.sh #每天0点01分执行脚本文件
# 分 小时 天 月 星期 执行任务 

保存,退出编辑器,显示添加了新的任务

"/tmp/crontab.8yqj0A" 1L, 38C written
crontab: installing new crontab

2.2 重启定时任务使之生效

 [root@ecs-19ed data]# systemctl restart crond

2.3 查看生效的定时任务

 [root@ecs-19ed data]# crontab -l
 1 0 * * * /data/mysqlBack_everyDay.sh

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!