当前位置:网站首页>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
边栏推荐
- Topic Modeling of Short Texts: A Pseudo-Document View
- Interconversion between numpy PIL tensors
- LVS负载均衡群集及部署LVS-NAT实验
- 为什么要使用 playwright 做浏览器自动化测试?
- 钻石基础知识介绍
- 不想当Window的Dialog不是一个好Modal,弹窗翻身记...
- Brute force recursion to dynamic programming 07 (516. Longest palindrome subsequence)
- ”QSqlDatabasePrivate::removeDatabase: connection ‘test-connect‘ is still in use“数据库多次打开报错
- [Arduino] Reborn Arduino Monk (3)----Arduino function
- 公司封装方式导出excel过程
猜你喜欢
EasyGBS播放器优化:设备通道视频播放出现跳屏问题的修复
Violent recursion to dynamic programming 06 (the sword refers to Offer II 095. Longest common subsequence)
LVS-NAT模式【案例实验】
Rust Web(三)—— 通过sqlx连接数据库(MySQL)
部门之间,互不信任正常吗?(你是否遇到过)
任意版本JLink驱动官方下载指引
软件定义网络实验之SDN网络简单管理及开发
【社媒营销】Facebook速推帖子如何运作?值得吗?
FLIR E95 在8层楼看马路上行驶的CAR的热成像形态?
How does Excel compare if two columns of strings are the same?
随机推荐
win下使用vscode+wsl2
堆的应用:堆排序和TOP-K问题
vs studio 安装opencv 环境
【云原生】灰度发布、蓝绿发布、滚动发布、灰度发布解释
【Flink】使用arthas在线诊断flink的那些事
怎么做postgrsql主备?
Topic Modeling of Short Texts: A Pseudo-Document View
The Multiversity 的 “非常重要的生命体” NFT 推出
flask-socketio实现websocket通信
initramfs详解-----初识initramfs
VS2010 组件列表与对应名称
力扣第二周错题集
Topic Modeling of Short Texts: A Pseudo-Document View
5.软件测试-----自动化测试
MATLAB绘制填充图(X轴上下两种颜色)
企业云成本管控,你真的做对了吗?
45部署LVS-DR群集
IDEA基本使用-创建和删除项目
[Example构造方法增加notNull参数,默认false,允许值为null,值为null的时候不加入到条件中
How does Excel compare if two columns of strings are the same?