MySQL 视频课 · 50 集 / DCL:用户管理与权限控制 / P25

第 25 集 / 共 50 · DCL:用户管理与权限控制 · 视频 p=25 · 时长 8:25

P25 25. 基础-SQL-DCL-权限控制-

讲义 2.7.2 权限控制 p52

按主题对应,非逐句切分

来源与核对说明

以同版讲义的公开镜像核对章节与页码(镜像非官方出品);非逐字稿,示例为原创补充。

本页是学习笔记,不等同于视频逐字稿。原声字幕未取得(匿名接口字幕轨为空且需登录,未使用任何账号),也没有逐句讲解记录;讲义只按节与页码对应,切点未逐句确证。

讲义索引:p52 · 2.7.2 权限控制 · 切点 notexact

讲义是第三方公开镜像(95 页 PDF),不是官方原件;这里只用它核对章节顺序与页码,不转载正文。

完整来源说明与变更记录 →

看视频,对照阅读:在新标签打开原视频(p=25)

DCL 的第二半:账号建好后,怎么精确地给权限、收权限。

复习模式:快速跳知识点(详解在下方各节)

复习顺序:先看“一句话理解”能否复述,再扫步骤,最后做自测;答不出时回到小例与易错。

一句话理解

权限控制决定“连进来以后能做什么”:给账号授权、收回权限,粒度可以细到某库某表。

按这 4 步做

  1. 先有账号再授权:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码'; 建号,然后 GRANT 权限列表 ON 库名.表名 TO '用户名'@'主机名'; 授权,多个权限用逗号分隔。MySQL 8 的 GRANT 不会自动建号,账号不存在会报 1410。
  2. 收回:REVOKE 权限列表 ON 库名.表名 FROM '用户名'@'主机名'。
  3. 查看:SHOW GRANTS FOR '用户名'@'主机名',确认实际生效的权限。
  4. 用该账号实际连一次,验证能查、不能改,而不是只看语句执行成功。

小例

先准备本集练习数据:p25.sql · 练习库说明

SQL 示例
-- 本机学习演示:账号只在本机,脚本结束就删号;密码是写出来给人看的占位串,不是真实口令
DROP USER IF EXISTS 'mysqlnotes_demo'@'localhost';
CREATE USER 'mysqlnotes_demo'@'localhost' IDENTIFIED BY 'LocalOnly_Demo_ChangeMe_01';
GRANT SELECT, INSERT ON mysqlnotes_p25.employee TO 'mysqlnotes_demo'@'localhost';
SHOW GRANTS FOR 'mysqlnotes_demo'@'localhost';
REVOKE INSERT ON mysqlnotes_p25.employee FROM 'mysqlnotes_demo'@'localhost';
DROP USER 'mysqlnotes_demo'@'localhost';

【原创演示】这是本机学习用的演示账号:'mysqlnotes_demo'@'localhost' 只在你自己机器上存在,由本页练习脚本 p25.sql 建库、建号,结束时删号,和视频里的 itcast/heima 账号无关;密码 LocalOnly_Demo_ChangeMe_01 是明显的占位串,不是任何真实口令或生产凭据。这几句演示“建号 → 给 mysqlnotes_p25.employee 授查+插 → SHOW GRANTS 复核 → 收回插入只留查询 → 删号”,授权范围写死到库.表,不用 *.*。本页原创例已在隔离的 MySQL 8.0.46 实例跑通(临时库 + 临时账号,结束即清理);真实环境请换成自己保管的强密码,别把密码写进仓库。

易错点

30 秒速记

GRANT/REVOKE 权限 ON 库.表 TO/FROM 账号;SHOW GRANTS 复核;范围越小越好。

自测(2 题,先答再展开)

自测 1:为什么示例把权限限定到 mysqlnotes_p25.employee,而不是整库?

权限范围越小,误用和被盗的影响面越小;只读账号不需要同库其它表的写权限。

自测 2:授予成功后怎样确认真的生效?

先用 SHOW GRANTS 看记录,再用该账号实际连一次执行允许和不允许的操作;两步都过才算验证。

材料与来源

展开材料出处、讲义页码与证据等级
材料类型 / 位置支持了什么
P25 原视频页(BV1Kr4y1i7ru)平台视频页 · P25;采样静帧 t012/t20/t30/t40/t50/t60/t70/t80/tendt40 帧可见 Workbench 内的建号/改密/删号演示画面。
MySQL 8.0 Reference:GRANT 语句官方文档核对权限列表与库.表范围的写法,未逐字引用。

P25 标题为“DCL-权限控制”。采样帧 t40 可见讲师在 Workbench 里演示建号/改密/删号(账号名形如 itcast@localhost、heima@%),具体授权语句未在帧中取得;正文 GRANT/REVOKE 示例按 MySQL 8.0 语法原创编写,使用 localhost 演示账号与独立练习库 mysqlnotes_p25;本页原创例已在隔离的 MySQL 8.0.46 实测通过(账号建完即删,公开的密码是本机占位串,不含真实凭据),未照抄视频账号。

讲义对照:讲义 2.7.2 权限控制 · p52(公开镜像;按主题对应,切点 notexact)

  • 画面静帧 9 帧,采样点 0:12–8:12 / 全片 8:25(只用于确认画面主题,不作内容边界)
  • 原声字幕未取得:匿名接口字幕轨为空且需登录,未使用任何账号

等级含义:平台视频页 / 官方文档 / 课件 = 原始材料;二手整理 = 参考;推断 = 未经核实。站内补充的解释与练习会在此说明。

下载本集 Markdown