mysql的grant用户权限总结

时间:2024-05-19 19:12:30

mysql的grant用户权限总结

1、USAGE:连接(登录)权限,建立一个用户,就会自动授予其usage权限(默认授予)。该权限只能用于数据库登录,不能执行任何操作,且该权限不能被回收,即使使用REVOKE也不能删除用户权限。

     grant usage on *.* to 'user'@'localhost' identified by 'user123';

2、SELECT:使用SELECT查看表内容的权限,拥有此权限才能执行SELECT查询。

     grant select on *.* to 'user'@'localhost';

3、CREATE:创建表的权限。

     grant create on *.* to 'user'@'localhost';

4、CREATE ROUTINE:创建、修改和删除procedure或function的权限,当授予create routine权限时,同时会自动授予EXECUTE,ALTER ROUTINE权限。

     grant create routine on *.* to 'user'@'localhost';

5、CREATE TEMPORARY TABLES:使用create temporary tables的权限。

     grant create temporary tables on *.* to 'user'@'localhost';

6、CREATE VIEW:创建视图的权限。

     grant create view on *.* to 'user'@'localhost';

7、CREATE USER:要使用create user,必须拥有mysql数据库的全局create user权限,或拥有insert权限。

     grant create user on *.* to 'user'@'localhost';   或者 grant insert on *.* to 'user'@'localhost';

8、INSERT:插入数据的权限。

     grant insert on *.* to 'user'@'localhost'; 

9、ALTER:修改表结构的权限。

     grant alter on *.* to 'user'@'localhost'; 

10、ALTER ROUTINE:修改、删除procedure或function的权限。

     grant alter routine on *.* to 'user'@'localhost'; 

11、UPDATE:修改数据的权限。

     grant update on *.* to 'user'@'localhost'; 

12、DELETE :删除数据的权限。

     grant delete on *.* to 'user'@'localhost'; 

13、DROP:删除数据库或表的权限。

     grant drop on *.* to 'user'@'localhost'; 

14、SHOW DATABASE:查看某个数据库的权限;该权限只能看到你拥有的某些权限的数据库,除非你拥有全局SHOW DATABASES权限。

     grant show database on *.* to 'user'@'localhost'; 

15、SHOW VIEW:执行show create view的权限。

     grant show view on *.* to 'user'@'localhost'; 

16、INDEX:创建、删除索引的权限。

     grant index on *.* to 'user'@'localhost'; 

17、EXCUTE:执行procedure或function的权限。

     grant excute on *.* to 'user'@'localhost'; 

18、LOCK TABLES:执行lock tables/unlock tables的权限。

     grant lock tables on *.* to 'user'@'localhost'; 

19、REFERENCES:将某一表中的字段作为另一表的外键约束的权限。

     grant references on *.* to 'user'@'localhost'; 

20、RELOAD:执行flush的权限。

     grant reload on *.* to 'user'@'localhost'; 

21、REPLICATION CLIENT:查询主服务器、从服务器状态的权限。

     grant replication client on *.* to 'user'@'localhost'; 

22、REPLICATION SLAVE:查看从服务器信息、查看二进制日志信息、从主服务器读取二进制日志的权限。

     grant replication slave on *.* to 'user'@'localhost'; 

23、SHUTDOWN:关闭mysql的权限。

     grant shutdown on *.* to 'user'@'localhost'; 

24、GRANT OPTION:将自己拥有的权限授给其他用户的权限。

     grant grant option on *.* to 'user'@'localhost'; 

25、FILE:将数据导出到文件或从文件导入数据库的权限,只能指定所有数据库。

     grant file on *.* to 'user'@'localhost'; 

26、SUPER:管理员权限,即:可以终止任何查询,使用修改全局变量的SET语句,使用CHANGE MASTER,PURGE MASTER LOGS等的权限,只能指定所有数据库。

     grant super on *.* to 'user'@'localhost'; 

27、PROCESS:执行SHOW PROCESSLIST和KILL命令的权限,只能指定所有数据库。默认情况下,每个用户都可以执行SHOW PROCESSLIST命令,但是只能查询本用户的进程。

     grant process on *.* to 'user'@'localhost'; 

 

转自:https://blog.****.net/wulantian/article/details/38230635