个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~
个人主页:.29.的博客
学习社区:进去逛一逛~
MySQL用户与权限
- ⑤ 【MySQL】DCL语句 —— 用户管理、权限控制
⑤ 【MySQL】DCL语句 —— 用户管理、权限控制
-
SQL分类 :
-
- ①
DDL
:数据定义语言,用来定义数据库对象(数据库,表,字段) - ②
DML
:数据操作语言,用来对数据库表中字段进行增删改 - ③
DQL
:数据查询语言,用来查询数据库中表的记录 - ④
DCL
:数据控制语言,用来创建数据库用户,控制数据库的访问权限
- ①
DCL - 管理用户
:
-
MySQL用户管理
-
-
①查询用户
-
USE mysql; SELECT * FROM USER;
-
②创建用户
-
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
-
-
-- 实例: -- 创建用户 private_user,只能在当前主机访问,密码123456 CREATE USER 'private_user'@'localhost' IDENTIFIED BY '123456'; -- 创建用户 public_user,可以在任意主机访问数据库,密码123456 CREATE USER 'public_user'@'%' IDENTIFIED BY '123456';
-
-
③修改用户密码
-
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
-
④删除用户
-
DROP USER '用户名'@'主机名';
-
-
注意:
-
- ①主机名可以使用
%
通配。 - ②这类SQL开发人员使用较少,主要是
DBA
(DataBase Administrator 数据库管理员)使用。
- ①主机名可以使用
DCL - 权限控制
:
-
常用权限分类:
-
ALL
\ALL PRIVILEGES
:所有权限SELECT
:查询数据的权限INSERT
:插入数据的权限UPDATE
:修改数据的权限DELETE
:删除数据的权限ALTER
:修改表的权限DROP
:删除数据库/表/视图的权限CREATE
:创建数据库/表的权限
-
MySQL控制用户权限:
-
-
①查询权限
-
SHOW GRANTS FOR '用户名'@'主机名';
-
②授予权限
-
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
-
③撤销权限
-
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
-
-
注意:
-
- ①多个权限之间,使用逗号
,
分隔。 - ②授权时,数据库名和表名可以使用
*
进行通配,代表所有。
- ①多个权限之间,使用逗号