萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

MySQL 客戶端 10 大啟動參數:壓縮、除錯、分頁、XML 輸出與安全更新模式

啟動參數速查表

參數短參數功能適用場景
--compress-C壓縮客戶端-伺服器傳輸封包跨機房/低頻寬/高延遲網路環境
--debug[=options]-#輸出除錯追蹤到檔案開發除錯、回報 Bug 提供追蹤
--force-f遇錯誤繼續執行後續 SQL自動化部署腳本、大量匯入容忍部分失敗
--pager[=cmd]-P指定分頁器 (less/more/cat)結果集過大需翻頁檢視
--xml-X查詢結果輸出 XML 格式程式解析、異系統整合、API 測試
--one-database-o僅執行指定資料庫的 SQL,忽略其它從全庫備份中單庫恢復、防 SQL 注入誤執行
--tee=file-T將互動輸出同時寫入檔案 (log)操作審計、離線分析、教學紀錄
--wait-w連線失敗重試 (預設 60 秒間隔)等待 Master 啟動、網路抖動自動重連
--safe-updates-U拒絕無 WHERE/LIMIT 的 UPDATE/DELETE防手滑刪全表、新手保護模式
--prompt=format自訂提示符 (支援 \d \u \h \t 等)多環境切換快速識別、顯示當前資料庫/時間

實戰組合範例

生產環境只讀查詢 (安全第一)

mysql --host=prod-read --user=ro_user --password --safe-updates --prompt="PROD [\d]> "

跨國遠程管理 (壓縮+重試+記錄)

mysql -h us-east.db -u admin -p --compress --wait --tee=/var/log/mysql_ops_$(date +%F).log

自動化腳本嵌入 (XML 輸出+強制繼續)

mysql --xml --force -e "SOURCE /sql/batch.sql" > result.xml 2>&1

互動式大結果集瀏覽

mysql --pager="less -S" -e "SELECT * FROM huge_table;"
# -S 截斷長行不換行,左右鍵捲動

提示符格式代碼速查

代碼意義範例輸出
\d當前資料庫mydb
\u用戶名root
\h主機localhost
\p埠號3306
\t時間 (24h)14:35:22
\v伺服器版本8.0.33
\_空格

範例:--prompt="\u@\h:\d [\t]> " → root@localhost:mydb [14:35:22]>

配置檔永久生效

編輯 ~/.my.cnf (Linux) 或 my.ini (Windows) [mysql] 區段:

[mysql]
safe-updates
pager = less -S
prompt = "\\u@\\h:[\\d] \\t> "
compress
copyright © 萬盛學電腦網 all rights reserved