Ubuntu 上的 MySQL 遠端連線問題
無法與 MySQL 建立遠端連線可能是由於設定錯誤的組合造成的。以下是解決問題的詳細說明:
my.cnf 設定
對於MySQL 5.6 及以下版本,請確保「/etc/mysql/my.cnf」包含「bind-address」指令並將環回位址(「127.0.0.1」)替換為伺服器的IP位址:
# For MySQL version 5.6 and below bind-address = your_server_ip
對於MySQL 5.7 及以上版本,修改「/etc/mysql/mysql.conf.d/mysqld.cnf」指定綁定位址:
# For MySQL version 5.7 and above bind-address = your_server_ip
或者,設定“bind-address = 0.0.0.0”以偵聽所有IP位址。
使用者權限
要允許特定使用者遠端訪問,請在 MySQL 中的「localhost」和「%」中建立使用者:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
授予使用者必要的權限:
GRANT ALL ON *.* TO 'myuser'@'localhost'; GRANT ALL ON *.* TO 'myuser'@'%';
執行「同花順特權;」更新權限。
驗證網路存取
使用「lsof -i -P | grep :3306」檢查 MySQL 是否正在偵聽正確的 IP 位址並連接埠號碼 (3306)。這應該會傳回一個輸出,表示伺服器正在偵聽您的伺服器的 IP 位址。
故障排除
如果遠端連線仍然失敗,請檢查以下內容:
以上是為什麼我無法在 Ubuntu 上連接到遠端 MySQL 伺服器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!