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

MySQL 遠程連接報錯 1405/2003 完整排查流程

     編輯:MySQL 綜合教學

錯誤現象

  • 2003:Can't connect to MySQL server on 'host' (10060/110) — 網絡不通或端口被阻擋。
  • 1405:Access denied for user — 賬戶權限或密碼錯誤。

排查清單

  1. 防火牆/安全組:確保遠程服務器開放 3306 端口(或自定義端口)。
    iptables -A INPUT -p tcp --dport 3306 -j ACCEPT 或雲控制台配置安全組。
  2. MySQL 綁定地址:編輯 /etc/my.cnf,註釋或修改 bind-address = 127.0.0.1 為 0.0.0.0,重啟服務。
  3. 授權遠程賬戶:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

建議創建專用業務賬戶,避免使用 root 遠程登錄。

  1. 驗證連接:
mysql -h remote_ip -u user -p
# 或使用 Navicat、DataGrip 等 GUI 工具測試

常見誤區

  • 只開放防火牆,未改 bind-address。
  • 授權用戶為 'user'@'localhost' 而非 'user'@'%'。
  • 密碼含特殊字符未轉義(命令行建議交互式輸入)。
  • SELinux/AppArmor 阻擋 mysqld 監聽非本地地址。

總結

依次檢查:網絡通達性 → MySQL 監聽地址 → 賬戶授權 → 密碼正確性。多數 2003 為網絡/防火牆問題,1405 為權限/密碼問題。

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