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

MySQL 開啟遠程連線權限配置完整步驟

     編輯:MySQL 資料庫相關知識

預設限制

MySQL 安裝後僅允許 localhost 本地連線,遠程訪問需手動授權。

操作步驟

  1. 登入 MySQL 控制台:
    mysql -u root -p mysql
    第一個 mysql 為客戶端程式,第二個為系統資料庫名。
  2. 授權 root 遠程登入(全權限、任意主機):
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'YourStrongPassword' WITH GRANT OPTION;
  3. 參數解析:
    • 'root'@'%':用戶 root,% 通配任意 IP/主機名。生產環境建議改為具體 IP(如 'root'@'192.168.1.%')或建立專用遠程帳號。
    • IDENTIFIED BY:設定該帳號密碼。
    • WITH GRANT OPTION:允許該帳號再授權他人。
  4. 刷新權限生效:
    FLUSH PRIVILEGES;
  5. 驗證授權結果:
    SELECT Host, User FROM mysql.user;
    應看到 root | % 記錄。

安全加固建議

  • 最小權限原則: 僅授權必要資料庫/表、必要操作(SELECT, INSERT 等),避免 ALL PRIVILEGES。
  • 限制來源 IP: 將 % 替換為具體應用伺服器 IP 段。
  • 強密碼策略: 12+ 位混合大小寫數字符號,定期輪換。
  • 網路層防護: 防火牆/安全組僅放行應用伺服器 IP 訪問 3306 埠。
  • 啟用 SSL: 配置 REQUIRE SSL 加密傳輸。

常見問題

授權後仍無法連線?
檢查 my.cnf 是否有 bind-address = 127.0.0.1,改為 0.0.0.0 或註釋掉並重啟服務。
報錯 Host 'x.x.x.x' is not allowed to connect?
確認 user 表中 Host 欄位匹配,注意 MySQL 會對客戶端 IP 做反向 DNS 解析,若解析慢可在 my.cnf 加 skip-name-resolve。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved