您的位置:首页 > 文旅 > 美景 > 新型冠状病毒肺炎最新情况_深圳鸿鸥b2b平台_360排名优化工具_灰色词优化培训

新型冠状病毒肺炎最新情况_深圳鸿鸥b2b平台_360排名优化工具_灰色词优化培训

2025/4/19 13:07:37 来源:https://blog.csdn.net/weixin_42375949/article/details/142926920  浏览:    关键词:新型冠状病毒肺炎最新情况_深圳鸿鸥b2b平台_360排名优化工具_灰色词优化培训
新型冠状病毒肺炎最新情况_深圳鸿鸥b2b平台_360排名优化工具_灰色词优化培训

目录

  • 一:MySQL的账号结构
  • 二:管理MySQL账号
    • 1. 查看账号
    • 2. 创建账号
    • 3. 删除账号
  • 三: MySQL账号权限管理
    • 1. 账号授权
    • 2. 查看权限
    • 3. 撤销权限
  • 四:MySQL账号密码管理
    • 1. 5.7.6 之前
    • 2. 5.7.6 及之后
    • 3. 8.0 及之后

一:MySQL的账号结构

MySQL账号设计采用了用户名@主机名的形式。

  • 用户名:在 MySQL 系统中的标识符。每个用户都有一个唯一的用户名,用来区分不同的用户。

  • 主机名:指用户可以从哪个主机(IP 地址或主机名)连接到 MySQL 服务器。通过限制主机名,可以控制用户的访问范围。

因为这种设计方式,账号通过 用户名@主机名 的组合来唯一标识,只有当用户名和主机名都相同时,才被视为同一个账号。
即使用户名相同,但主机名不同,也会被视为不同的账号

二:管理MySQL账号

1. 查看账号

MySQL的账号都是存在mysql.user表中的,可以通过查看这张表的信息来查看当前mysql的账号信息。

例如:查看当前mysql的所有账号信息

select user,host from mysql.user;

2. 创建账号

语法格式

CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';

具体细节

(1)当用户名和主机名都是简单的字母数字组合,可以不使用单引号。

例如

CREATE USER tom@'localhost IDENTIFIED BY eHIGH2014;

(2)当用户名和主机名不只是简单的字母数字组合,还包含了其他的,就需要用 单引号。

例如

CREATE USER tom@'127.0.0.1' IDENTIFIED BY 'eHIGH2014';CREATE USER 'BOB_tom'@'%' IDENTIFIED BY 'eHIGH2014';

(3)主机名部分可以指定为具体的 IP 地址、一个网段,并且支持使用标准 SQL 通配符 _%

例如

CREATE USER replica@'192.168.0._' IDENTIFIED BY eHIGH2014;

3. 删除账号

DROP USER username@localhost

三: MySQL账号权限管理

1. 账号授权

格式:

GRANT 权限类型 ON 数据库名.表名 TO '用户名'@'主机名';

例如:授予所有权限:

# MySQL 在数据库和数据表匹配的使用可以使用 *,其他场景就只能用 _ 和 %GRANT ALL PRIVILEGES ON *.* TO tom@localhost;

2. 查看权限

SHOW GRANTS FOR  '用户名'@'主机名';

3. 撤销权限

REVOKE 权限类型 ON 数据库名.表名 FROM '用户名'@'主机名';

四:MySQL账号密码管理

1. 5.7.6 之前

特点:
1、密码通常存放在 mysql.user 表的 Password 字段中。
2、支持PASSWORD() 函数。这个函数用于将明文密码加密成一个哈希字符串。

方法一:通过 SET PASSWORD

SET PASSWORD FOR 'username'@'hostname' = PASSWORD('newpassword');

方法二:修改mysql.user表

UPDATE mysql.user SET Password=PASSWORD('newpassword') WHERE User='username' AND Host='hostname';FLUSH PRIVILEGES;

2. 5.7.6 及之后

特点:
1、密码存放在 authentication_string 字段,mysql.user表的 password 字段被废弃
2、官方不再推荐使用 PASSWORD() 函数来加密明文密码。

方法一:通过 ALTER USER(首选)

ALTER USER 'username'@'hostname' IDENTIFIED BY 'newpassword';

方法二:通过 SET PASSWORD
这种方式指定明文密码,存储到authentication_string字段的信息会默认加密为一个哈希字符串。

SET PASSWORD for user@'host' = 'auth_string'

3. 8.0 及之后

特点:
1、PASSWORD() 函数彻底被移除出mysql,因为它使用较不安全的加密算法(如 MD5)
2、SET PASSWORD 语法修改密码这种方法还可以用,但是不是首选方法。

方法一:通过 SET PASSWORD

这种方式修改密码,会默认将明文密码进行加密后生成的哈希字符串存储在authentication_string字段。

SET PASSWORD for user@'host' = 'auth_string'

方法二:使用 ALTER USER(首选方式)

ALTER USER 'username'@'hostname' IDENTIFIED BY 'newpassword';

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com