Skip to content
All writing Part 07 of 09 · 從筆電連上遠端資料庫
Engineering · 1 min read

MySQL CLI:遠端連線與參數

透過本地 proxy port 連上遠端 MySQL,以及參數表:-h host、-P port(大寫)、-p 密碼(要黏著、不能有空格)、-u user、-D database、-e execute。

透過一個本地 port(例如 Cloud SQL proxy 通道)連到遠端 MySQL:

mysql -h 127.0.0.1 -P 20001 -u "$USERNAME" -p"$PASSWORD" -D app_production \
  -e "SELECT a.asset_id FROM asset AS a WHERE uploaded_package_id = 100"
Flag長格式意思
-h--host要連的 host。127.0.0.1 = proxy 通道的本地端,不是直接連雲端 DB。
-P--portTCP port(預設 3306)。大寫 P,小寫 -p 是密碼。
-u--userMySQL 帳號。
-p--password密碼。-p 後面不能有空格-pSECRET);-p 單獨用會跳互動輸入。
-D--database預設 schema,這樣 asset 就能直接用,不用寫 app_production.asset
-e--execute非互動地跑這段 SQL、印結果、離開。
  • -p pass 中間有空格會被解讀成「跳出來問我密碼,然後把 pass 當成 database 名」——一定要黏著:-p"$PASSWORD"
  • 密碼直接寫在 CLI 上,會出現在 ps 裡、也會警告不安全;scripting 情境建議改用 --defaults-extra-file

這次的實例: 透過 127.0.0.1:20001 上的 cloud-sql-proxy 通道,查了 prod 的 app_production.assetuploaded_package_id = 100 的資料。

-P 是 port、-p 是密碼且要黏著——這兩個大小寫最容易踩,記住就不會把密碼寫成 database 名。


參考來源

Related: 回到遠端資料庫連線總覽;這些 flag 就是五個座標連線 URI被拆開的樣子。接著看內嵌 SQL 的四種餵法

Tags #mysql #databases #cli
// connect

Be brave | Be wise | Be grateful

21 BreakinCode

// elsewhere
LinkedInMedium (lang: en)Youtube
wh:~$William Hung· © 2026 Taipei · GMT+8 · Available for collaboration