授予權限時用戶「root」的存取被拒絕
在MySQLANT 中,嘗試使用「GRANT」向另一個用戶授予權限時' 命令,您可能會遇到令人困惑的“訪問被拒絕”錯誤,儘管您已使用正確的權限以特權“root”用戶身份登入密碼。這個奇怪的現像源自於嘗試將權限委託給 mysql.users 表,這是 MySQL 使用者管理的敏感面向。
錯誤原因
mysql.users表包含有關 MySQL 使用者的敏感訊息,包括雜湊密碼、權限和設定。為了確保資料庫的完整性和安全性,只有「root」使用者被授予存取該表的權限。這是一項安全措施,旨在防止對使用者帳戶和資料庫權限進行未經授權的修改。
正確的授予方法
要有效授予權限,請避免使用。 或可能包含 mysql.users 表的類似語法。相反,請使用以下語法來授予對特定表、資料庫或全域物件的權限:
GRANT [privileges] ON [database].[table] TO '[user]'@'[hostname]' IDENTIFIED BY '[password]';
此方法限制對特定物件的權限委派,不包括 mysql.users 表。
附加說明
為了安全起見,不鼓勵使用具有所有權限的「root」使用者由於某些原因,在某些情況下可能有必要。如果您選擇使用「root」用戶,請確保採取強有力的安全措施,例如強密碼、網路加密和定期資料庫審核。
以上是為什麼MySQL root用戶授予權限失敗,提示「存取被拒絕」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!