MySQL 埠口號碼檢查與設定變更方法|包含安全防護說明

1. MySQL的預設埠號說明

MySQL 是關聯式資料庫管理系統(RDBMS)之一,在支援 Web 應用程式與資料庫伺服器之間的通訊方面扮演重要角色。這項通訊的基礎是「埠號」,而 MySQL 預設使用 埠 3306。埠號是用來指定客戶端存取資料庫伺服器時的連接端點,也是區分其他應用程式或服務通訊路徑的指標。

MySQL 埠 3306 被使用的原因

埠號 3306 是 MySQL 伺服器安裝時的初始設定,除非有特別原因,通常不會更改。透過此埠,客戶端與 MySQL 伺服器得以進行資料的傳送與接收。由於 MySQL 在 TCP(Transmission Control Protocol)協定上運作,基於安全考量,建議明確設定埠號。

2. 埠號的確認方法

如果 MySQL 的埠號已被更改為非 3306,或想確認預設設定時,可使用以下指令輕鬆檢查。

使用 SHOW VARIABLES 指令確認的方法

登入 MySQL 後,執行以下指令即可確認目前使用中的埠號。
SHOW VARIABLES LIKE 'port';
執行此指令後,會顯示對應變數名稱「port」的數值,即可確認目前的埠號。

使用 status 指令確認的方法

另一種方法是使用 MySQL 的 status 指令來顯示目前的設定狀況。此指令會同時顯示資料庫的基本資訊與埠號,是方便的確認手段。具體步驟是,先登入 MySQL,然後輸入以下指令。
status;
使用此方法即可取得連線中資料庫的狀態資訊,且包含埠號。
</>

3. 變更埠號的步驟

如果要變更 MySQL 的預設埠號,請編輯 MySQL 的設定檔「my.cnf</>」或「my.ini」。此設定檔通常位於 MySQL 安裝目錄中。

設定檔的編方法

  1. 使用文字編輯器開啟 my.cnfmy.ini
  2. 找到 [mysqld] 區段,並照以下方式指定埠號。
   [mysqld]
   port = 3310
  1. 變設定後,重新啟動 MySQL 伺服器。
重新啟動後,MySQL 伺器會以新的埠號啟動。透過此步驟,可自訂埠號以避免與特定應用程式或服務發生埠衝突。

在命令列中指定埠號

若在客戶端連線時需要指定特定埠號,請如下指定埠號。</>
mysql -h localhost -P 3310 -u root -p
如此即可使用特定埠號連接 MySQL 伺服器。

4. 埠口變更時的注意事項

在更改 MySQL 的埠號時,注意以下要點是很重要的。

確認埠口衝突

在更改埠號時,需要確保不與其他應用程式或服務衝突。例如,在 Linux 系統中,可使用 netstatlsof 等指令來確認目前使用中的埠號。

考慮安全防護措施

將預設埠號更改後,可降低外部攻擊的風險。攻擊者通常會針對預設埠號發動攻擊,因而變更埠號可作為安全防護的一環。然而,僅更改埠號無法確保完整的安全性,建議同時考慮防火牆設定、IP 位址限制等額外措施。

5. 埠口變更與安全防護

將 MySQL 的埠號從預設的 3306 變更,可能會提升安全性。但作為安全防護措施,僅依賴埠號變更是不夠的,建議採用更嚴密的保護手段。

使用 SSH 隧道的遠端連線

若要從遠端安全地連接 MySQL 伺服器,建議使用 SSH 隧道。透過 SSH 隧道,可經由加密的通訊路徑,防止資料被竊聽或竄改。 例如,可依照以下步驟設定 SSH 隧道。
  1. 使用 SSH 客戶端連線至伺服器,並設定隧道。
  2. 在目標埠位指定 MySQL 的埠號,於本機與遠端之間建立加密通訊。

6. 總結

在本文中,我們說明了 MySQL 預設埠號的確認方法與變更方法。埠號是連接資料庫伺服器以及安全性相關的基本設定之一,了解設定的確認與適當的變更方法對於資料庫運維相當重要。未來在處理埠號衝突或安全風險時,請參考本文內容重新檢視設定。