Linux cron任务设置(数据库备份及定时清理日志)

cron服务是linux用来定时的服务。项目中经常会用到,比如说数据库备份、定时清理日志等等。下面我来介绍Linux系统如何做数据库备份和清理日志。


1.找个路径新建一个文件夹,专门用来放置脚本文件。我新建了一个目录cronSH。

#mkdir cronSH

2.进入cronSH文件夹,新建并编辑数据库备份脚本文件。

#cd cronSH
#vim mysql-beifen.sh  //备份数据库的脚本

mysql-beifen.sh脚本文件的内容为

#!/bin/sh

mysqldump -uuserName -ppassword mysqlName > /root/mysqlName.`date +%Y-%m-%d`.sql

编辑好后,wq退出。

注:
userName-数据库用户名,password-密码,mysqlName为数据库名称。最后会生成还有日期的数据库本分文件。如:mysqlName.2017-12-26.sql

3.进入cronSH文件夹,新建并编辑清理日志脚本文件。

#cd cronSH
#vim logs-clean.sh  //清理日志的脚本

logs-clean.sh脚本文件的内容为

#!/bin/sh
find /root/apache-tomcat-8.0.36/logs/ -mtime +10 -name "catalina*" -exec rm -rf {} \;

编辑好后,wq退出。
要说明一下,删除文件命令是

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} ;

如:find /root/apache-tomcat-8.0.36/logs/ -mtime +10 -name"catalina*" -exec rm -rf {} ;
意思是在/root/apache-tomcat-8.0.36/logs/目录下删除10天前的并且以catalina开头的文件。

想要深入了解,可以参考:https://www.cnblogs.com/peida/archive/2013/03/25/2980121.html

4.授权给两个脚本文件

需要授予执行权限给两个脚本文件,我一般直接赋予最大的权限。

#chmod 777 -R logs-clean.sh
#chmod 777 -R mysql-beifen.sh

5.cron任务设置

我们上面已经写好了执行脚本了,现在我们来设置执行脚本的时间和频率。

#crontab -u root -b //编辑cron服务

进入编辑模式

0 0 */7 * * /root/cronSH/logs-clean.sh >/dev/null 2>&1

0 23 * * * /root/cronSH/mysql-beifen.sh >/dev/null 2>&1

第一个表达式的含义为每7天执行一次logs-clean.sh脚本,时间为0点整;第二个表达式的含义为每天23点整执行一次mysql-beifen.sh脚本。

最后执行wq,保存退出。

6.查看cron任务

#crontab -l //查看cron任务命令

如果出现了刚刚编写的cron任务,就代表任务已经设定成功了。

7.最后一步

要是觉得这边文章对你有帮助的话,麻烦点赞关注一波啦~~哈哈哈~( ̄▽ ̄~)

谢谢观看

你可能感兴趣的:(Linux cron任务设置(数据库备份及定时清理日志))