【MySQL】MySQL里的用户账户和角色是什么?如何管理?

这篇具有很好参考价值的文章主要介绍了【MySQL】MySQL里的用户账户和角色是什么?如何管理?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

用户(user)

在MySQL中,用户是数据库访问的主要实体。每个用户都有自己的用户名和密码,用于验证和授权。通过合理的用户管理,可以控制谁能够访问数据库以及访问数据库的权限。

验证和授权

在连接到MySQL 服务器并执行查询时,会根据登录的用户来进行身份验证和活动授权。

  1. 验证。这一步是在连接层进行。是访问控制的第一个阶段。每次连接服务器的时候必须成功验证身份,否则无法连接,客户机将断开连接。
  2. 授权。这一步在SQL层进行。即在需要执行sql语句的时候需要验证该用户的权限。MySQL将确定这个用户要执行什么操作,是否有执行此操作所需的恰当权限。

【MySQL】MySQL里的用户账户和角色是什么?如何管理?,mysql,数据库

创建用户账户

MySQL会为每个用户帐户提供一个用户和主机。

帐户名称的格式为 'username'@'hostname'。其中单引号可以省略,但若是果用户名和主机名包含特殊字符(如破折号),则必须使用单引号将它们括起来。

示例:

  • root@localhost
  • reports_app@‘server-1’
  • ‘%^&’@192.168.5.3

主机名称可以是我们自己设置的主机域名,也可以是IP地址。可以使用通配符(%匹配多字符而 _匹配单字符)。比如主机名为名’%’ 的帐户可以从任何主机连接。同时,如果在创建用户时未指定主机名,则 '%’ 为默认值。

注意:这里的主机名代表着用户从哪个客户机登录服务器。

我们可以使用用 CREATE USER...IDENTIFIED BY 语句建立一个帐户。

下面这个示例表示我们创建一个名为 webuser 的用户,这个用户将从 localhost 本机连接服务器,并且使用口令Abc123。

CREATE USER webuser@localhost IDENTIFIED BY 'Abc123';

连接服务器

我们使用 mysql -u username -h servername -ppassword 来连接服务器。

注意:这里必须提供要连接的服务器的主机名。

如果不指定服务器主机名,那么默认是localhost。

查看用户账户设置

我们可以查看mysql数据库中的user表。

下面这条语句将查看表中user、host、authentication_string这三个字段,分别代表着用户名、主机名、已经加密的口令。

注意:这里提到的主机名是用户所在的客户机的主机名,不是前面在连接时提到的服务器主机名。

 SELECT user, host, authentication_string FROM mysql.user;

角色(role)

角色是一组权限的集合,它们可以用来简化权限管理并提高安全性。通过将权限分配给角色,然后将角色分配给用户,可以更方便地管理大量用户和权限设置。

在MySQL中,角色就类似于用户,因为角色也存储在mysql.user表中,角色名也由角色的名称和主机组成(‘rolename’@‘hostname’)。但是不同之处在于我们无法使用角色身份登录

创建角色

我们可以使用CREATE ROLE 语句创建一个或多个角色。角色是被锁定的,也就是说无法登录,同时在创建的时候也没有口令。

比如下面这条语句将创建两个角色:r_admin 和 r_dev@localhost。

CREATE ROLE r_admin, r_dev@localhost;

和创建用户一样,如果省略主机名,默认为 '%‘。

操作用户帐户和角色

重命名

我们可以使用 RENAME USER 语句重命名用户帐户和角色。

示例:

RENAME USER consultant@laptop3 TO james@laptop3 , r_admin TO r_super;

可以只更改用户名或主机名部分,也可以同时更改。

删除

删除用户账户用 DROP USER

删除角色用 DROP ROLE

示例:

DROP USER james@laptop3;
DROP ROLE r_super, r_dev@localhost;

删除用户账户或角色意味着:

  • 删除帐户或角色
  • 撤销现有帐户或角色的所有权限
  • 从存在的任何授权表中删除帐户的所有记录

感谢 💖

好啦,这次的分享就到这里,感谢大家看到这里🤞文章来源地址https://www.toymoban.com/news/detail-681836.html

到了这里,关于【MySQL】MySQL里的用户账户和角色是什么?如何管理?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • mysql如何查询数据库里的表

    要在MySQL中查询数据库里的所有表,你可以使用 SHOW TABLES 命令。 下面是步骤说明: 登录MySQL : 使用命令行工具登录到MySQL数据库。例如: 选择要查询的数据库 : 使用 USE [数据库名]; 来选择你要查询的数据库。例如,要选择名为 sampledb 的数据库,你可以运行: 查询数据库里的

    2024年02月06日
    浏览(64)
  • 【MySQL】MySQL用户管理

    如果我们只能使用root用户,这样存在安全隐患。这时,就需要使用MySQL的用户管理。 我们安装mysql之后,会自动创建一个mysql的数据库。MySQL中的用户,都存储在系统数据库mysql的user表中 我们可以查询如下信息: 字段解释: host: 表示这个用户可以从哪个主机登陆,如果是

    2024年03月27日
    浏览(70)
  • 【MySQL】MySQL索引、事务、用户管理

    20岁的男生穷困潦倒,20岁的女生风华正茂,没有人会一直风华正茂,也没有人会一直穷困潦倒… 1. MySQL给用户提供存取数据的服务,但数据在linux机器的磁盘外设上进行存储,而磁盘的读取效率是比较低的,MySQL如何进行数据存取以提高效率呢?这是一个重要的话题。 在硬件

    2024年02月14日
    浏览(46)
  • MySQL - 第13节 - MySQL用户管理

    目录 1.MySQL用户管理概念 2.用户 2.1.用户信息 2.2.创建用户 2.3.修改用户密码 2.4.删除用户 3.数据库的权限 3.1.MySQL中的权限 3.2.给用户授权 3.3.回收权限 MySQL用户管理概念: • 与Linux操作系统类似,MySQL中也有超级用户和普通用户之分。 • 如果一个用户只需要访问MySQL中的某一

    2024年02月12日
    浏览(40)
  • MySQL用户管理及用户权限

    目录 数据库用户管理 新建用户 查看用户 重命名用户rename 删除用户drop 修改用户密码 找回root密码 数据库用户授权 授予权限 查看用户权限  撤销用户权限

    2024年02月11日
    浏览(46)
  • MySQL-03.用户管理和权限管理

    MySQL用户可以分为 普通用户 和 root用户 。root用户是超级管理员,拥有所有权限,包括创建用户、删除用户和修改用户的密码等管理权限。普通用户只拥有被授予的各种权限。 MySQL提供了很多语句用来管理用户账号 ,这些语句可以用来管理包括登录和退出MySQL服务器,创建用

    2024年03月17日
    浏览(47)
  • MySQL学习笔记之MySQL5.7用户管理

    基本格式: create user \\\'用户名\\\' identified by \\\'密码\\\'; 使用新的用户登录、查看数据库表和自己的权限: 可见默认情况下,普通用户的权限很小。 可以在用户名后面加上 @\\\'主机\\\' 来限制该用户登录的主机,不写为 % ,即不限主机: 查看所有用户的用户名和登录主机,首先切换到

    2024年02月13日
    浏览(49)
  • MySQL运维实战(2)MySQL用户和权限管理

    作者:俊达 MySQL数据库系统,拥有强大的控制系统功能,可以为不同用户分配特定的权限,这对于运维来说至关重要,因为它可以帮助管理员控制用户对数据库的访问权限。用户管理涉及创建、修改和删除数据库用户,权限管理则控制用户对数据库的访问和操作。MySQL提供了

    2024年02月03日
    浏览(50)
  • MySQL 用户管理

    目录 用户管理 用户 用户信息 创建用户 删除用户 修改用户密码 数据库的权限 给用户  注意:如果发现赋权限后,没有生效,执行如下指令: 回收权限 如果我们只能使用 root 用户,这样存在安全隐患。这时,就需要使用 MySQL 的用户管理。 MySQL 中的用户,都存储在系统数据

    2024年02月06日
    浏览(20)
  • 04.MySQL——用户管理

    用户信息 MySQL中的用户,都存储在系统数据库mysql的user表中 host: 表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆 user: 用户名 authentication_string: 用户密码通过password函数加密后的 创建用户 删除用户 修改用户密码 刚创建的用户没有任何权限,需要

    2024年02月16日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包