目录
DCL
用户管理
查询有哪些用户:
1、
USE mysql;
SELECT * FROM user;
2、
SELECT * FROM mysql.user;
注:
在 MySQL 中,用户保存在 mysql 库中的 user 表中。
创建用户:
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
修改用户密码:
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
删除用户:
DROP USER '用户名'@'主机名';
注:
在 MySQL 中需要通过“用户名@主机名”的方式,来唯一标识一个用户。
主机名可以使用 % 通配。
DCL 主要是 DBA(Database Administrator 数据库管理员)使用。
示例:
# 创建用户xiaoming,只能够在当前主机localhost访问,密码123456
CREATE USER 'xiaoming'@'localhost' IDENTIFIED BY '123456';
# 创建用户xiaohong, 可以在任意主机访问该数据库, 密码123456
CREATE USER 'xiaohong'@'%' IDENTIFIED BY '123456';
# 修改用户xiaohong的访问密码为1234
ALTER USER 'xiaohong'@'%' IDENTIFIED WITH mysql_native_password BY '1234';
# 删除 xiaoming@localhost 用户
DROP USER 'xiaoming'@'localhost';
权限控制
查询权限:
SHOW GRANTS FOR '用户名'@'主机名';
授予权限:
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
撤销权限:
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
注:
多个权限之间,使用逗号分隔。
授权时,数据库名和表名可以使用 * 进行通配,代表所有。
MySQL中定义了多种权限,常见的为以下几种:
--------------------------------------------------
权限 | 说明
--------------------------------------------------
ALL 或 ALL PRIVILEGES | 所有权限
SELECT | 查询数据
INSERT | 插入数据
UPDATE | 修改数据
DELETE | 删除数据
ALTER | 修改表
DROP | 删除数据库/表/视图
CREATE | 创建数据库/表
--------------------------------------------------
标签:DCL,用户名,05,mysql,用户,主机名,USER,SQL,权限
From: https://www.cnblogs.com/GCom/p/17056326.html