mysql的所有权限

mysql包含29个权限

usage

连接登陆权限,建立一个用户,就会自动授予其usage权限,该权限只能用于数据库的登陆,不能执行任何操作,且usage权限不能被回收,也即revoke用户并不能删除用户

file

file不给,有严重的安全隐患

super

super不给,有严重的安全隐患

select

查看表

insert

插入权限

update

修改表数据

delete

删除行权限

alter

修改表的结构

alter routine

更改或者删除存储函数或者存储过程,隐式包含drop的权限

create

创建表的权限

drop

删除库,表,索引,视图的前戏

create routine

创建存储函数或者存储过程的权限

create temporay tables

创建临时表

create view

创建视图

create user

创建用户

show database

查看拥有的数据库

index

必须拥有index权限,才能执行【create|drop index

show view

查看视图

excute

以用户执行存储过程的权限

event

表示拥有创建,修改,执行和删除事件(event)的权限。

lock tables

锁表的权限

references

用户可以将其他的一个字段作为某一个表的外键约束

reload

必须拥有reload权限,才能flush [tables|logs|privileges]

replication client

拥有此权限可以查询到master serverslave server状态

replication slave

拥有此权限可以查看从服务器,从主服务器读取二进制日志

shutdown

关闭mysql的权限

grant option

拥有grant option,就可以将自己拥有的权限授予给其他用户

process

查看所有用户线程/连接的权限

all privileges

所有权限

另外:

  • 管理权限也就是全局权限(如 super, process, file等)不能够指定某个数据库,on后面必须跟 *.*

  • 有人会问truncate权限呢,其实truncate权限就是create+drop,这点需要注意

原文地址:https://www.cnblogs.com/charon2/p/11328260.html