linux 执行任务crontab 安装以及备份数据库 一分钟 备份一次以及删除5分钟之前的 数据 好测试
crontab 安装
-
[[email protected] ~]# yum install vixie-cron
-
[[email protected] ~]# yum install crontabs
-
service crond start //启动服务
-
service crond stop //关闭服务
-
service crond restart //重启服务
-
service crond reload //重新载入配置
-
service crond status //查看crontab服务状态
启动服务命令:[[email protected] /]# service crond start
停止服务命令:[[email protected] /]# service crond stop
情况二:当linux发行的版本没有service这个命令时候,用如下命令进行停止启动:
停止服务:[[email protected] /]# /etc/init.d/cron空格stop
启动服务:[[email protected] /]# /etc/init.d/cron空格start
备份数据库脚本
#!/bin/bash
mysqldump -uroot -p123456 yi_xin | gzip > /home/dbbak/yi_xin_$(date +%Y%m%d_%H%M%S).sql.gz
上面的就是备份数据库 并且制定打包 为 当前 日期结尾 打包文件 如下图
我们打包问题解决了 但是还有一个问题就是打包时间久了 文件会存在很多很多 要是 可以自动定时清理 制定之前的也是不错的
下面这个脚本就是清理我们打包的文件
脚本文件
#! /bin/sh
# 删除指定目录 结尾文件( 五分钟之前)
location="/home/dbbak"
#对应天数查找 -mtime +3 三天前的
find $location -mmin +5 -name "*.sql.gz" -exec rm -f '{}' \;
我们运行脚本
很明显刚才最上面 还有 很多 现在 只是 当前时间 5 分钟 当然 要是天数怎么改呢。 -mtime +3 上面有哦!
现在脚本是我们手动执行的 现在我们要进行 定时执行
crontab -e
编辑执行
定时 执行 自己脚本
第一行的意思是 ----每一分钟 执行一下上面的那个bak.sh脚本 。
每一分钟就行一次备份
将会对应删除之前的
过了一会查看
测试时 ok的
注意作者原创 转载请注明 出处。
https://blog.****.net/qq_25861247/article/details/82498070