【JavaWeb后端学习笔记】MySQL的数据控制语言(Data Control Language,DCL)

MySQL DCL

DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户、控制数据库访问权限。

1、管理用户

管理用户的操作都需要在MySQL自带的 mysql 数据库中进行。

sql 复制代码
-- 查询用户
-- 需要先切换到MySQL自带的 mysql 数据库。用户信息存在mysql的user表中。
use mysql; /* 切换数据库 */
select * from user; /* 查询所有用户 */
sql 复制代码
-- 创建用户
create user '用户名'@'主机名' identified by '密码'; /* localhost表示当前主机,% 表示任意主机*/
sql 复制代码
-- 修改用户密码
alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';
sql 复制代码
-- 删除用户
drop user '用户名'@'主机名';

2、控制权限

MySQL中定义了很多种权限,常用的有一下几种:

权限 说明
ALL, ALL PRIVILEGES 所有权限
SELECT 查询权限
INSERT 插入数据
UPDATE 修改数据
DELETE 删除数据
ALTER 修改表
DROP 删除数据库 / 表 / 视图
CREATE 创建数据库 / 表

权限控制主要用到的DCL语句有:

sql 复制代码
-- 查询权限
show grants for '用户名'@'主机名';
sql 复制代码
-- 授予权限
grant 权限列表 on 数据库名.表明 to '用户名'@'主机名'; /*数据库名和表名可以使用 * 通配符,主机名可以使用 % 通配符*/
sql 复制代码
-- 撤销权限
revoke 权限列表 on 数据库名.表明 from '用户名'@'主机名'; /*数据库名和表名可以使用 * 通配符,主机名可以使用 % 通配符*/
相关推荐
知识分享小能手40 分钟前
React学习教程,从入门到精通, React教程:构建你的第一个 React 应用(1)
前端·javascript·vue.js·学习·react.js·ajax·前端框架
小猿姐1 小时前
KubeBlocks For MySQL 云原生设计分享
mysql·云原生·架构
Java水解1 小时前
MySQL 中的 UPDATE 语句
后端·mysql
speop2 小时前
【datawhale组队学习】RAG技术 -TASK05 向量数据库实践(第三章3、4节)
数据库·学习
阿阳微客2 小时前
CSGO搬砖项目详解:从装备选择到市场策略
笔记·学习·游戏
RanceGru2 小时前
神经网络学习笔记11——高效卷积神经网络架构SqueezeNet
笔记·神经网络·学习
whale fall2 小时前
【雅思020】Opening a bank account
学习
Crazy________2 小时前
03MySQL——DCL权限控制,四种常用函数解析
sql·mysql
慕伏白2 小时前
【慕伏白】CTFHub 技能树学习笔记 -- Web 之密码口令
笔记·学习
麻雀无能为力2 小时前
python 自学笔记13 numpy数组规整
笔记·python·numpy