【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 '用户名'@'主机名'; /*数据库名和表名可以使用 * 通配符,主机名可以使用 % 通配符*/
相关推荐
想睡觉的树11 分钟前
windows双系统下ubuntu20.04安装教程
学习
wuxuanok21 分钟前
八股——Kafka相关
java·笔记·后端·学习·kafka
不可描述的两脚兽25 分钟前
学习笔记《区块链技术与应用》第六天 问答 匿名技术 零知识证明
笔记·学习·区块链
qq_3863226933 分钟前
华为网路设备学习-26(BGP协议 二)路径属性
学习
Elohim81539 分钟前
FreeRTOS学习(一)
学习·freertos
焊锡与代码齐飞1 小时前
嵌入式第十八课!!数据结构篇入门及单向链表
c语言·数据结构·学习·算法·链表·排序算法
Stanford_11061 小时前
关于大数据的基础知识(三)——数据安全与合规
大数据·网络·c++·物联网·学习·微信小程序·微信开放平台
亿维数组2 小时前
【CSAPP全书详细笔记系列】第一章-计算机系统概述
c语言·笔记·计算机系统
伏 念2 小时前
音视频学习笔记
笔记·音视频
啃火龙果的兔子2 小时前
Node.js (Express) + MySQL + Redis构建项目流程
mysql·node.js·express