在本教程中,您將學習如何使用MySQL中的REVOKE語句從MySQL帳戶中撤銷權限。
我們強烈建議您遵循以下教程,以更好地了解MySQL REVOKE語句的工作原理:
MySQL REVOKE語句簡介
要從用戶帳戶撤銷權限,您可以使用MySQL REVOKE語句。MySQL允許您從用戶撤銷一個或多個特權或所有權限。
以下說明從用戶撤銷指定權限的語法:
數據庫賦予權限語句、REVOKE privilege_type [(column_list)]
[, priv_type [(column_list)]]...
ON [object_type] privilege_level
FROM user [, user]...
我們來詳細看看MySQL REVOKE語句使用 -
首先,在REVOKE關鍵字之后指定要從用戶撤銷的權限列表,需要用逗號分隔權限。
哪個語句用于撤銷權限,其次,在ON子句中指定要撤銷權限的權限級別。
第三,在FROM子句中指定要撤銷的權限的用戶帳戶
請注意,要從用戶帳戶撤銷權限,您必須具有GRANT OPTION權限和要撤銷的權限。
要撤消用戶的所有權限,請使用以下REVOKE語句:
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user]…
要執行REVOKE ALL語句,必須具有全局CREATE USER權限或mysql數據庫的UPDATE權限。
oracle撤銷權限。要撤銷代理用戶,請使用REVOKE PROXY命令,如下所示:
REVOKE PROXY ON user FROM user [, user]...
代理用戶是MySQL中有效的用戶,可以模擬(假冒)另一個用戶,因此代理用戶擁有其模擬的用戶的所有權限。
在撤消用戶權限之前,最好通過使用SHOW GRANTS語句來檢查用戶擁有的權限的情況,如下所示:
SHOW GRANTS FOR user;
MySQL REVOKE示例
撤銷權限什么意思?假設rfc用戶對示例數據庫(yiibaidb)具有SELECT,UPDATE和DELETE權限。現在,如果要從rfc用戶撤銷UPDATE和DELETE權限,可以按如下方式執行:
首先,使用SHOW GRANTS語句檢查用戶的權限:
-- 查看用戶的當前權限
SHOW GRANTS FOR rfc;
-- 授予用戶權限
GRANT SELECT, UPDATE, DELETE ON `yiibaidb`.* TO 'rfc'@'%';
MySQL約束、執行上面查詢語句,得到以下結果 -
+-----------------------------------------------------------+
| Grants for rfc@% |
+-----------------------------------------------------------+
| GRANT USAGE ON *.* TO 'rfc'@'%' |
| GRANT SELECT, UPDATE, DELETE ON `yiibaidb`.* TO 'rfc'@'%' |
撤銷用戶指定權限的命令,+-----------------------------------------------------------+
請注意,確實按照授予用戶權限的教程文章學習并操作后,您可以創建rfc帳戶并向其授予SELECT,UPDATE和DELETE特權,如下所示:
-- 創建用戶
CREATE USER IF NOT EXISTS rfc IDENTIFIED BY 'newpasswd';
-- 授予用戶權限
GRANT SELECT, UPDATE, DELETE ON yiibaidb.* TO rfc;
存儲程序中選擇語句有哪些、其次,從rfc用戶撤銷UPDATE和DELETE權限,參考以下語句:
REVOKE UPDATE, DELETE ON yiibaidb.* FROM rfc;
第三,可以使用SHOW GRANTS命令再次查看rfc用戶的權限。
-- 查看用戶權限
SHOW GRANTS FOR 'rfc'@'%';
-- 授予用戶權限
sql無法訪問數據庫?GRANT SELECT ON `yiibaidb`.* TO 'rfc'@'%';
如果要撤銷rfc用戶的所有權限,請執行以下命令:
REVOKE ALL PRIVILEGES, GRANT OPTION FROM rfc;
如果再次查看rfc用戶的權限,您將看到rfc用戶已經沒有了權限。
-- 查看用戶權限
SHOW GRANTS FOR rfc;
請檢查訪問權限,GRANT USAGE ON *.* TO 'rfc'@'%';
請注意,使用USAGE權限意味著MySQL中沒有特權。
當MySQL REVOKE命令生效時
MySQL REVOKE語句的生效時間取決于權限級別,如下所示:
客戶端在后續會話中連接到MySQL時,對全局權限所做的更改才會生效。這些更改不適用于所有當前連接的用戶。
數據庫權限的更改將在下一個USE語句之后生效。
select語句至少包括、表和列權限的更改將在進行更改之后發出的所有查詢時生效。
在本教程中,您學習了如何使用MySQL REVOKE語句來撤銷MySQL用戶的權限。
¥ 我要打賞
糾錯/補充
收藏
加QQ群啦,易百教程官方技術學習群
sql 收回權限。注意:建議每個人選自己的技術方向加群,同一個QQ最多限加 3 個群。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态