一、概念

DCL数据控制语言,用来管理数据库用户、控制数据库的访问权限。

二、查询用户

select * from mysql.user;

MySQL入门系列2-数据控制语言(DCL)_用户

其中 Host代表当前用户访问的主机, 如果为localhost, 代表只能够在当前本机访问,不可以远程访问的。 User代表的是访问该数据库的用户名。在MySQL中需要通过Host和User来唯一标识一 个用户。

二、创建用户

格式:

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

SQL语句:

CREATE USER 'qq' @'localhost' IDENTIFIED BY '123456';

创建一个名称为qq,密码为123456的用户。

MySQL入门系列2-数据控制语言(DCL)_MySQL_02

MySQL入门系列2-数据控制语言(DCL)_用户_03

三、修改用户密码

格式:

ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';

SQL语句:

ALTER USER 'qq' @'localhost' IDENTIFIED WITH mysql_native_password BY '12345';

MySQL入门系列2-数据控制语言(DCL)_用户_04

四、删除用户

格式:

DROP USER '用户名'@'主机名';

SQL语句:

DROP USER 'qq' @'localhost';

MySQL入门系列2-数据控制语言(DCL)_权限_05

五、权限相关操作

常见的权限列表:

权限

说明

ALL/ALL PRIVILEGES

所有权限

SELECT

查询权限

INSERT

插入权限

UPDATE

修改权限

DELETE

删除权限

ALTER

修改表权限

DROP

删除数据库、表、视图权限

CREATE

创建数据库、表权限

1.查询用户权限

格式:

SHOW GRANTS FOR '用户名'@'主机名' ;

SQL语句:

SHOW GRANTS FOR 'qx' @'localhost';

MySQL入门系列2-数据控制语言(DCL)_权限_06

2.授予权限

格式:

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';

SQL语句:

GRANT SELECT ON mybase.sys_user TO 'qx' @'localhost';

MySQL入门系列2-数据控制语言(DCL)_MySQL_07

3.撤销权限

格式:

REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';

SQL语句:

REVOKE SELECT ON mybase.sys_user FROM 'qx' @'localhost'

MySQL入门系列2-数据控制语言(DCL)_MySQL_08

MySQL入门系列2-数据控制语言(DCL)_MySQL_09

注意事项:

  1. 多个权限之间使用逗号分隔。
  2. 授权时, 数据库名和表名可以使用 * 进行通配,代表所有。
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: mysql