返回顶部
首页 > 资讯 > 数据库 >mysql有user表吗
  • 285
分享到

mysql有user表吗

2024-04-02 19:04:59 285人浏览 独家记忆
摘要

这篇文章主要讲解了“Mysql有user表吗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql有user表吗”吧! mys

这篇文章主要讲解了“Mysql有user表吗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql有user表吗”吧!

mysql有user表。user表是MySQL中的一个权限表,用来记录允许连接到服务器的账号信息;user表中的字段大致可以分为4类,分别是用户列、权限列、安全列和资源控制列。

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

mysql有user表。

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

user 表中的字段大致可以分为 4 类,分别是用户列、权限列、安全列和资源控制列,下面主要介绍这些字段的含义。

用户列

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

MySQL 5.7 版本的用户列如表 1 所示。

表 1:user 表的用户列
字段名字段类型是否为空默认值说明
Hostchar(60)NO主机名
Userchar(32)NO用户名
authentication_stringtextYES密码

用户登录时,如果这 3 个字段同时匹配,MySQL 数据库系统才会允许其登录。创建新用户时,也是设置这 3 个字段的值。修改用户密码时,实际就是修改 user 表的 authentication_string 字段的值。因此,这 3 个字段决定了用户能否登录。

权限列

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

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

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

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

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

表 2:user表的权限列
字段名字段类型是否为空默认值说明
Select_privenum('N','Y')NON是否可以通过SELECT 命令查询数据
Insert_privenum('N','Y')NON是否可以通过 INSERT 命令插入数据
Update_privenum('N','Y')NON是否可以通过UPDATE 命令修改现有数据
Delete_privenum('N','Y')NON是否可以通过DELETE 命令删除现有数据
Create_privenum('N','Y')NON是否可以创建新的数据库和表
Drop_privenum('N','Y')NON是否可以删除现有数据库和表
Reload_privenum('N','Y')NON是否可以执行刷新和重新加载MySQL所用的各种内部缓存的特定命令,包括日志、权限、主机、查询和表
Shutdown_privenum('N','Y')NON是否可以关闭MySQL服务器。将此权限提供给root账户之外的任何用户时,都应当非常谨慎
Process_privenum('N','Y')NON是否可以通过SHOW PROCESSLIST命令查看其他用户的进程
File_privenum('N','Y')NON是否可以执行SELECT INTO OUTFILE和LOAD DATA INFILE命令
Grant_privenum('N','Y')NON是否可以将自己的权限再授予其他用户
References_privenum('N','Y')NON是否可以创建外键约束
Index_privenum('N','Y')NON是否可以对索引进行增删查
Alter_privenum('N','Y')NON是否可以重命名和修改表结构
Show_db_privenum('N','Y')NON是否可以查看服务器上所有数据库的名字,包括用户拥有足够访问权限的数据库
Super_privenum('N','Y')NON是否可以执行某些强大的管理功能,例如通过KILL命令删除用户进程;使用SET GLOBAL命令修改全局MySQL变量,执行关于复制和日志的各种命令。(超级权限)
Create_tmp_table_privenum('N','Y')NON是否可以创建临时表
Lock_tables_privenum('N','Y')NON是否可以使用LOCK TABLES命令阻止对表的访问/修改
Execute_privenum('N','Y')NON是否可以执行存储过程
Repl_slave_privenum('N','Y')NON是否可以读取用于维护复制数据库环境的二进制日志文件
Repl_client_privenum('N','Y')NON是否可以确定复制从服务器和主服务器的位置
Create_view_privenum('N','Y')NON是否可以创建视图
Show_view_privenum('N','Y')NON是否可以查看视图
Create_routine_privenum('N','Y')NON是否可以更改或放弃存储过程和函数
Alter_routine_privenum('N','Y')NON是否可以修改或删除存储函数及函数
Create_user_privenum('N','Y')NON是否可以执行CREATE USER命令,这个命令用于创建新的MySQL账户
Event_privenum('N','Y')NON是否可以创建、修改和删除事件
Trigger_privenum('N','Y')NON是否可以创建和删除触发器
Create_tablespace_privenum('N','Y')NON是否可以创建表空间

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

安全列

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

表 3: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 所示。

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

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

感谢各位的阅读,以上就是“mysql有user表吗”的内容了,经过本文的学习后,相信大家对mysql有user表吗这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: mysql有user表吗

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

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

猜你喜欢
  • mysql有user表吗
    这篇文章主要讲解了“mysql有user表吗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql有user表吗”吧! mys...
    99+
    2024-04-02
  • mysql的user表有什么作用
    这篇文章主要介绍了mysql的user表有什么作用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql的user表有什么作用文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2022-11-30
    mysql user
  • 浅谈MySQL user权限表
    MySQL 在安装时会自动创建一个名为 mysql 的数据库,mysql 数据库中存储的都是用户权限表。用户登录以后,MySQL 会根据这些权限表的内容为每个用户赋予相应的权限。 user 表是 MySQL 中最重要...
    99+
    2022-05-12
    MySQL user权限表 MySQL 权限表 MySQL user表
  • Mysql 中User表的权限字段有哪些
    本篇文章为大家展示了Mysql 中User表的权限字段有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  MysqlUser表的权限字段有哪些  Select_...
    99+
    2024-04-02
  • 如何解决mysql中user表没有的问题
    这篇文章将为大家详细讲解有关如何解决mysql中user表没有的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 mysql user表没有...
    99+
    2024-04-02
  • MySQL数据库——MySQL user权限表详解
    MySQL 在安装时会自动创建一个名为 mysql 的数据库,mysql 数据库中存储的都是用户权限表。用户登录以后,MySQL 会根据这些权限表的内容为每个用户赋予相应的权限。 user 表是 MySQL 中最重要的一个权限表,用来记录允...
    99+
    2023-09-10
    数据库 mysql 服务器
  • MySQL 中的表有命名约定吗?
    不,MySQL 没有首选的命名约定标准。如果我们选择的名称符合逻辑且一致,那就可以了。需要记住两个要点,一是两个故事/数据库不能有相同的名称,二是我们可以选择任何一个保留字作为表/数据库的名称。...
    99+
    2023-10-22
  • 查询mysql user表的sql语句怎么写
    这篇文章主要介绍查询mysql user表的sql语句怎么写,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在mysql中,可以使用“SELECT * FROM mysql.u...
    99+
    2024-04-02
  • mysql数据库表数量有影响吗
    MySQL数据库表的数量对数据库性能和管理有一定的影响:1、查询性能,大量的表存在会增加查找和扫描的开销,导致查询性能下降;2、索引维护成本,每个索引都需要占用额外的存储空间,并且在表数据发生变化时需要进行维护;3、管理和维护,更多的管理和...
    99+
    2023-07-25
  • golang有lambda表达式吗
    go 中没有 lambda 表达式,但匿名函数提供了类似功能:匿名函数无名称,直接嵌入代码中,使用 func 关键字声明。匿名函数可传递给其他函数或作为回调使用,类似于 lambda 表...
    99+
    2024-04-21
    golang
  • Access denied for user ‘‘@‘localhost‘ to database ‘mysql‘
    买了个测试服务器,使用的是Linux环境,在测试服务器上安装mysql数据库,设置了root的登陆密码后,发现使用密码登陆失败。报错信息如下: 反而不用密码居然可以登录!原因下面会讲。 但是在执行show databases;命令报出如下...
    99+
    2023-09-14
    mysql 数据库 java
  • mysql中user是什么意思
    mysql 中的 user 是一个数据库对象,它表示可以与数据库交互的实体,包含用户名、密码、权限和主机信息。通过 create user 可创建用户,grant 授予权限,revoke...
    99+
    2024-05-01
    mysql
  • uniapp后台api设计(微信user表)
    MySQL 创建数据库: CREATE  DATABASE [IF NOT EXISTS]  [[DEFAULT] CHARACTER SET ] [[DEFAULT] COLLATE ]; 注:  [IF NOT EXISTS]...
    99+
    2020-05-12
    uniapp后台api设计(微信user表)
  • mysql中有事务吗
    这篇文章主要介绍了mysql中有事务吗,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。mysql中有事务,但只有使用了Innodb数据库引擎的数据...
    99+
    2024-04-02
  • MySQL两种删除用户语句的区别(delete user和drop user)
    Tip: 在MySQL中,我们经常需要创建用户和删除用户,创建用户时,我们一般使用create user或者grant语句来创建,create语法创建的用户没有任何权限,需要再使用grant语法来分配权限,而gran...
    99+
    2022-05-25
    MySQL 删除用户语句 MySQL delete user MySQL drop user
  • userdel: user mysql is currently used by process 1489
    在创建完用户后,如果删除出现这种情况:userdel: user mysql is currently used by process 1489则使用ctrl +d就可以了  ...
    99+
    2024-04-02
  • MySQL数据库——MySQL删除用户(DROP/DELETE USER)
    在 MySQL 数据库中,可以使用 DROP USER 语句删除用户,也可以直接在 mysql.user 表中删除用户以及相关权限。 1. 使用 DROP USER 语句删除普通用户 使用 DROP USER 语句删除用户的语法格式...
    99+
    2023-10-24
    数据库 mysql sql
  • mysql有存储过程吗
    这篇文章主要介绍“mysql有存储过程吗”,在日常操作中,相信很多人在mysql有存储过程吗问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql有存储过程吗”的疑惑有所帮...
    99+
    2024-04-02
  • MySQL 中除了 SHOW COLUMNS 之外还有其他语句来获取现有表中的列列表吗?
    是的,我们可以使用DESCRIBE或EXPLAIN语句而不是SHOW COLUMNS语句来获取现有表中的列的列表。在下面的示例中,我们在“Employee”表上应用了 DESCRIBE 和 EXPLAIN 语句,并获得了与 SHOW COL...
    99+
    2023-10-22
  • mysql表名要区分大小写吗
    本篇内容主要讲解“mysql表名要区分大小写吗”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql表名要区分大小写吗”吧! my...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作