编写备份脚本文件
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(推荐使用)