mysql取消使用者權限的方法:1、利用「REVOKE ALL ON *.*」取消全域權限;2、利用「REVOKE ALL ON 資料庫名稱.*」取消資料庫層級的權限;3、利用「 REVOKE ALL ON 資料庫名稱.表名」取消表格層級的權限。
本教學操作環境:windows10系統、mysql8.0.22版本、Dell G3電腦。
在MySQL 中,可以使用REVOKE 語句刪除某個使用者的某些權限
全域級,授予及撤銷全域權限
授權:GRANT ALL ON *.*
#撤銷授權:REVOKE ALL ON *.*
#資料庫級,授予及撤銷某個資料庫的權限
#授權:GRANT ALL ON 資料庫名稱.*
撤銷授權:REVOKE ALL ON 資料庫名稱.*
#表級,授予並撤銷某個資料庫中某張表的權限
授權:GRANT ALL ON 資料庫名稱.表名
#撤銷授權:REVOKE ALL ON 資料庫名稱.表名
#擴充知識:
在MySQL 中,可以使用REVOKE 語句刪除某個使用者的某些權限(此使用者不會被刪除),在一定程度上可以保證系統的安全性。例如,如果資料庫管理員覺得某個使用者不應該擁有 DELETE 權限,那麼就可以刪除 DELETE 權限。
使用REVOKE 語句刪除權限的語法格式有兩種形式,如下所示:
#1)第一種
刪除使用者某些特定的權限,語法格式如下:
REVOKE priv_type [(column_list)]... ON database.table FROM user [, user]...
REVOKE 語句中的參數與GRANT 語句的參數意思相同。其中:
priv_type 參數表示權限的型別;
column_list 參數表示權限作用於哪些欄位上,沒有該參數時作用於整個表上;
user 參數由使用者名稱和主機名稱構成,格式為「username'@'hostname'」。
2)第二個
刪除特定使用者的所有權限,語法格式如下:
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...
刪除使用者權限需要注意以下幾點:
REVOKE 語法和GRANT 語句的語法格式相似,但具有相反的效果。
要使用 REVOKE 語句,必須擁有 MySQL 資料庫的全域 CREATE USER 權限或 UPDATE 權限。
範例如下
使用 REVOKE 語句取消使用者 testUser 的插入權限,SQL 語句和執行程序如下。
mysql> REVOKE INSERT ON *.* -> FROM 'testUser'@'localhost'; Query OK, 0 rows affected (0.01 sec) mysql> SHOW GRANTS FOR 'testUser'@'localhost'; +-----------------------------------------------------------------+ | Grants for testUser@localhost | +-----------------------------------------------------------------+ | GRANT SELECT ON *.* TO 'testUser'@'localhost' WITH GRANT OPTION | +-----------------------------------------------------------------+ 1 row in set (0.00 sec)
結果顯示,刪除 testUser 使用者的 INSERT 權限成功。
推薦學習:mysql影片教學
#以上是mysql怎麼取消使用者權限的詳細內容。更多資訊請關注PHP中文網其他相關文章!