首頁  >  文章  >  資料庫  >  如何修復 Ubuntu 16.04 中的「SQLSTATE[HY000] [1698] 使用者\'root\'@\'localhost\'\」存取被拒絕錯誤?

如何修復 Ubuntu 16.04 中的「SQLSTATE[HY000] [1698] 使用者\'root\'@\'localhost\'\」存取被拒絕錯誤?

Patricia Arquette
Patricia Arquette原創
2024-11-01 12:11:29896瀏覽

How to Fix

Ubuntu 16.04 中的「SQLSTATE[HY000] [1698] Access Denied for user 'root'@'localhost'」錯誤故障排除

簡介:

嘗試從PHP 或phpMyAdmin 存取MySQL 資料庫時,可能會遇到以下錯誤:

SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'

此錯誤表示嘗試連接資料庫的使用者缺少必要的權限

解決方案:

MySQL 5.7 中最近的一項變更阻止root 使用者在沒有提升權限的情況下連接到資料庫。要解決此問題,請按照以下步驟操作:

  1. 建立具有權限的新使用者:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost' WITH GRANT OPTION;
  1. 更新您的PHP 程式碼:

修改PHP 程式碼以使用新使用者憑證進行連線:

<code class="php">protected $name = 'newuser';
protected $pass = 'password';</code>
  1. 使用Sudo 連線:

如果您希望繼續使用root 用戶,您需要透過使用sudo 執行指令來提升權限:

<code class="sh">sudo mysql -u root</code>

其他注意事項:

    其他注意事項:
  • 其他注意事項:
其他注意事項: 確保新使用者擁有您打算執行的資料庫操作所需的權限。 如果您遇到任何其他問題,請查閱 MySQL 文件或尋求 MySQL 的支援社群。

以上是如何修復 Ubuntu 16.04 中的「SQLSTATE[HY000] [1698] 使用者\'root\'@\'localhost\'\」存取被拒絕錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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