首頁 >資料庫 >mysql教程 >為什麼我在 MySQL 5.7 收到「SQLSTATE[HY000] [1698] Access returned for user \'root\'@\'localhost\'\」錯誤?

為什麼我在 MySQL 5.7 收到「SQLSTATE[HY000] [1698] Access returned for user \'root\'@\'localhost\'\」錯誤?

Patricia Arquette
Patricia Arquette原創
2024-11-04 12:02:29198瀏覽

Why Am I Getting

「SQLSTATE[HY000] [1698] 使用者'root'@'localhost' 的存取被拒絕」:深入解釋

在這裡種情況下,您在嘗試透過PHP 和phpMyAdmin 以root權限存取資料庫時,遇到了令人沮喪的錯誤訊息「SQLSTATE[HY000] [1698] 使用者 'root'@'localhost' 存取被拒絕」。儘管創建了具有足夠權限的新用戶,但資料庫建立仍然不成功。

此錯誤是由 MySQL 5.7 中引入的安全增強功能引起的,該增強功能限制了 root 使用者在沒有提升權限的情況下 (sudo) 的使用。以前,您可以簡單地呼叫“mysql -u root”,但這種方法不再可行。相反,您必須使用“sudo mysql -u root”。

因此,在圖形使用者介面 (GUI) 或非命令列應用程式中使用 root 使用者將會失敗。若要避免此問題,請建立一個具有必要權限的新使用者並使用該使用者。

有關進一步說明,請參閱此回應中提供的解決方案:(此處)。

此解決方案透過防止在沒有更高權限的情況下直接使用 root 使用者來解決該問題,從而增強安全性。為了維護功能,請考慮建立一個具有適當資料庫存取權限的新使用者。

以上是為什麼我在 MySQL 5.7 收到「SQLSTATE[HY000] [1698] Access returned for user \'root\'@\'localhost\'\」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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