linux操作系统
mysql数据库
那怎么查询数据呢?在shell中是不能用mysql的交互接口的,我们可以通过在建立连接的时候直接查询的方式实现。/usr/local/mysql/bin/mysql -hIP -uusername -ppassword -Pportnumber-e use lbc_inf;select count(name) from table_name where status=1 and update_time>$time_mill_sec_2_day_ago and update_time<$time_mill_sec_1_day_ago注意上述命令是在一行中实现的!-e参数后面接的就是切换数据库和查询数据库的语句
下面展示一下一个完整的查询数据的脚本。脚本中通过时间来查询两天前和一天前数据表中新增的数据情况。#!/bin/bash#查询数据库新增poi脚本#First release 2013/11/21 dataConn='/usr/local/mysql/bin/mysql -h10.10.18.234 -uusername -password -P3306' time_mill_sec_2_day_ago=`date --date='2 day ago' +%s`time_mill_sec_1_day_ago=`date --date='1 day ago' +%s`#echo -e '$time_mill_sec' result=`$dataConn -e 'use database_name;select count(name) from table_name \ where status=1 and update_time>$time_mill_sec_2_day_ago and update_time<$time_mill_sec_1_day_ago'|awk 'END{print $0}'`; echo -e '`date --date='2 day ago' +%Y年%m月%d日`到`date --date='1 day ago' +%Y年%m月%d日`新增的生效的poi数量为: $result'time_mill_sec=`date --date='1 day ago' +%s`#echo -e '$time_mill_sec'result=`$dataConn -e 'use lbc_inf;select count(name) from table_name where status=1 and update_time>$time_mill_sec_1_day_ago'|awk 'END {print $0}'`;result=`$dataConn -e 'use lbc_inf;select count(name) from table_name where status=1 '|awk 'END {print $0}'`;echo -e '查询完成!\n'