直接上教程,基本上出现的问题都在下面了;
首先检查你的服务器是否安装了crontab,命令如下:
命令: crontab
如果提示-bash: crontab:commandnotfound; // 表示你没有安装crontab;
安装crontab的两种方法:
1.如果你服务器联网了,可以直接使用下列命令安装(提示他有两个安装包):
命令:yum -y install vixie-cron
命令:yum -y install crontabs
说明:
vixie-cron 软件包是 cron 的主程序;
crontabs 软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。
2.如果你的服务器没有联网,先在网上下载crontab的安装包,有两个;我这里给一个下载地址
下载完成后,把他上传到你服务器home目录下(上传教程自行百度),使用下列命令进行手动安装;
命令:rpm -ivh softname
注:softname 为软件包名;记得把两个软件包都安装上;
安装完成后把crontab的服务开启,命令如下
命令: service crond start
命令: service crond status
#上面的命令分别是启动服务命令和查看服务状态命令;
启动服务后,我们将服务加入开机自启,命令如下:
命令: chkconfig crond on
现在到此,我们的准备工作已经做好了;
下面,我们进行创建备份目录,命令如下:
命令: cd /home
命令: mkdir backup
我们在进入backup目录中编写shell脚本:
命令: vim bkDatabaseName.sh
把DatabaseName换位自己要备份的数据的名字;
把下列语句输入到shell脚本中:
#!/bin/bash
mysqldump -uusername -ppassword DatabaseName > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql
#!/bin/bash
mysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz
然后保存退出就行;
注意:把 username 替换为实际的用户名;
把 password 替换为实际的密码;
把 DatabaseName 替换为实际的数据库名;
下面我们需要为我们编写的脚本进行添加可以执行的权限的,命令如下:
命令:chmod u+x bkDatabaseName.sh
下面是测试一下脚本是否可以执行,也就是看他在指定的文件夹内备份了文件没有:
命令:./bkDatabaseName.sh
然后我们添加计划任务,这是最后一步了(宝宝写的好辛苦啊,中午饭还没有吃);
命令如下:
命令:crontab -e
//这个是进行计划任务编辑;
然后把下面的内容保存
*/1 * * * * /home/backup/bkDatabaseName.sh
可以过一分中查看文件夹中的文件是否为预期效果;
如果任务执行失败可以查任务的执行日志
命令:tail -f /var/log/cron
到这里基本就结束了;