返回顶部
首页 > 资讯 > 数据库 >mysql有什么权限表
  • 530
分享到

mysql有什么权限表

2024-04-02 19:04:59 530人浏览 八月长安
摘要

本文小编为大家详细介绍“Mysql有什么权限表”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql有什么权限表”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

本文小编为大家详细介绍“Mysql有什么权限表”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql有什么权限表”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

mysql的权限表有:1、user表,用来记录允许连接到服务器的账号信息,该表里启用的所有权限都是全局级的,适用于所有数据库;2、db表,存储了用户对某个数据库的操作权限;3、tables_priv表,用来对单个表进行权限设置;4、columns_priv表,用来对单个数据列进行权限设置;5、procs_priv表,用于对存储过程和存储函数进行权限设置。

教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

在 MySQL 数据库中,权限表有user 表、db 表、tables_priv 表、columns_priv 表和 procs_priv 表。

user权限表

user 表是 MySQL 中最重要的一个权限表,用来记录允许连接到服务器的账号信息。需要注意的是,在 user 表里启用的所有权限都是全局级的,适用于所有数据库。

user 表中的字段大致可以分为 4 类,分别是用户列、权限列、安全列和资源控制列。

用户列

用户列存储了用户连接 MySQL 数据库时需要输入的信息。需要注意的是 MySQL 5.7 版本不再使用 PassWord 来作为密码的字段,而改成了 authentication_string。

权限列

权限列的字段决定了用户的权限,用来描述在全局范围内允许对数据和数据库进行的操作。

权限大致分为两大类,分别是高级管理权限和普通权限:

  • 高级管理权限主要对数据库进行管理,例如关闭服务的权限、超级权限和加载用户等;

  • 普通权限主要操作数据库,例如查询权限、修改权限等。

user 表的权限列包括 Select_priv、Insert_ priv 等以 priv 结尾的字段,这些字段值的数据类型为 ENUM,可取的值只有 Y 和 N:Y 表示该用户有对应的权限,N 表示该用户没有对应的权限。从安全角度考虑,这些字段的默认值都为 N。

如果要修改权限,可以使用 GRANT 语句为用户赋予一些权限,也可以通过 UPDATE 语句更新 user 表的方式来设置权限。

安全列

安全列主要用来判断用户是否能够登录成功,user 表中的安全列如下表所示:

user 表的安全列
字段名字段类型是否为空默认值说明
ssl_typeenum('','ANY','X509','SPECIFIED')NO
支持ssl标准加密安全字段
ssl_cipherblobNO
支持ssl标准加密安全字段
x509_issuerblobNO
支持x509标准字段
x509_subjectblobNO
支持x509标准字段
pluginchar(64)NOmysql_native_password引入plugins以进行用户连接时的密码验证,plugin创建外部/代理用户
password_expiredenum('N','Y')NON密码是否过期 (N 未过期,y 已过期)
password_last_changedtimestampYES
记录密码最近修改的时间
password_lifetimesmallint(5) unsignedYES
设置密码的有效时间,单位为天数
account_lockedenum('N','Y')NON用户是否被定(Y 锁定,N 未锁定)

注意:即使 password_expired 为“Y”,用户也可以使用密码登录 MySQL,但是不允许做任何操作。

通常标准的发行版不支持 ssl,读者可以使用 SHOW VARIABLES LIKE "have_openssl" 语句来查看是否具有 ssl 功能。如果 have_openssl 的值为 DISABLED,那么则不支持 ssl 加密功能。

资源控制列

资源控制列的字段用来限制用户使用的资源,user 表中的资源控制列如表 4 所示。

user 表的资源控制列
字段名字段类型是否为空默认值说明
max_questionsint(11) unsignedNO0规定每小时允许执行查询的操作次数
max_updatesint(11) unsignedNO0规定每小时允许执行更新的操作次数
max_connectionsint(11) unsignedNO0规定每小时允许执行的连接操作次数
max_user_connectionsint(11) unsignedNO0规定允许同时建立的连接次数

以上字段的默认值为 0,表示没有限制。一个小时内用户查询或者连接数量超过资源控制限制,用户将被锁定,直到下一个小时才可以在此执行对应的操作。可以使用 GRANT 语句更新这些字段的值。

db表

db 表比较常用,是 MySQL 数据库中非常重要的权限表,表中存储了用户对某个数据库的操作权限。表中的字段大致可以分为两类,分别是用户列和权限列。

用户列

db 表用户列有 3 个字段,分别是 Host、User、Db,标识从某个主机连接某个用户对某个数据库的操作权限,这 3 个字段的组合构成了 db 表的主键。

db 表的用户列如下表所示:

字段名字段类型是否为空默认值说明
Hostchar(60)NO主机名
Dbchar(64)NO数据库名
Userchar(32)NO用户名

权限列

db 表中的权限列和 user 表中的权限列大致相同,只是user 表中的权限是针对所有数据库的,而 db 表中的权限只针对指定的数据库。如果希望用户只对某个数据库有操作权限,可以先将 user 表中对应的权限设置为 N,然后在 db 表中设置对应数据库的操作权限。

tables_priv表和columns_priv表

tables_priv 表用来对单个表进行权限设置,columns_priv 表用来对单个数据列进行权限设置。tables_priv 表结构如下表所示:

字段名字段类型是否为空默认值说明
Hostchar(60)NO主机
Dbchar(64)NO数据库名
Userchar(32)NO用户名
Table_namechar(64)NO表名
Grantorchar(93)NO修改该记录的用户
TimestamptimestampNOCURRENT_TIMESTAMP修改该记录的时间
Table_privset('Select','Insert','Update','Delete','
Create','Drop','Grant','References',
'Index','Alter','Create View','Show view','Trigger')
NO表示对表的操作权限,包括 Select、Insert、Update、Delete、Create、Drop、Grant、References、Index 和 Alter 等
Column_privset('Select','Insert','Update','References')NO表示对表中的列的操作权限,包括 Select、Insert、Update 和 References

columns_priv 表结构如下表所示:

字段名字段类型是否为空默认值说明
Hostchar(60)NO主机
Dbchar(64)NO数据库名
Userchar(32)NO用户名
Table_namechar(64)NO表名
Column_namechar(64)NO数据列名称,用来指定对哪些数据列具有操作权限
TimestamptimestampNOCURRENT_TIMESTAMP修改该记录的时间
Column_privset('Select','Insert','Update','References')NO表示对表中的列的操作权限,包括 Select、Insert、Update 和 References

procs_priv表

procs_priv 表可以对存储过程和存储函数进行权限设置,procs_priv 的表结构如表所示:

字段名字段类型是否为空默认值说明
Hostchar(60)NO主机名
Dbchar(64)NO数据库名
Userchar(32)NO用户名
Routine_namechar(64)NO表示存储过程或函数的名称
Routine_typeenum('FUNCTION','PROCEDURE')NO表示存储过程或函数的类型,Routine_type 字段有两个值,分别是 FUNCTION 和 PROCEDURE。FUNCTION 表示这是一个函数;PROCEDURE 表示这是一个
存储过程。
Grantorchar(93)NO插入或修改该记录的用户
Proc_privset('Execute','Alter Routine','Grant')NO表示拥有的权限,包括 Execute、Alter Routine、Grant 3种
TimestamptimestampNOCURRENT_TIMESTAMP表示记录更新时间

读到这里,这篇“mysql有什么权限表”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: mysql有什么权限表

本文链接: https://lsjlt.com/news/73708.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • mysql有什么权限表
    本文小编为大家详细介绍“mysql有什么权限表”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql有什么权限表”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2024-04-02
  • mysql中有什么权限
    本篇内容介绍了“mysql中有什么权限”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • MySQL权限管理表有哪些
    MySQL的权限管理涉及多个表,以下是其中一些重要的表:1. user表:该表存储MySQL的用户信息,包括用户名、密码等。2. d...
    99+
    2023-09-27
    MySQL
  • MySQL权限表介绍
    MySQL权限表存放在MySQL数据库里,由mysql_install_db脚本初始化。这些MySQL权限表分别为“user、db、table_priv、 columns_priv、proc_priv和ho...
    99+
    2024-04-02
  • mysql新建的用户有什么权限
    这篇文章运用简单易懂的例子给大家介绍mysql新建的用户有什么权限,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。mysql新建的用户怎么设置权限1.进入MySQL mysql -...
    99+
    2024-04-02
  • 浅谈MySQL user权限表
    MySQL 在安装时会自动创建一个名为 mysql 的数据库,mysql 数据库中存储的都是用户权限表。用户登录以后,MySQL 会根据这些权限表的内容为每个用户赋予相应的权限。 user 表是 MySQL 中最重要...
    99+
    2022-05-12
    MySQL user权限表 MySQL 权限表 MySQL user表
  • MySQL权限表的介绍
    MySQL权限表是用于存储和管理MySQL数据库系统中的用户权限信息的表。它是MySQL权限控制系统的核心组成部分,用于控制用户对数...
    99+
    2023-09-23
    MySQL
  • mysql权限有哪些
    小编给大家分享一下mysql权限有哪些,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!               ...
    99+
    2024-04-02
  • Mysql 中User表的权限字段有哪些
    本篇文章为大家展示了Mysql 中User表的权限字段有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  MysqlUser表的权限字段有哪些  Select_...
    99+
    2024-04-02
  • oracle表为什么是只读权限
    oracle表是只读权限的原因:1、数据安全性,可以防止非授权用户对表进行修改或删除操;2、数据一致性,可以防止并发读写导致的数据冲突和混乱;3、数据保护,可以减少不必要的数据修改操作;4、性能优化,可以减少数据的写入操作。本教程操作环境:...
    99+
    2023-08-08
  • MySQL数据库——MySQL user权限表详解
    MySQL 在安装时会自动创建一个名为 mysql 的数据库,mysql 数据库中存储的都是用户权限表。用户登录以后,MySQL 会根据这些权限表的内容为每个用户赋予相应的权限。 user 表是 MySQL 中最重要的一个权限表,用来记录允...
    99+
    2023-09-10
    数据库 mysql 服务器
  • linux mysql的启动权限是什么
    这篇文章主要介绍“linux mysql的启动权限是什么”,在日常操作中,相信很多人在linux mysql的启动权限是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”li...
    99+
    2023-03-14
    linux mysql
  • mysql中的权限有哪些
    本篇内容主要讲解“mysql中的权限有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql中的权限有哪些”吧! mysql权...
    99+
    2024-04-02
  • MySQL怎么收回用户所有权限
    这篇文章主要讲解了“MySQL怎么收回用户所有权限”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL怎么收回用户所有权限”吧!mysql> sh...
    99+
    2024-04-02
  • mysql怎么赋予用户所有权限
    要赋予用户所有权限,需要使用GRANT语句,并指定ALL PRIVILEGES。以下是具体步骤: 使用root用户登录到MySQ...
    99+
    2024-04-02
  • mysql怎么撤销用户所有权限
    要撤销MySQL用户所有权限,可以使用REVOKE语句。首先,登录到MySQL数据库中,然后执行以下命令: REVOKE ALL P...
    99+
    2024-04-09
    mysql
  • windows7连接wifi表明有限的访问权限怎么办
    许多windows7客户都喜欢连无线上网,但是有的用户在连接wifi时表明有限的访问权限,像这种情况要怎么办呢?解决方案很简单,你先打开计算机属性面板,以后点击设备管理器进到,开启网络适配器底下的无线驱动窗口,切换到高级菜单栏,之后在属性栏...
    99+
    2023-07-14
  • MySQL file权限
    file权限指的是是否能够对系统的文件读取和写操作. 拥有file权限才可以执行 select ..into   outfile...
    99+
    2024-04-02
  • 什么是mysql的权限控制机制
    本文主要给大家介绍什么是mysql的权限控制机制,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下什么是mysql的权限控制机制吧。权限控制机制 &nb...
    99+
    2024-04-02
  • mysql权限如何有效管理
    下文主要给大家带来mysql权限如何有效管理,希望这些内容能够带给大家实际用处,这也是我编辑mysql权限如何有效管理这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。一.新建与删除用户新建:&nbs...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作