#!/bin/sh
#数据库的IP
HOSTNAME="10.10.10.10"
#数据库端口
PORT="3306"
#数据库用户名
USERNAME="root"
#数据库密码
PASSWORD="password"
#数据库名
DBNAME="db_name"
#查询的表名
TABLENAME="table_name"
#查询语句
sql="select a,b,c ${TABLENAME} where d=xx"
#处理查询的结果
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${sql}" | awk 'NR>1' | while read line ;
do
#取到值a
a=`echo $line | awk '{ printf( $1)}'`
#取到值b
b=`echo $line | awk '{ printf( $2)}'`
#取到值c
c=`echo $line | awk '{ printf( $3)}'`
echo ${a}
done
注释:
第一行为说明用哪个解释器
linux导入外部脚本命令为:mysql -hIP地址 -P端口号 -u用户名 -p密码 db名称 < 脚本文件
例:mysql -h10.0.0.0 -P3306 -uroot -pwd rtt < extra.sql
数据库查询语句的写法:
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${sql}"
执行后得到的结果含有标题,如果不想有标题需要在尾部添加 【| awk 'NR>1'】,如果需要每条记过添加换行,需要在尾部添加【|awk '{print $0"\n"}'】