[英]Is there a query to know if a particular privilege has been granted for a mysql user?
我知道SHOW GRANTS
可用於查找特定用戶的所有權限,但如果我只想知道當前用戶是否擁有RELOAD
權限呢? 是否有一個查詢,它只會返回真/假? 還是從SHOW GRANTS FOR CURRENT USER
解析字符串結果是唯一的方法?
測試
SELECT Reload_priv
FROM mysql.user
WHERE user = SUBSTRING_INDEX(USER(), '@', 1) COLLATE utf8_general_ci
AND host = SUBSTRING_INDEX(USER(), '@', -1) COLLATE utf8_general_ci;
僅當mysql.user
中的用戶指定了明確的主機(即不使用任何模式/掩碼)時才有效。 即,如果用戶foo
使用mysql.user
中的foo@%
值驗證為foo@localhost
,則將找不到任何行。
如果需要,調整排序規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.