首頁 >資料庫 >mysql教程 >為什麼我從本機主機連線到 MySQL 時收到「權限被拒絕」?

為什麼我從本機主機連線到 MySQL 時收到「權限被拒絕」?

DDD
DDD原創
2024-11-02 16:54:29890瀏覽

Why Am I Getting

無法連接到MySQL:權限被拒絕

嘗試使用PHP 連接到MySQL 資料庫時,可能會出現錯誤,指示「權限被拒絕了。

具體來說,當嘗試使用以下腳本從本地主機連接到資料庫時:

<code class="php">$host = '155.30.136.20';
$user = 'abc_user';
$pass = 'xxxxxxxxx';
$dbname = 'welcome';
$link = mysqli_connect($host, $user, $pass,$dbname);

// Connection checks and error handling omitted for brevity</code>

可能會出現錯誤「錯誤:無法連接到MySQL。 :權限被拒絕」。此錯誤表示使用者沒有建立與資料庫的連線所需的權限。

命令列和本機執行之間存在差異的原因可能與 SELinux 安全性策略有關。預設情況下,政策 httpd_can_network_connect_db 處於停用狀態,從而阻止 Web 伺服器連線到遠端資料庫。

要解決此問題,請按照以下步驟操作:

  1. 透過執行 getsebool 檢查 SELinux 狀態-a | grep httpd。
  2. 如果 httpd_can_network_connect_db 為“關閉”,請透過執行setsebool -P httpd_can_network_connect_db 1啟用它。

進行這些變更後,網頁伺服器應該能夠建立到資料庫不會遇到「權限被拒絕」錯誤。

以上是為什麼我從本機主機連線到 MySQL 時收到「權限被拒絕」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn