MySQL入门篇-MySQL用户及权限小结

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

备注:测试数据库版本为MySQL 8.0

这个blog我们来聊聊MySQL用户及权限

MySQL用户和权限介绍

MySQL权限系统通过下面两个阶段进行认证:
1.对连接的用户进行身份认证合法的用户通过验证不合法的用户拒绝连接
查看mysql.user表的Host、User、
备注:MySQL 进行身份认证的时候IP地址和用户名联合进行确认所以root@localhost 和root@ip 会被MySQL视为不同的用户。
2.对通过认证的合法用户赋予相应的权限用户可以在这些权限范围内对数据库做相应的操作。
权限相关表:
user(全局级别权限)
db(数据库级别权限)
tables_priv(表级别权限)
columns_priv(列级别的权限)
procs_priv (存储过程和函数的权限)

按照userdbtables_privcolumns_priv的顺序进行验证。
即先检查全局权限表user如果user中对应的权限为Y则此用户对所有数据库的权限都为Y将不再检查db, tables_priv,columns_priv
如果为N则到db表中检查此用户对应的具体数据库并得到db中为Y的权限如果db中为N则检查tables_priv中此数据库对应的具体表取得表中的权限Y以此类推。

MySQL权限

MySQL都有哪些权限

权限名对应授权表的列用途
All/All Privilegesall privileges权限代表全局或者全数据库对象级别的所有权限
AlterAlter_priv允许许修改表结构的权限但必须要求有create和insert权限配合。如果是rename表名则要求有alter和drop原表 create和insert新表的权限
Alter routineAlter_routine_priv允许修改或者删除存储过程、函数的权限
CreateCreate_priv允许创建新的数据库和表的权限
Create ROLECreate_role_priv允许创建角色
Create routineCreate_routine_priv允许创建存储过程、函数的权限
Create tablespaceCreate_tablespace_priv允许创建、修改、删除表空间和日志组的权限
Create temporary tablesCreate_tmp_table_priv允许创建临时表的权限
Create userCreate_user_priv允许创建、修改、删除、重命名user的权限
Create viewCreate_view_priv允许创建视图的权限
DeleteDelete_priv允许删除行数据的权限
DropDrop_priv允许删除数据库、表、视图的权限包括truncate table命令
Drop roleDrop_role_priv允许删除角色
EventEvent_priv允许查询创建修改删除MySQL事件
ExecuteExecute_priv代表允许执行存储过程和函数的权限
FileFile_priv允许在MySQL可以访问的目录进行读写磁盘文件操作可使用的命令包括load data infile,select … into outfile,load file()函数
Grant optionGrant_priv允许此用户授权或者收回给其他用户你给予的权限,重新付给管理员的时候需要加上这个权限
IndexIndex_priv允许创建和删除索引
InsertInsert_priv是否允许在表里插入数据同时在执行analyze table,optimize table,repair table语句的时候也需要insert权限
Lock TABLESLock_tables_priv允许对拥有select权限的表进行锁定以防止其他链接对此表的读或写
ProcessProcess_priv允许查看MySQL中的进程信息比如执行show processlist, mysqladmin processlist, show engine等命令
PROXYSee proxies_priv table想让某个用户具有给他人赋予权限的能力那么就需要proxy权限了远程用户也可以
ReferenceReferences_priv允许创建外键
ReloadReload_priv允许执行flush命令
Replication clientRepl_client_priv允许执行show master status,show slave status,show binary logs命令
Replication slaveRepl_slave_priv允许slave主机通过此用户连接master以便建立主从复制关系
SelectSelect_priv允许从表中查看数据update、delete语句有where条件的也需要select权限
Show databasesShow_db_priv通过执行show databases命令查看所有的数据库名
Show viewShow_view_priv过执行show create view命令查看视图创建的语句
ShutdownShutdown_priv允许关闭数据库实例执行语句包括mysqladmin shutdown
SuperSuper_priv允许执行一系列数据库管理命令
TriggerTrigger_priv允许创建删除执行显示触发器的权限
UpdateUpdate_priv允许修改表中的数据的权限
Usage“no privileges”的同义词创建一个用户之后的默认权限其本身代表连接登录权限

MySQl权限表数据字典

user表&&db表 

表名userdb
范围列HostHost
UserUser
DB
权限相关列Select_privSelect_priv
Insert_privInsert_priv

 参考

MySQL用户及权限小结_只是甲的博客-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: mysql