1. 如何在shell文件中获取sql的值
#!/bin/bash
#可以这样获取:
words=`mysql -u root -p passwd -BN yourdb -e "select ... from ... where ....;"`
2. 想写个shell脚本,获取到SQL中查询到的字段的值,赋给shell脚本中定义的变量,写入文件.txt中.
while read enabledate
do
__aa=$enabledate;
done
echo "$__aa";
3. 请教,shell如何取得sql执行的返回值
shell如何取得sql执行的返回值
个人用过的有两个办法: (1)利用变量(可以是数组)接收 (2)利用文件接收(将执行结果倒入某文件,然后读取该文件)
4. 【讨论中】怎么用shell读取mysql的返回值
本文介绍 MySQL 8.0 shell 子模块 Util 的两个导入特性 importTable/import_table(JS和python 版本的命名差异)、importJson/import_json的使用方法。
其中 import_table 是通过传统 MySQL 协议来通信,Import_json 是通过 X 插件协议来通信。MySQL 一直以来提供导入文件 SQL 命令 load data infile(单线程)以及对应的可执行文件 mysqlimport(多线程)。
比如我导入 100W 行示例数据到表 ytt.tl1,花了 24 秒。这个已经是 MySQL 默认导入来的最快的。分析那我们现在看下 mysqlimport 工具的升级版,mysqlshell 的 util 工具集。
使用这两个工具之前,必须得临时开启 local_infile 选项。1. import_table建立 3306 端口的新连接我这里切换为 python 模式清空掉示例表 Ytt.tl1import_table 有两个参数,第一个参数定义导入文件的路径,第二个定义相关选项,比如导入的格式,并发的数量等。定义文件路径(参数1)定义选项(参数2)执行导入:只花了不到 17 秒,比传统 mysqlimport 快了不少。
我们上面指定了显式指定了字段分隔符,那有没有已经定义好的组合格式呢? 答案是有的,选项 dialect 可以指定以下格式:csv,tsv,json,csv-unix那么上面的导入,我们可以更简单,改下变量 y_options1 的定义导入时间差不多。这里要说明下,dialect 选项的优先级比较低,比如添加了'linesTerminatedBy':' ', 则覆盖他自己的' '。
选项 diaelect 还有一个可选值为 json,可以直接把 json 结果导入到文档表里。比如我新建一张表 tl1_json重新定义文件以及导入选项。导入 JSON 数据速度也还可以,不到 24 秒。那导入 json 数据,就必须得提到以 X 插件协议通信的工具 import_json了。2. imort_json我们切换到 mysqlx 端口import_json 参数和 Import_table 参数类似,这里我改下选项我在手册上没有看到多线程的选项,所以单线程跑 35 秒慢了些。查看刚刚导入的数据import_json 不仅仅可以导入 Json 数据,更重要的是可以在 BSON 和 JSON 之间平滑的转换,有兴趣的同学可以去 TRY 下。
5. 怎么在shell脚本里面获得sqlplus执行的结果
请参考下面这个方法:
备注:getDbUserByTableName$TableName是获取表在哪个数据库的。你可以直接把$DbUSER换成tns串或者别名即可。
#sqlplus连接数据库的方法
#需要传入两个参数,第一个是表名,一个是需要执行的sql语句,一条语句作为一行
sqlBossDb(){
TableName=$1
SqlStr=$2
getDbUserByTableName$TableName
DbUSER=`catdbuser.temp`
Note_Log"$DbUSER连接数据库,执行语句$SqlStr"
evalecho${$DbUSER}>aaa.temp#查询出来是sqlDbUser.cfg中DBUSERNAME项,需要换成DBUSERSTR项
DbUSER=`cataaa.temp`
#Note_Log"开始$DbUSER"
sqlplus$DbUSER<<!
setlinesize1000
$SqlStr
commit;
quit
!
e
6. shell脚本执行sql传出结果
shell脚本执行sql需要输出结果,可以在shell脚本中写入语句,执行完成sql语句后,结果定向输入到一个txt文本文件中,再把txt文本文件存放在固定的文件夹中即可。
7. linux系统如何查看.sql文件内容
第一种方法:
在命令行下(未连接数据库),输入 mysql -h localhost -u root -p123456 < F:hello world
iuzi.sql (注意路径不用加引号的!!) 回车即可.
第二种方法:
在命令行下(已连接数据库,此时的提示符为 mysql> ),输入 source F:hello world
iuzi.sql (注意路径不用加引号的)
或者 . F:hello world
iuzi.sql (注意路径不用加引号的) 回车即可.Linux命令了解下,如下图:
8. LINUX下shell脚本如何执行 sql脚本 到DB2数据库
1、在gedit中编写.sh格式的文件,保存为a.sh。