[英]Grant privileges to user in MySQL
從我網站的控制面板中,我創建了一個新的 MySQL(5) 數據庫Test
和一個密碼為123
的新用戶admin
。 我嘗試使用以下方法為用戶admin
分配權限:
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost'
或者
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'Test'
我不斷收到以下錯誤:
#1045 - 用戶 'admin'@'%' 的訪問被拒絕(使用密碼:YES)
我需要用戶admin
的以下權限:
創建、更改、刪除、插入、SELECT、更新、鎖定表
如何在來自 phpMyAdmin 的查詢中做到這一點?
我猜您正在嘗試更改以該用戶身份登錄的'admin'@''%'
特權。 這很奇怪。
您可以顯示正在使用哪個用戶登錄
SELECT USER();
然后檢查該帳戶已具有的贈款:
SHOW GRANTS FOR 'admin'@''%';
我們得出的結論是
GRANT ALL PRIVILEGES ON `Test`.* TO 'admin'@'%'
也就是說,您已經對數據庫Test
所有表擁有所有特權。 但是,您無法進一步將這些特權授予其他用戶(否則將具有WITH GRANT OPTION
)。
在安裝MySQL的過程中,始終創建root
用戶。 使用它向其他帳戶授予特權。
手冊中的更多信息:
以 root 用戶身份登錄,然后將所有權限授予 admin 用戶。
授予所有test
權限。* TO 'admin'@'localhost';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.