您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦。
💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精通
❤️ 2. Python爬虫专栏,系统性的学习爬虫的知识点。9.9元买不了吃亏,买不了上当 。python爬虫入门进阶
❤️ 3. Ceph实战,从原理到实战应有尽有。 Ceph实战
❤️ 4. Java高并发编程入门,打卡学习Java高并发。 Java高并发编程入门
😁 5. 社区逛一逛,周周有福利,周周有惊喜。码农飞哥社区,飞跃计划
全网同名【码农飞哥】欢迎关注,个人VX: wei158556
本文首先会重点介绍在MySQL数据库中如何创建用户,修改用户,删除用户以及进行密码设置。
| 环境 | 版本 |
|---|---|
| Red Hat | 4.8.5-39 |
| MySQL | 5.7 |
在MySQL数据库中,用户信息都会存放在mysql数据库的user表中,只需要查询该表即可获取所有用户
select host,user from user;

这里是以root用户来进行查询的,其中host表示主机:localhost 表示只能本机连接(不能远程连接),而%则既可以本机连接又可以远程连接。user表示用户的账户。
在MySQL数据库中,官方推荐CREATE USER 语句来创建新用户,在MySQL版本移除了PASSWORD加密方法,因此不在推荐直接使用INSERT语句直接操作MySQL中的user表来增加用户。
使用CREATE USER语句来创建新用户时,必须拥有CREATE USER权限。每添加一个用户,CREATE USER 语句会在mysql数据库的user表中增加一条记录,但是新创建的账户没有任何权限,如果添加的账户已经存在,CREATE USER语句就会返回一个错误。
CREATE USER语句的基本语法形式如下:
CREATE USER 用户名 [IDENTIFIED BY '密码'][,用户名 [IDENTIFIED BY '密码']]
IDENTIFIED BY 指定明文密码值。 create user 'zhangsan' identified by 'Abc123456&';

之所以,密码设置的这么复杂,是因为MySQL数据库中设置了密码的校验规则比较强。不然的话就会报如下错误:
mysql> create user 'zhangsan' identified by 'abcd1234';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看密码的校验规则可以执行如下语句:
SHOW VARIABLES LIKE 'validate_password%';

其中,
validate_password_number_count指定了密码中数据的长度,
validate_password_special_char_count指定了密码中特殊字符的长度,
validate_password_mixed_case_count指定了密码中大小字母的长度。
validate_password_policy类型
| policy | 说明 |
|---|---|
| 0 or LOW | Length(只限制了长度) |
| 1 or MEDIUM | Length; numeric, lowercase/uppercase, and special characters |
| 2 or STRONG | Length; numeric, lowercase/uppercase, and special characters; dictionary file |
| 如果,想要设置的简单一点策略可以执行如下命令: |
set global validate_password_policy=LOW
修改用户的功能用的比较少,这里的修改用户只修改用户的账户,只需要修改user表即可,语句就是简单的update语句。例如:将原来
UPDATE user set user='li4' WHERE user='lisi';

在MySQL数据库中,官方推荐DROP USER 语句来删除用户,该语句不仅会删除user表中的用户信息,还会做一些其他的设置,执行该命令之后,被删除的用户将不能重新登录MySQL。使用DROP USER 命令删除用户时必须要有该命令的权限。
DROP USER 语句的基本语法形式如下:
DROP USER 用户名 [@ 主机][,用户名].....
DROP USER 'li4'@'localhost';

用户可以使用ALTER命令来修改自身密码,如下语句代表修改当前登录用户的密码。基本语法如下:
ALTER USER USER() IDENTIFIED BY 'new_password';
下面使用ALTER 命令来修改zhangsan用户的密码,将密码改为"abc1234A%",命令如下:

使用root用户登录MySQL后,可以使用SET语句来修改密码,具体SQL语句如下:
SET PASSWORD='new_password';
该语句会自动将密码加密后再赋给当前用户。
下面使用SET语句来修改zhangsan用户的密码,将密码改成"abc1234A%"。

本文详细介绍了在MySQL中如何创建用户,删除用户以及进行密码的设置。