解決PHP 函數中的「連線失敗:使用者'root'@'localhost' 存取被拒絕(使用密碼:YES)」錯誤
使用PHP連線MySQL資料庫時,使用者可能會遇到「連線失敗:使用者'root'@'localhost'存取被拒絕(使用密碼:YES)」 錯誤。儘管正確設定密碼並從命令列存取資料庫,仍然可能出現此問題。
解決方案
要解決此問題,可以採取以下步驟:
-
以root 身分登入用戶:
- 使用mysql -u root -p -h localhost 以 root 使用者登入 MySQL。
-
建立新使用者:
- 建立一個有限的新使用者特權。例如: CREATE USER 'francesco'@'localhost' IDENTIFIED BY 'some_pass';
-
創建數據庫:
- 為使用者建立資料庫。例如:CREATE DATABASE shop;
-
授予權限:
- 授予新使用者資料庫權限。例如:授予商店所有權限。 * TO 'francesco'@'localhost';
使用腳本重建資料庫,例如source shop.sql.-
在 PHP 函數中,使用新的使用者憑證進行連接到資料庫。範例: $conn = new mysqli("localhost", "francesco", "some_pass", "shop");
依照下列步驟,即可連接到MySQL PHP函數中的資料庫應該可以解決存取被拒絕的問題。
以上是為什麼我的 PHP 程式碼在連接 MySQL 時會出現「存取被拒絕」的情況,即使 root 使用者可以運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!