shellsql
-h 是遠程連接訪問mysql 127.0.0.1 是本機ip
寫入shell可以這樣 :
mysql -u你的用戶名 -p密碼 <<END
mysql命令.....
exit;
END
/home/zyxf/BinaryConverter/BinaryConverter -af -h127.0.0.1 -uroot -w123456 -d${db}
不清楚是什麼 看錶面意思像是將資料庫轉換成二進制保存的意思。 -af 這些應該是BinaryConverter 這個命令的參數你可以嘗試man BinaryConverter來查看他。
② 如何在mysql shell命令中執行sql命令行
本文介紹 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 下。
③ shell腳本sql語句怎麼攜帶變數
#!/bin/ksh
date='20140101'
tablename="smssvclog_${date}_1_s"
sqlplus$ACCOUNT/$PASSWORD@$ORACLE_LOG<<EOF
selectcount(*)from${tablename};
exit;
EOF
④ shell參數傳遞SQL腳本
你可以這么寫,把目錄下file_1,file_2,file_3 文件名保存在一個文本文件里,
這個文件叫file.txt,格式一行一個文件名。比如腳本叫test.sh
使用:./test.sh file.txt
這樣就循環讀取文本中每行的文件名並代入到變數filename
或者你也可以通過files=($(ls -l | grep ^- | awk '{print $8}'))
截取一個files數組然後,for filename in ${files[*]} 往for循環里套。
#!/bin/bash
while read filename
do
sqlplus -S g471725/g471725 <<EOF
define v_input_file=$filename
@sql.sql
exit
EOF
done < $1
⑤ shell腳本中怎麼寫sql語句
mysql -uroot -pxxx dbname -e "select xxx from xxx;"
⑥ shell腳本執行.sql文件
<script type="text/javascript">
Leaf leaf = new Leaf("Leaf D");
root.Add(leaf);
root.Remove(leaf);
root.Display(1);
Console.Read();
}
⑦ 如何在shell中運行sql語句
直接在shell運行mysql -uxxx -pxxx db -e "select * from xxx;"
⑧ 在shell腳本中使用 isql 執行SQL語句 查詢sybase資料庫中滿足條件的記錄條數,怎麼把查詢結果賦給變數
注意此處:
isql -U natuser -P zjtt@nat -S natdb <<END
如下供參考
·1 若要重定向到文件
isql -U natuser -P zjtt@nat -S natdb <<END >out.txt
即將查詢結果重定向到out.txt文件中
·2若要輸出至變數
isql -U natuser -P zjtt@nat -S natdb <<END |read xarg
·3若要循環輸出至變數,可參照read方式類推
⑨ 如何把shell腳本的變數賦值給sql語句作為條件或插入數據的值
variable=xxx
sqlplus-sdbuser/dbpas<<!
select*fromtablewheretable_column=$variable;
exit;
!