DCl介绍
DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户,控制数据库的访问权限。
1.用户可以访问哪些数据库的哪些表
2.用户有这个数据库的哪些表的哪些权限
DCL-管理用户
1.查询用户
USE mysql; --切换到mysql 库
SELECT * FROM user; -- 查询用户表
2.创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
3.修改用户密码
ALTER USER '用户名'@'主机名' IDENTIFIED BY WITH mysql _native_password BY '新密码';
4.删除用户
DROP USER '用户名'@'主机名' ;
注意
主机名 '%' 表示全部主机都可以连接
localhost 表示本机连接
也可指定ip连接
DCL-权限控制
mysql 常用权限如下
权限 | 说明 |
---|---|
ALL,ALL PRIVILEGES | 所有权限 |
SELECT | 查询数据 |
INSERT | 插入数据 |
UPDATE | 修改数据 |
DELETE | 删除数据 |
ALTER | 修改表 |
DROP | 删除数据库/表/视图 |
CREATE | 创建数据库/表 |
1.查询权限
SHOW GRANTS FOR '用户名'@'主机名';
2.授予权限
GRANT 权限列表 ON 数据库.表名 TO '用户名'@'主机名';
3.撤销权限
REVOKE 权限列表 ON 数据库.表名 FROM '用户名'@'主机名';
注意
多个权限之间,用逗号分割
数据库/表名 可以用 * 来带表全部,
例如 *.* 代表全部数据库,全部表,
mysql.user 表示 mysql 数据库的user表