目录
1:介绍
2:语法
3:DCL的使用
4:权限
1:介绍
DCL英文全称是Data ControlLanguage(数据控制语言),用来管理数据库 用户、控制数据库的访问 权限。
2:语法
DCL-管理用户
查询用户
use mysql;
select * from user;
创建用户
create user "用户名"@"主机名" identified by "密码"
修改用户密码
alter user "用户名"@"主机名" identified with mysql_native_password by "新密码"
删除用户
drop user "用户名"@"主机名"
注意:
主机名可以使用 % 通配
。这类SQL开发人员操作的比较少,主要是DBA ( Database Administrator 数据库管理员)使用。
3:DCL的使用
-- 创建用户 itcast , 只能够在当前主机Localhost访问,密码123456;
create user "incast"@"localhost" identified by "123456";
-- 创建用户 heima ,可以在任意主机访问该数据库,密码123456 ;
create user "heima"@"%" identified by "123456";
-- 修改用户 heima 的访问密码为 1234 ;
alter user "heima"@"%" identified with mysql_native_password by "1234";
删除itcast@localhost用户
drop user "incast"@"localhost";
4:权限
1.查询权限
show grants for "用户名"@"主机名";
2.授予权限
grant 权限列表 on 数据库名.表名 to "用户名"@"主机名";
3.撤销权限
revoke 权限列表 on 数据库名.表名 from "用户名"@"主机名"
eg:
--查询权限
show grants for "heima"@"%";
--授予权限(所有权限)
grant all on heima.* to "heima"@"%";
--撤销权限
revoke all on heima.* from "heima"@"%";
--授予权限和撤销
grant select on user.* to "heima"@"%";
revoke select on user.* from "heima"@"%";
--授予查询权限和撤销
grant drop,alter on user.* to "heima"@"%";
revoke drop,alter on user.* from "heima"@"%";