shell腳本實現連接mysql數據庫,並將結果輸出到文本文件中


本文分享下自己在學習shell過程中如何連接數據庫的腳本,本人使用的是MySQL5.7,在連接過程中遇到了一個麻煩,總是報錯:Using a password on the command line interface can be insecure.大致意思就是:在命令行界面上使用密碼可能不安全。后來在網上查了下大多數解決情況就是更改mysql配置文件my.conf或者將錯誤信息重定向到/dev/null中,但是以上兩種方法感覺都比較麻煩,后來在這個博客:https://blog.csdn.net/w1213096890/article/details/79486754中看到一種用的是更改環境變量的方法,這種方法感覺比較方便,在這里便使用這種方法export MYSQL_PWD=“password”,這樣在連接數據庫的時候就不用再輸入密碼了。以下是個人腳本,如果有錯誤的大家歡迎大家指正。

#!/bin/bash
# 連接mysql數據庫,並查詢結果,將結果輸出到文件中
# 1.定義連接變量
mysql_u="root"
mysql_p="******"
save_f="mysql.txt"
save_p="/home/path/study/linuxCommond/shell/"
mysql_sq="select * from shell_one"
export MYSQL_PWD=${mysql_p}
echo "開始鏈接數據庫..."
# 2.連接數據庫
result=`mysql -u$mysql_u << EOF
use linux;
$mysql_sq;
quit
EOF`
# 判斷是否連接成功
if [ $? = 0 ] 
then
 echo "連接成功。。。"
else
 echo "連接失敗。。。"
 exit
fi
echo "寫入查詢結果..."
# 將結果寫入文本
echo "$result" >> $save_p$save_f
echo "寫入完成..."

  測試結果:

開始鏈接數據庫...
連接成功。。。
寫入查詢結果...
寫入完成...

  以下是輸入到文本中得內容:

sid	sname	sage	sgender	sclass
1	張三	23	1	一班
2	李四	24	1	二班
3	王五	25	1	三班
4	趙六	26	1	一班
5	藍寶	20	0	一班
6	趙熒	22	0	二班

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM