简单的数据库集群系列(三)之脚本定时冷备

博客涉及的相关软件仅供学习参考,不做任何商业用途以及无相关法律责任!如有不妥请联系QQ 3278688677 进行更正。

一、crontab -e命令来编辑,编辑的是/var/spool/cron下对应用户的cron文件,也可以直接修改/etc/crontab文件如果crontab命令无效则系统需要安装配置定时任务器:

 yum -y install crontabs          #安装

 chkconfig crond on               #设为开机启动,先要安装chkconfig(yum install chkconfig)

 /etc/init.d/crond start            #启动

 /etc/init.d/crond stop            #停止

/etc/init.d/crond restart         #重启

 /etc/init.d/crond reload        #不中断服务,重新载入配置

二、脚本详情:数据库安装位置/morik/sql/mysql_5.7.26,新备份数据存放位置/morik/sql/backup,超过7天后的备份数据/morik/sql/backupold。蓝色地方根据项目实际情况做调整。

vim /morik/sql/backup.sh

#!/bin/bash
db_user="root"
db_passwd="数据库远程密码"
db_name="数据库名"
cd /morik/sql/backup
echo "you are in bakmysql directory now"
mv 数据库名* /morik/sql/backupold
echo "Old databases are moved to bakmysqlold folder"
backup_dir="/morik/sql/backup"
time=$(date +"%Y-%m-%d")
/morik/sql/mysql_5.7.26/bin/mysqldump --socket=/morik/sql/mysql_5.7.26/mysql.sock -u$db_user -p$db_passwd $db_name  > "$backup_dir/$db_name"-"$time.sql"
echo "your database backup successfully completed"
SevenDays=$(date -d -7day  +"%Y-%m-%d")
if [ -f /morik/sql/backupold/pashanhu-$SevenDays.sql ]
then
rm -rf /morik/sql/backupold/pashanhu-$SevenDays.sql
echo "you have delete 7days ago bak sql file "
else
echo "7days ago bak sql file not exist "
echo "bash complete"
fi

三、触发器配置

crontab -e         #新增定时任务

粘贴下列一行配置(每天凌晨2点定时执行脚本):

00 02 * * * /morik/sql/backup.sh

脚本和脚本新建文件夹授权:
chmod +x /morik/sql/backup.sh

mkdir  /morik/sql/backup

mkdir  /morik/sql/backupold

chmod -R 777 /morik/sql/backup

chmod -R 777 /morik/sql/backupold

备注:crontab文件的格式:

minute hour day month weekday username command

minute:分,值为0-59

hour:小时,值为1-23

day:天,值为1-31

month:月,值为1-12

weekday:星期,值为0-6(0代表星期天,1代表星期一,以此类推)

username:要执行程序的用户,一般设置为root

command:要执行的程序路径(设置为绝对路径)例如:/root/shell/check_cpu.sh

/root/shell/check_cpu.sh #要自动执行的脚本程序路径

chmod +x /root/shell/check_cpu.sh #对脚本文件添加执行权限,否则不能执行
 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值