MySQL:解決「使用者拒絕存取」錯誤
在建立新的MySQL 使用者並為其授予權限時,您可能會遇遇到以下錯誤「使用者存取被拒絕」。當使用者沒有適當的權限或嘗試從未經授權的位置連接到資料庫時,就會出現此問題。
要解決此錯誤,請先驗證 grant 語句。確保您提供正確的用戶名,並且授予用戶需要存取的特定資料庫和表的權限。例如,您可以僅授予特定表或架構所需的權限,而不是使用“GRANT ALL ON .”,例如:
GRANT SELECT, INSERT, UPDATE, DELETE ON servname_shbusers.* TO 'servname_shb'@'localhost';
此外,請確保用戶正在嘗試從允許的主機連接到資料庫。預設情況下,MySQL 限制使用者存取本機。如果使用者嘗試從不同的主機名稱或IP 位址進行連接,您需要明確授予他們該主機的權限,如下所示:
GRANT ALL ON *.* TO 'servname_shb'@'remote-host';
修正授予語句並驗證連接後主機,請記得使用命令刷新權限:
FLUSH PRIVILEGES;
這可以確保新權限立即生效。
如果錯誤仍然存在,請檢查使用者的密碼是否已過期。您可以使用以下語句重設密碼:
ALTER USER 'servname_shb'@'localhost' IDENTIFIED BY 'new_password';
請記住,在處理 MySQL 權限時,僅授予必要的權限以限制潛在的安全風險至關重要。
以上是為什麼我在 MySQL 中收到「使用者存取被拒絕」的訊息?的詳細內容。更多資訊請關注PHP中文網其他相關文章!