DCL是数据控制语言,用来管理数据库用户,控制数据库的访问权限。
管理用户:管理哪些用户可以访问哪些数据库
1.查询用户
USE mysql;
SELECT * FROM user;
注意:
MySQL中用户信息和用户的权限信息都是记录在mysql数据库的user表中的。
需要通过 user(用户名)和Host主机地址才能同时定位一个用户进行访问数据库。
主机地址指的是当前这个用户只能在哪个主机上访问当前MySQL服务器。
2.创建用户
CREATE USER '用户名'@'主机名' IDENTIFY BY '密码';
注意:要创建在任意主机都能访问的数据库,将主机名改成 % 即可。
3.修改用户密码
ALTER USER '用户名'@'主机名' IDENTIFIED WITH?mysql_native_password BY '新密码';
4.删除用户
DROP USER'用户名'@'主机名';
权限控制:管理用户连接MySQL后能访问哪些数据库哪些表
1.查询权限:
SHOW GRANTS FOR '用户名'@'主机名';
2.授予权限:
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
3.撤销权限:
REVOKE 权限列表 ON 数据库名.表名 FROM ?'用户名'@'主机名';
注意:
1.多个权限之间使用逗号分隔
2.授权时,数据库名和表名可以使用*替换,代表所有
MySQL常用权限: