cron定时任务中相对路径问题

文章讲述了作者在执行定时任务备份MySQL表时遇到的问题,发现问题出在脚本中的路径设置。通过修改脚本,使用绝对路径并调整Cron任务频率,确保每分钟执行一次,以便实时验证脚本执行情况。
摘要由CSDN通过智能技术生成

做了定时任务备份mysql表,发现都没有执行成功,查看日志发现也都执行了

研究了下才发现原来是路径问题:

原脚本如下:

#!/bin/sh
datedir=`date +%Y%m%d%H%M%S`
if [ ! -d $datedir ];then
  mkdir $datedir
fi
for table in `cat $dirpath/tables.txt`
do
  mysqldump -h172.x.16.x -uyi -p'mw1Fk2Yfdjvufez%' booking-resource -t $table  --set-gtid-purged=OFF  > $datedir/${table}.sql
done

修改后

#!/bin/sh
dirpath=$(dirname $0)
datedir=`date +%Y%m%d%H%M%S`
if [ ! -d $dirpath/$datedir ];then
  mkdir $dirpath/$datedir
fi
for table in `cat $dirpath/tables.txt`
do
  mysqldump -h172.x.16.x -uyi -p'mw1Fk2Yfdjvufez%' booking-resource -t $table  --set-gtid-purged=OFF  > $dirpath/$datedir/${table}.sql
done

想要验证下就调整cron为每一分钟执行一次

0 0 * * * /bin/bash /home/sq/mysql/mysql_table.sh
调整为:
*/1 * * * * /bin/bash /home/sq/mysql/mysql_table.sh
注意是*/1不是1/*,

这样就能立马看到执行结果,起到验证的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值