首頁 > 資料庫 > mysql教程 > 儘管'bind-address = 0.0.0.0”,為什麼我無法從遠端主機連接到我的 MySQL 伺服器?

儘管'bind-address = 0.0.0.0”,為什麼我無法從遠端主機連接到我的 MySQL 伺服器?

Patricia Arquette
發布: 2024-12-17 08:06:25
原創
751 人瀏覽過

Why Can't I Connect to My MySQL Server from a Remote Host Despite `bind-address = 0.0.0.0`?

Mysql 連線錯誤:HOST '' 無法連線到 MySQL 伺服器

當嘗試使用 mysql 指令連線到 MySQL伺服器時,收到以下錯誤訊息:

ERROR 1130 (HY000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
登入後複製

此錯誤表示伺服器已配置為僅允許某些主機連接,而你的主機不在允許清單中。

檢查root 使用者權限

在你的情況下,你已在my.cnf 中將bind-address 設定為0.0.0.0,這表示伺服器應接受來自所有主機的連線。但是,你仍然無法連線。這可能是因為 root 使用者只被授權從 localhost 連線。

要檢查這一點,執行以下查詢:

SELECT host FROM mysql.user WHERE User = 'root';
登入後複製

如果結果中不包含你嘗試連線時使用的主機名稱或IP 位址,則需要向root 使用者授予從該主機連線的權限。

授予連線權限

要授予root 使用者從特定主機連線的權限,請使用下列指令:

CREATE USER 'root'@'host_ip' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'host_ip';
登入後複製

其中,host_ip 是你想要允許連線的主機的IP 位址。

如果想為所有主機授予連接權限,可以使用通配符%:

CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
登入後複製

最後,刷新權限以立即生效:

FLUSH PRIVILEGES;
登入後複製

現在,你應該能夠使用mysql 指令從指定的遠端主機連線到MySQL 伺服器。

以上是儘管'bind-address = 0.0.0.0”,為什麼我無法從遠端主機連接到我的 MySQL 伺服器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板