-
MYSQL 8.0之授权表
授权表
mysql
系统数据库中包含了几个授权表,这些表包含有关用户帐户及其所拥有特权的信息。
注意
坚决禁止使用INSERT
,UPDATE
,DELETE
语句直接修改这些表,这会有极大地风险,推荐使用CREATE USER
,GRANT
,REVOKE
语句操作权限。
授权表预览
以下授权表全部位于mysql
数据库中
-
user
: 用户帐户,静态全局特权和其他非特权字段。 -
global_grants
: 动态全局特权。 -
db
: 数据库级特权。 -
tables_priv
: 表级特权。 -
columns_priv
: 字段级特权。 -
procs_priv
: 存储过程和函数特权。 -
proxies_priv
: 代理用户权限。 -
default_roles
: 默认用户角色。 -
role_edges
: Edges for role subgraphs. -
password_history
: 密码更改历史记录。
在MySQL 8.0中,授权表使用InnoDB
存储引擎并且是事务性的。在MySQL 8.0之前,授权表使用MyISAM
存储引擎,并且是非事务性的。授予表存储引擎的这一更改使帐户管理语句(例如CREATE USER或GRANT)的行为也可以随之更改。以前,命名多个用户的帐户管理语句可能对某些用户成功而对其他用户失败。现在,每个语句都是事务性的,并且对于所有指定的用户都成功,或者回滚,如果发生任何错误,则无效。
每个授权表都包含作用域列和特权列:
- 范围列确定表中每一行的范围;也就是说,该行适用的上下文。例如,具有“主机”和“用户”值分别为“ h1.example.net”和“ bob”的用户表行适用于验证指定了bob用户名的客户端从主机h1.example.net与服务器建立的连接。同样,当bob从主机h1.example.net连接以访问报告数据库时,将应用具有Host,User和Db列值分别为’h1.example.net’,'bob’和’reports’的db表行。table_priv和columns_priv表包含范围列,这些范围列指示每行适用的表或表/列组合。procs_priv作用域列指示每行适用的存储例程。
- 特权列指示表行授予哪些特权;也就是说,它允许执行哪些操作。服务器将各种授权表中的信息组合在一起,以形成用户权限的完整描述。
user
和 db
授权表
Table Name |
user |
db |
---|---|---|
Scope columns |
Host |
Host |
User |
Db |
|
User |
||
特权字段 |
Select_priv |
Select_priv |
Insert_priv |
Insert_priv |
|
Update_priv |
Update_priv |
|
Delete_priv |
Delete_priv |
|
Index_priv |
Index_priv |
|
Alter_priv |
Alter_priv |
|
Create_priv |
Create_priv |
|
Drop_priv |
Drop_priv |
|
Grant_priv |
Grant_priv |
|
Create_view_priv |
Create_view_priv |
|
Show_view_priv |
Show_view_priv |
|
Create_routine_priv |
Create_routine_priv |
|
Alter_routine_priv |
Alter_routine_priv |
|
Execute_priv |
Execute_priv |
|
Trigger_priv |
Trigger_priv |
|
Event_priv |
Event_priv |
|
Create_tmp_table_priv |
Create_tmp_table_priv |
|
Lock_tables_priv |
Lock_tables_priv |
|
References_priv |
References_priv |
|
Reload_priv |
||
Shutdown_priv |
||
Process_priv |
||
File_priv |
||
Show_db_priv |
||
Super_priv |
||
Repl_slave_priv |
||
Repl_client_priv |
||
Create_user_priv |
||
Create_tablespace_priv |
||
Create_role_priv |
||
Drop_role_priv |
||
安全字段 |
ssl_type |
|
ssl_cipher |
||
x509_issuer |
||
x509_subject |
||
plugin |
||
authentication_string |
||
password_expired |
||
password_last_changed |
||
password_lifetime |
||
account_locked |
||
Password_reuse_history |
||
Password_reuse_time |
||
Password_require_current |
||
User_attributes |
||
资源控制字段 |
max_questions |
|
max_updates |
||
max_connections |
||
max_user_connections |
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式