首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Ubuntu 解除 MySQL 本機綁定限制:允許遠端連線

     編輯:MySQL 綜合教學

Ubuntu 官方 MySQL 套件預設 bind-address = 127.0.0.1,僅允許本機回環連線。遠端連線需修改配置並重啟服務。

修改步驟

  1. 編輯配置檔:
    nano /etc/mysql/my.cnf (Ubuntu 20.04+ 可能在 /etc/mysql/mysql.conf.d/mysqld.cnf)
  2. 找到 [mysqld] 區段下的:
    bind-address = 127.0.0.1
  3. 註解或修改為:
    #bind-address = 127.0.0.1
    或
    bind-address = 0.0.0.0 # 監聽所有介面
  4. 儲存離開:Ctrl+O → Enter → Ctrl+X
  5. 重啟服務:
    systemctl restart mysql

驗證生效

# 查看監聽埠
ss -ntlp | grep 3306
# 應顯示 0.0.0.0:3306 或 :::3306

# 遠端測試連線
mysql -h  -u remote_user -p

配套授權(必須)

mysql> CREATE USER 'remote_user'@'%' IDENTIFIED BY 'strong_password';
mysql> GRANT ALL PRIVILEGES ON target_db.* TO 'remote_user'@'%';
mysql> FLUSH PRIVILEGES;

防火牆放行

# UFW
ufw allow 3306/tcp
ufw reload

# iptables
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

安全強化建議

  • 生產環境避免 bind-address = 0.0.0.0 + 'user'@'%' 組合。
  • 改用 bind-address = <私有網段IP> 僅監聽內網介面。
  • 配合 REQUIRE SSL 強制加密傳輸。
  • 啟用 skip-name-resolve 避免 DNS 反解延遲。
  • 雲主機務必在安全組/防火牆層面限制來源 IP。

修改 bind-address 是啟用遠端連線的前置條件,但完整的安全體系需「網路層+資料庫層+應用層」多層防護。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved