首页 > 数据库技术 > 详细

shell获取mysql查询结果,然后计算和当前时候的差值

时间:2019-07-11 09:28:09      阅读:138      评论:0      收藏:0      [点我收藏+]
#!/bin/bash
#一次到离服务,数据库最新数据时间监控,实时数据延迟超过30分钟
#计算当前时间和mysql数据库取值时间直接的差

dbu=opuser
dbp=elane2016
dbs=/data3306/mysql.sock
db=shipdata
#echo $dbu
#echo $dbp
#echo $dbs
#echo $db

#通过shell执行sql语句获取一个时间,使用awk指定结果的第二行,使用date将时间转换成数字,%s转换成秒为单位
dbt=mysql -u$dbu -p$dbp -S $dbs -D $db -e "SELECT max(update_time) FROM dynamic" | awk NR==2
dbtt=date -d "$dbt" +%s
echo $dbt
echo $dbtt

#获取当前时间,并转换成秒为单位的数字
cur_d=date +"%Y-%m-%d %H:%M:%S"
cur_dd=date -d "$cur_d" +%s
echo $cur_d
echo $cur_dd

#当前时间减去数据库获取的时间 结果是秒为单位
int=expr $cur_dd - $dbtt
echo $int

#将计算结果进行判断,-ge 大于等于
if [ "$int" -ge "300" ];then
echo 1
else
echo 0
fi

shell获取mysql查询结果,然后计算和当前时候的差值

原文:https://blog.51cto.com/19840202/2418881

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!