linux定时备份数据的shell

记录linux中定时备份sql脚本的shell

源文章地址

脚本代码如下:
mysqldb.sh

#!/bin/bash
DUMP=/usr/bin/mysqldump
OUT_DIR=/usr/local/data/project/sql  #sql输出路径
LINUX_USER=root
DB_NAME1=lj_think #自己的数据库名字
#DB_NAME2=db_2
#DB_NAME3=db_3
DB_USER=root
DB_PASS=123456
cd $OUT_DIR
DATE=`date +%Y%m%d%H%M`
keepbackups=`date -d "3 days ago" +%Y%m%d`
OUT_SQL1=$DATE'_db1'.sql
#OUT_SQL2=$DATE'_db2'.sql
#OUT_SQL3=$DATE'_db3'.sql
$DUMP -u$DB_USER -p$DB_PASS $DB_NAME1 > $OUT_DIR/$OUT_SQL1
#$DUMP --sock=/tmp/mysql.sock -u$DB_USER -p$DB_PASS $DB_NAME2 > $OUT_DIR/$OUT_SQL2
#$DUMP --sock=/tmp/mysql.sock -u$DB_USER -p$DB_PASS $DB_NAME3 > $OUT_DIR/$OUT_SQL3
chmod +x $OUT_SQL1
#chmod +x $OUT_SQL2
#chmod +x $OUT_SQL3
cd $OUT_DIR
find . -name "${keepbackups}*.sql" | xargs rm -rf

如果出现编码问题 需要 vim 该文件 然后 :set ff=unix :wq

可以先进行测试一下 bash mysqldb.sh 看是否能生成sql文件,成功的话 接下来做定时。

给该文件权限

chmod 777 mysqldb.sh

进入crontab 定时器 写定时任务

crontab -e

crontab 的基本语法 :

*  *  *  *  *  command
分 时  日  月  周  命令

在这里插入图片描述
在最后添加该语句。/root/mysqldb.sh 是该文件存放的位置。

0 0 * * * sh /root/mysqldb.sh

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值