Linux系统命令行执行MySQL脚本
生活随笔
收集整理的這篇文章主要介紹了
Linux系统命令行执行MySQL脚本
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
利用Linux系統腳本執行MySQL的sql腳本方法有很多,這里抽取兩種已經驗證過的方法(驗證環境:麒麟3.3+,centos7,MySQL 8)舉例。
第一種:利用管道符調用SQL文件:
腳本(假設賬號為:root,密碼為:123456,SQL文件絕對路徑名稱為:/home/test.sql):
mysql -uroot -p123456 < /home/test.sqlsql文件的類容:
若需要操作名稱為“testDB”的庫,查詢名稱為“text”的表的所有數據: use testDB; select * from text; exit; 以上sql語句第一句的意思為:操作名稱為“testDB”的庫,第二句的意思為:查詢名稱為“text”的表的所有數據,第三句的意思為:退出SQL操作。第二種:利用shell腳本中MySQL提示符調用SQL:
利用Mysql的提示符,可以將需要執行的sql語句及shell腳本寫到.sh文件中,然后執行.sh文件即可執行相關的shell腳本及SQL語句,(假設要執行的腳本名稱為run.sh,賬號為:root,密碼為:123456)相關寫法如下:
#!/bin/bash mysql -uroot -p123456 <<EOF use testDB; select * from text; EOF exit;以上sql語句的意思為:登入數據庫,操作名稱為“testDB”的庫,查詢名稱為“text”的表的所有數據,退出SQL操作。
推薦采用第一種方法,執行完sql后,可以檢測shell的錯誤輸出以判斷是否執行完畢。除了常規SQL語句外,腳本或文件中還可以創建存儲過程,以編寫一些較為復雜的SQL邏輯,但除了超級復雜的聯表查詢以外,不建議在數據庫中保存太多的存儲過程,盡量把業務邏輯移到代碼層中,以減輕數據庫壓力。
可以參考以下鏈接學習SQL存儲過程的用法:
https://www.cnblogs.com/geaozhang/p/6797357.html
總結
以上是生活随笔為你收集整理的Linux系统命令行执行MySQL脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python从数组中随机选择一些元素_n
- 下一篇: Redis min-slaves-to-