当前位置:网站首页>Linux定时任务脚本执行时mysqldump备份异常的问题
Linux定时任务脚本执行时mysqldump备份异常的问题
2022-08-03 02:02:00 【羌俊恩】
一、问题描述
某业务系统的mysql自动备份定时任务检查执行过程中,发现mysqldump备份出的文件默认只有4K大小,即文件成功生成了但大小不对。但检查脚本,手动执行脚本,输出结果正常。
二、分析处理
1、从故障看,既然文件生成了,那么脚本就执行了,查看/var/log/cron日志也能佐证。
2、查看脚本权限正常;
3、相关经验表明:脚本引入某些变量会导致定时任务执行失败,但本事件中走完了变量,变量后命令都执行了;
4、另获悉,crontab执行时,如果脚本中命令不是系统默认的或当前用户的环境变量中的内容,会因命令路径问题,导致相关命令执行失败,你也可以查看.bash_profile 和.bashrc来验证是否相关命令在该环境下;查看 cat /etc/profile|grep PATH,是否命令路径在该文件下,本次事件如是。
5、据上,我们可判定mysqldump命令应该时执行失败了,但gzip命令执行成功了,故文件可以正常生成;
6、处理:修改脚本,在mysqldump行前新增source /etc/profile
7、重新编辑定时任务,现场验证定时任务执行脚本正常。
三、附录:备份脚本
#!/bin/bash
#author:junn
#date:2022-07-20
source /etc/profile
dir="/opt/mysql/data_dump"
#获取本地时间,并格式化时间
Date=`date +%Y-%m-%d-%H-%M-%S`
#判断文件夹是否存在
if [ ! -e $dir ]
then
echo "the source dir doesn't exist." > /opt/mysql/data_dump/mysql_bak_$Date.log
exit 1
fi
#数据库备份,打包导出为文件
mysqldump -uroot -p'Passw0rd' --all-databases |gzip > /opt/mysql/data_dump/"$Date"_b-mysql_backup.gz
if [ $?=0 ]
then
cd $dir
fileName="$Date"_b-mysql_backup.gz
file_size=`/usr/bin/du -sm ./$fileName |awk '{ print $1}'`
if [ $file_size -gt 1000 ];then
echo "$Date mysql backup have accomplished." >> /opt/mysql/data_dump/mysql_bak_$Date.log
rsync -azhv "$fileName" [email protected]:172.31.9.1/home/backup #异地备份
else
echo "backup falied,please check and retry" >> /opt/mysql/data_dump/mysql_bak_$Date.log
fi
fi
边栏推荐
- pytest:如何调用 pytest
- Jenkins2.328+sonarqube7.9 实现代码自动化检测
- “蔚来杯“2022牛客暑期多校训练营4 补题题解(N)
- ”QSqlDatabasePrivate::removeDatabase: connection ‘test-connect‘ is still in use“数据库多次打开报错
- 一篇文章玩明白Stack-migration
- DTD约束和Schema约束
- 【UE4】Build VR live broadcast in LAN UE4.27
- The cornerstone of high concurrency: multithreading, daemon threading, thread safety, thread synchronization, mutual exclusion lock, all in one article!...
- 为什么要使用 playwright 做浏览器自动化测试?
- 7-Redis工具类
猜你喜欢
随机推荐
【静态类型和动态类型 编译检查和运行检查 Objective-C中】
JVM内部结构图及各模块运行机制总结
韦东山 数码相框 项目学习(五)libjpeg-turbo的移植
“蔚来杯“2022牛客暑期多校训练营4 补题题解(N)
征集 |《新程序员》专访“Apache之父”Brian Behlendorf,你最想问什么?
VS2010 组件列表与对应名称
EasyGBS播放器优化:设备通道视频播放出现跳屏问题的修复
数据中台建设(八):数据服务体系建设
什么情况下DigiCert证书会引起发生安全警报?
ldap创建公司组织、人员
Summary of some interviews
【Flink】如何生成 Flink 作业的交互式火焰图?
常见钓鱼手法及防范
一个接口并发问题的模拟与复现
流程图(1)
扩展卡尔曼滤波【转】
Incorrect datetime value: '2022-01-01' for function str_to_date
Wei Dongshan Digital Photo Frame Project Learning (5) Transplantation of libjpeg-turbo
MySQL里获取当前周、月、季的第一天/最后一天
可信的SSL证书颁发机构有哪些









