MySQL权限有哪些权限,详见如下:
- ALL/ALL Privileges权限代表全局或者全数据库对象级别的所有权限
- Alter权限代表允许修改表结构的权限,但必须要求有create和insert权限配合。如果rename表明,则要求有alter和drop原表,create 和insert新表的权限。
- Alter routine权限代表允许修改或者删除存储过程、函数的权限
- create 权限代表允许创建新的数据库和表的权限
- create routine权限代表允许创建存储过程、函数的权限
- create tablespace权限代表允许创建、修改、删除表空间和日志组的权限
- create temporary tables权限代表允许创建临时表的权限
- create user权限代表允许创建、修改、删除、重命名user的权限
- create view权限代表允许创建视图的权限
- delete权限代表允许删除行数据的权限
- drop权限代表允许删除数据库、表、视图的权限,包括truncate tabled的命令
- event权限代表允许查询,创建,修改,删除MySQL事件
- execute权限代表允许执行存储过程和函数的权限
- file权限代表允许在MySQL可以访问的目录进行读写磁盘文件操作,可以使用的命令包括load data infile,select … into outfile,load file()函数
- grant option权限代表是否允许此用户授权或者回收给其他用户你给予的权限
- index权限代表是否允许创建和删除索引
- insert权限代表是否允许在表中插入数据,同时也执行analyze table,optimize table,repair table语句的时候也需要insert 权限
- lock权限代表允许对拥有select权限的表进行行锁定,以防其他链接对词表的读或写
- process权限代表允许查看mysql 中的进程信息,比如执行show processlist,mysqladmin processlist,show engine等命令
- reference权限是在5.7.6版本之后引入,代表是否允许创建外键
- reload权限代表允许执行flush命令,指明重新加载权限表到系统内存中,refresh命令代表关闭和重新打开日志文件并刷新所有表
- replication client权限代表允许执行show master status,show slave status,show binary logs 命令
- replication slave 权限代表允许slave主机通过此用户链接master以便建立主从复制关系
- select权限代表允许从表中查看的数据,某些不查询表数据的select执行则不需要此权限,如select 1+1,select PI() +2;而且select权限在执行update/delete语句中含where条件的情况下也是需要的
- show databases权限代表通过执行 show databases命令查看数据库名
- show view权限代表通过show create view命令查看视图创建的语句
- 2shutdown 权限代表允许关闭数据库实例,执行语句包括mysqladmin shutdown
- super权限代表允许执行一系列数据库管理命令,包括kill强制关闭某个链接命令,change master to 创建复制关系命令,以及create/alter/drop/ server等命令
- trigger权限代表允许创建、删除、执行、显示触发器权限
- update权限代表允许修改表中的数据权限
- usage权限是创建一个用户后的默认权限,其本身代表无权限
**系统权限表:**权限存储在MySQL库的user,db,tables_priv,columns_priv,procs_priv这几个系统表中,待MySQL实例启动后就加在到内存中:
- user表:存放用户账户信息以及全局级别(所有数据库)权限,决定了来自那些主机的哪些用户可以访问数据库实例,如果全局权限则意味着对所有数据库都有此权限;
- plugin,password,authentication_string三个字段存放用户认证信息
- password_expired设置成Y则表明允许DBA将此用户的密码设置成过期而且过期后要求用户的使用者重置密码(alter user/set password重置密码)
- password_last_changed作为一个时间戳字段代表密码上次修改时间,执行create user/alter user,set password/grant 等命令创建用户或者修改用户密码时此数值自动更新
- password_lifetime代表从password_last_changed时间开始此密码过期的天数
- account_locked代表此用户被锁住,无法使用
- db表:存放数据库级别的权限,决定了来自那些主机的那些用户可以访问此数据库
- tabls_priv表:存放表级别权限,决定了来自那些主机的哪些用户可以访问数据库的这个表
- columns_priv:存放列级别的权限,决定了来自哪些主机的哪些用户可以访问数据库表的这个字段
- procs_priv:cunfang 存放存储过程和函数级别的权限
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。