centos7上mysql数据库定时备份

编写备份脚本文件

vim backupdb.sh

#!/bin/bash
db_user="root"     #数据库名
db_passwd="123456"   #数据库密码
db_name="test"    #要备份的库名
name="$(date +%Y%m%d%H%M%S)"   #文件名,以时间
path="/home/project/"        #备份的sql文件所要存储的路径
mysqldump -u$db_user -p$db_passwd $db_name >> ${path}${name}.sql     #执行备份

:wq保存退出。

完成后给予权限chmod 777 backupdb.sh

配置定时

linux应该都有crontab,没有的话可以安装一下:

yum install  vixie-cron

yum install  crontabs

vixie-cron软件包是cron的主程序; 
crontabs软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序

安装完以后开启crontab服务

systemctl start crond

用以下的方法启动、关闭这个cron服务: 
systemctl start crond//启动服务 
systemctl stop crond  //关闭服务 
systemctl restart crond  //重启服务 
systemctl reload crond  //重新载入配置

查看crontab服务状态:service status crond  
手动启动crontab服务:service start crond 

查看crontab服务是否已设置为开机启动,执行命令:ntsysv 
加入开机自动启动: 
chkconfig –level 35 crond on

也可以用设置开机自动启动crond服务: chkconfig crond on


设置需要执行的脚本:
1.所要执行的脚本编辑,按上面缩写完成
2.命令行输入:crontab -e
3.进去后设置执行任务:00 01 * * * sh /home/project/backupdb.sh    //每天凌晨一点执行备份。 /home/project/backupdb.sh 为脚本路径
                      */5 * * * * sh /home/project/backupdb.sh    //每五分钟执行一次备份
4.:wq     //保存退出
5.使用 crontab -l        命令查看服务是否已经添加
6.重启cron:新加入的定时任务不会马上执行,一般要等一会儿,除非你重启服务器
  systemctl restart crond      或者重新载入配置:systemctl reload crond(推荐使用)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章