首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 修改預設埠號 3306 圖文教程 (Windows)

     編輯:MySQL 資料庫相關知識

安全合規、多實例部署、避開掃描攻擊等場景需修改 MySQL 預設埠 3306。Windows 下僅需修改配置檔並重啟服務,本文提供圖文步驟。

操作步驟

  1. 停止 MySQL 服務
    開啟「服務」 (services.msc),找到 MySQL (或 MySQL57/MySQL80),右鍵「停止」。
    停止 MySQL 服務

    圖 1:停止 MySQL 服務

  2. 編輯 my.ini 修改埠號
    找到安裝目錄下的 my.ini (典型路徑:C:\Program Files\MySQL\MySQL Server 5.6\my.ini 或 C:\ProgramData\MySQL\MySQL Server 5.6\my.ini)。
    搜尋 port=3306,修改為目標埠 (如 3307、4306)。
    修改 my.ini 埠號

    圖 2:修改 my.ini 埠號

    [mysqld]
    port = 3307  # 修改此處
    # 其他設定...
  3. 重啟 MySQL 服務
    在「服務」中右鍵 MySQL 選擇「啟動」,或命令列:net start mysql。
    驗證:mysql -h 127.0.0.1 -P 3307 -u root -p。

多實例部署補充

同一主機跑多個 MySQL 實例,需分別修改:

  • port (如 3306、3307、3308)
  • socket (如 mysql_3306.sock、mysql_3307.sock)
  • datadir (獨立資料目錄)
  • log-error、pid-file、slow_query_log_file 等日誌路徑
  • 使用 mysqld_multi 或 systemd 多服務單元管理。

防火牆與安全組同步放行

# Windows 防火牆
netsh advfirewall firewall add rule name="MySQL 3307" dir=in action=allow protocol=TCP localport=3307

# 雲廠商安全組 (阿里云/騰訊云/AWS)
# 入站規則:TCP 3307 來源 0.0.0.0/0 (或限定應用伺服器 CIDR)

客戶端連線指定埠

客戶端指定埠方式
mysql 命令列mysql -h 127.0.0.1 -P 3307 -u root -p
MySQL WorkbenchConnection 設定 → Port 欄位填 3307
JDBC URLjdbc:mysql://127.0.0.1:3307/db?useSSL=false
Python PyMySQLpymysql.connect(host='127.0.0.1', port=3307, ...)
PHP PDOnew PDO('mysql:host=127.0.0.1;port=3307;dbname=db', ...)

常見問題

  • 修改後無法連線:確認服務已重啟、防火牆放行、客戶端指定 -P (大寫 P)。
  • 啟動失敗:查看 error.log,常見埠衝突 (netstat -ano | findstr 3307)、權限不足、配置檔語法錯誤。
  • 從庫複寫中斷:主庫改埠後,從庫需執行 CHANGE MASTER TO MASTER_PORT=3307; 並 START SLAVE;。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved