DCL
- 定义:Data Control Language(数据控制语言),用来管理数据库用户、控制数据库的访问权限。
管理用户(% 代表通配符)
-
查询用户
- SELECT * FROM mysql.user;
-
创建用户
- CREATE USER ‘用户名’@‘主机名’ IDENTIFIED BY ‘密码’;
-
修改用户
- ALTER USER ‘用户名’@‘主机名’ IDENTIFIED WITH mysql_native_password BY ‘新密码’ ;
-
删除用户
- DROP USER ‘用户名’@‘主机名’ ;
-
案例实操
-
创建用户itsy, 只能够在当前主机localhost访问, 密码123456;
CREATE USER 'itsy'@'localhost' IDENTIFIED BY '123456';
-
创建用户sycoder, 可以在任意主机访问该数据库, 密码123456;
CREATE USER 'sycoder'@'%' IDENTIFIED BY '123456';
-
修改用户sycoder的访问密码为111111;
ALTER USER 'sycoder'@'%' IDENTIFIED WITH mysql_native_password BY '111111' ;
-
删除 itsy@localhost 用户
DROP USER 'itsy'@'localhost';
-
权限控制
-
一些常用基本权限
-
语法
-
查询权限
SHOW GRANTS FOR '用户名'@'主机名' ;
-
授予权限
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
-
撤销权限
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
-
-
案例
-
查询 ‘itsy’@‘%’ 用户的权限
SHOW GRANTS FOR 'itsy'@'%' ;
-
授予 ‘sycoder’@‘%’ 用户itsy数据库所有表的所有操作权限
GRANT all ON mysql.* TO 'sycoder'@'%';
-
撤销 ‘sycoder’@‘%’ 用户的itsy数据库的所有权限
REVOKE all ON mysql.* FROM 'sycoder'@'%';
-
-
注意:DCL 不用花时间,跟着我练一下做做笔记以后用到的时候能够查笔记找到就行了。