linux下mysql怎麼刪除使用者許可權?

2020-10-13 18:00:52

linux下mysql中可以使用REVOKE語句來刪除某個使用者的許可權(此使用者不會被刪除),語法格式「REVOKE ALL PRIVILEGES, GRANT OPTION FROM user」,可以刪除使用者的所有許可權。

(推薦教學:)

在 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 許可權成功。

以上就是linux下mysql怎麼刪除使用者許可權?的詳細內容,更多請關注TW511.COM其它相關文章!