SQL-DCL-管理用户
DCL: 称作 数据控制语句,用来管理数据库 用户,控制数据库的访问 权限。
查询用户
1
2USE mysql;
SELECT * FROM user;
在 MySQL 当中,用户的信息,用户所具有的权限信息,都是存放在系统数据库 MySQL 的 user 表当中的。
创建用户
1
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码'
修改用户密码
1
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
删除用户
1
DROP USER '用户名'@'主机名';
习题:
- – 创建用户 itcast , 只能在当前主机 localhost访问,密码123456
1 | create user 'itcast'@'localhost' identified by '123456' |
- – 创建用户 yangyang, 可以在任意主机访问数据库,密码123456
1 | create user 'yangyang'@'%' identified by '123456' |
- – 修改 yangyang 的访问密码为 1234
1 | alter user 'yangyang'@'%' identified with caching_sha2_password by '1234'; |
- – 删除 ‘itcast‘@’localhost’ 用户
1 | drop user 'itcast'@'localhost'; |
划重点
1. 看习题2
在任意主机访问数据库 ,运用 % 。
2. 看习题3
运用的是 caching_sha2_password
而不是 mysql_native_password
,
区别
mysql_native_password
- MySQL 5.7 及更早版本的默认认证插件
- 使用旧的密码哈希机制(安全性较低)
- 兼容性更好,适合旧版客户端
caching_sha2_password
- MySQL 8.0+ 的默认认证插件
- 使用 SHA-256 加密(更安全)
- 需要客户端支持(较新的 MySQL 客户端驱动,如 Connector/J 8.0+、MySQL 8.0+ 命令行工具等)