shell操作数据库脚本

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/antch620/article/details/78351891

#!/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"}'






猜你喜欢

转载自blog.csdn.net/antch620/article/details/78351891