mysql++tab,mysql使用crontab定时备份

1,

安装crontab

yum install vixie-cron

yum install crontabs

说明:

vixie-cron软件包是cron的主程序;

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

//+++++++++++++++++++++++++++++++++++

cron 是linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:

/sbin/service crond start //启动服务

/sbin/service crond stop //关闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //重新载入配置

查看crontab服务状态:service crond status

手动启动crontab服务:service crond start

查看crontab服务是否已设置为开机启动,执行命令:ntsysv

加入开机自动启动:

chkconfig --level 35 crond on

2,

赋予脚本执行权限

chmod +x test.sh

添加定时任务

crontab -e

*/5 * * * * /home/test.sh

说明:

运行crontab –e 编写一条定时任务 */5 * * * * /home/test.sh 在每5分钟执行一次test.sh脚本

查看当前所有定时任务

crontab -l

删除当前定时任务

每隔12小时备份一次

1 */12 * * * /usr/local/backup/backupMysql.sh

每天凌晨1点删除一个月之前的备份

1 1 * * * /usr/local/backup/delBackupMysql.sh

备份脚本

USER="root"PASSWORD="数据库密码"DATABASE1="jxt"#DATABASE2=zabbix

BACKUP_DIR="/usr/local/backup/mysql"#备份数据库文件的路径

LOGFILE="/usr/local/backup/mysql/data_backup.log"#备份数据库脚本的日志文件

DATE=`date +%Y%m%d-%H%M -d -3minute` #获取当前系统时间-3分钟

DUMPFILE1="$DATE-jxt.sql"#需要备份的数据库名称

#DUMPFILE2=$DATE-zabbix.sql

ARCHIVE1="$DUMPFILE1.gz"#备份的数据库压缩后的名称

#ARCHIVE2=$DUMPFILE2-tar.gz

#cat /usr/local/backup

#!/bin/bash

#Shell Command For Backup MySQL Database Everyday Automatically By Crontab

#time 2015-5-20

if [ ! -d $BACKUP_DIR ]; #判断备份路径是否存在,若不存在则创建该路径then

mkdir -p "$BACKUP_DIR"

fi

echo -e "\n" >>$LOGFILEecho "------------------------------------" >>$LOGFILEecho "BACKUP DATE:$DATE">>$LOGFILEecho "------------------------------------" >>$LOGFILE

cd $BACKUP_DIR #跳到备份路径下/usr/local/mysql/bin/mysqldump -u$USER -p$PASSWORD $DATABASE1 >$DUMPFILE1 #使用mysqldump备份数据库if [[ $? == 0 ]]; then

tar czvf $ARCHIVE1 $DUMPFILE1 >> $LOGFILE 2>&1#判断是否备份成功,若备份成功,则压缩备份数据库,否则将错误日志写入日志文件中去。echo "$ARCHIVE1 BACKUP SUCCESSFUL!" >>$LOGFILErm -f $DUMPFILE1else

echo “$ARCHIVE1 Backup Fail!” >>$LOGFILEfi#/usr/local/mysql/bin/mysqldump -u$USER -p$PASSWORD $DATABASE2 >$DUMPFILE2

#if [[ $? == 0 ]]; then#tar czvf $ARCHIVE2 $DUMPFILE2 >> $LOGFILE 2>&1#echo "$ARCHIVE2 BACKUP SUCCESSFUL!" >>$LOGFILE

#rm -f $DUMPFILE2

#else#echo “$ARCHIVE2 Backup Fail!” >>$LOGFILE

#fi

删除脚本

BACKUPDIR="/usr/local/backup/mysql/"#定义备份文件路径

KEEPTIME=30#定义需要删除的文件距离当前的天数

DELFILE=`find $BACKUPDIR -type f -mtime +$KEEPTIME -exec ls{} \;` #找到天数大于KEEPTIME天的文件for delfile in${DELFILE} #循环删除满足天数大于七天的文件do

rm -f $delfiledone

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值