- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
权限管理的办法
了解MySQL的权限系统【任务提出】王宁在使用Navicat客户端连接MySQL服务器时,有一次误将root用户的密码输入123(正确密码是123456),单击“确定”按钮后,双击生成的连接,结果返回了“1045-Accessdeniedforuser‘root’@’localhost’(usingpassword:YES)”的错误提示。因此,他需要根据MySQL权限系统的相关知识,来解决这个问题。
权限表MySQL是一个多用户数据库管理系统,具有功能强大的访问控制系统,可以为不同用户指定允许的权限。掌握其授权机制是开始操作MySQL数据库必须要走的第1步。下面将简单介绍如何利用MySQL权限表的结构和服务器决定访问权限。
权限表通过网络连接服务器的客户对MySQL数据库的访问由权限表内容来控制。这些表位于mysql数据库中,并在第1次安装MySQL的过程中初始化。权限表共有5个表:user、db、tables_priv、columns_priv和procs_priv。当MySQL服务启动时,会首先读取mysql中的权限表,并将表中的数据装入内存。当用户进行存取操作时,MySQL会根据这些表中的数据做相应的权限控制。
权限表user表是MySQL中最重要的一个权限表,记录允许连接到服务器的账号信息。user表列出可以连接服务器的用户及其口令,并且指定他们有哪种全局(超级用户)权限。在user表启用的任何权限均是全局权限,并适用于所有数据库。例如,如果用户启用了DELETE权限,则该用户可以从任何表中删除记录。权限表user和db的结构和作用01(1)user表
权限表db表也是MySQL数据库中非常重要的权限表。db表中存储了用户对某个数据库的操作权限,决定用户能从哪个主机存取哪个数据库。(2)db表
权限表tables_priv表用来对表设置操作权限columns_priv表用来对表的某一列设置权限procs_priv表可以对存储过程和存储函数设置操作权限tables_priv表、columns_priv表和procs_priv表02
MySQL权限系统的工作原理为了确保数据库的安全性与完整性,系统并不希望每个用户可以执行所有的数据库操作。当MySQL允许一个用户执行各种操作时,它将首先核实用户向MySQL服务器发送的连接请求,然后确认用户的操作请求是否被允许。MySQL的访问控制分为两个阶段:连接核实阶段请求核实阶段
MySQL权限系统的工作原理MySQL使用user表中的3个字段(Host、User和authentication_string)进行身份检查,服务器只有在用户提供主机名、用户名和密码并与user表中对应的字段值完全匹配时才接受连接。当用户试图连接MySQL服务器时,服务器基于用户提供的信息来验证用户身份,如果不能通过身份验证,服务器会完全拒绝该用户的访问。如果能够通过身份验证,则服务器接受连接,然后进入第2个阶段等待用户请求。连接核实阶段01
MySQL权限系统的工作原理一旦连接得到许可,服务器进入请求核实阶段。在这一阶段,MySQL服务器对当前用户的每个操作都进行权限检查,判断用户是否有足够的权限来执行它。用户的权限保存在user、db、tables_priv或columns_priv权限表中。在MySQL权限表的结构中,user表在最顶层,是全局级的。下面是db表,它是数据库层级的。最后才是tables_priv表和columns_priv表,它们是表级和列级的。请求核实阶段02
MySQL权限系统的工作原理确认权限时,MySQL首先检查user表,如果指定的权限没有在user表中被授权,MySQL服务器将检查db表,在该层级的SELECT权限允许用户查看指定数据库的所有表的数据。如果在该层级没有找到限定的权限,则MySQL继续检查tables_priv表以及columns_priv表。如果所有权限表都检查完毕,依旧没有找到允许的权限操作,MySQL服务器将返回错误信息,用户操作不能执行,操作失败。请求核实阶段02
MySQL权限系统的工作原理MySQL请求核实阶段的过程接收到用户操作请求检查user表中权限检查db表中权限检查tables_priv表中权限检查columns_priv表中权限不允许用户执行该操作执行用户请求的操作无无无无有有有有
了解MySQL的权限系统【任务实施】王宁掌握了用户权限验证的方法和步骤后,根据错误提示信息,将root用户的密码修正为123456,成功使Navicat连接到了MySQL服务器。
权限管理
您可能关注的文档
- 曲线地段病害防治课件.pptx
- 曲线间的夹直线设计应符合下列规定正线联络线及车辆基地出入.pptx
- 曲轴飞轮组的构造课件.pptx
- 曲轴飞轮组的维修课件.pptx
- 驱动电机参数调试课件.pptx
- 驱动电机数据读取课件.pptx
- 驱动电机与齿轮油课件.pptx
- 取送调车作业RAILWAY课件.pptx
- 全波整流电路周彩霞课件.pptx
- 全程全网通信信号系刘红梅课件.pptx
- 2025年河南省郑州市巩义市高三下学期考前数学适应性演练(二)试题.docx
- 2025年河南省郑州市惠济区高三下学期数学基础题、中档题型强化训练.docx
- 2025年河南省郑州市巩义市高三下学期第八周周测数学试卷.docx
- 2025年河南省郑州市新密市高三下学期3月联考数学试卷.docx
- 2025年河南省郑州市惠济区高三一模数学试卷及答案.docx
- 2025年河南省郑州市巩义市高三一模数学试卷及答案.docx
- 2025年河南省郑州市巩义市高三英才班下学期数学限时训练试题.docx
- 2025年河南省郑州市巩义市高三下学期数学基础题、中档题型强化训练.docx
- 2025年河南省郑州市巩义市高三下学期3月联考数学试卷.docx
- 2025年河南省郑州市二七区高三下学期考前数学适应性演练(二)试题.docx
文档评论(0)