千家信息网

MySQL数据库GRANT和REVOKE语句有哪些影响

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,MySQL数据库GRANT和REVOKE语句有哪些影响,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。MySQL管理员应该知道怎样通过指定
千家信息网最后更新 2025年01月22日MySQL数据库GRANT和REVOKE语句有哪些影响

MySQL数据库GRANT和REVOKE语句有哪些影响,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

  MySQL管理员应该知道怎样通过指定哪些用户可连接到服务器、从哪里进行连接,以及在连接时做什么,来设置MySQL用户账号。MySQL3.22.11引入了两个更容易进行这项工作的语句:GRANT语句创建MySQL用户并指定其权限,REVOKE语句删除权限。这两个语句充当mysql数据库中的授权表的前端,并提供直接操纵这些表内容的可选择的方法。下面小编来讲解下MySQL数据库GRANT和REVOKE语句有哪些影响?

  MySQL数据库GRANT和REVOKE语句有哪些影响

  授权表内容

  user可连接到服务器的用户和他们拥有的任何全局特权db数据库级的特权tables_priv表级特权columns_priv列级特权

  还有第五个授权表(host),但它不受GRANT或REVOKE的影响。

  当您为某个用户发布GRANT语句时,应在user表中为该用户创建一个项。如果该语句指定了所有全局特权(管理权限或用于所有数据库的权限),则这些指定也被记录在user表中。如果指定了数据库、表或列的权限,它们将记录在db、tables_priv和columns_priv表中。

  使用GRANT和REVOKE语句比直接修改授权表更容易。但是,建议您最好通过阅读第12章来补充本章的内容,第12章中详细讨论了授权表。这些表非常重要,作为一位管理员应该了解这些表是怎样在GRANT和REVOKE语句级上工作的。

  本节下面的部分将讨论如何设置MySQL用户的账号和授权,还将介绍如何取消权限以及从授权表中删除全部用户,并且将考虑一个困扰许多新的MySQL管理员的难题。

  您还要考虑使用mysqlaccess和mysql_setpermission脚本,它们是MySQL分发包的组成部分。这些是Perl的脚本,它们提供了设置用户账号的GRANT语句的代用品。mysql_setpermission需要具有DBI的支持环境。

  MySQL数据库GRANT和REVOKE语句有哪些影响

  创建新用户和授权

  GRANT语句的语法如下:

  GRANTprivileges(columns)

  ONwhat

  TOuserIDENTIFIEDBY"password"

  WITHGRANTOPTION

  要使用该语句,需要填写以下部分:

  privileges分配给用户的权限。下表列出了可在GRANT语句中使用的权限说明符:

  权限说明符权限允许的操作

  上表显示的第一组权限说明符适用于数据库、表和列。第二组说明符是管理特权。通常,这些权限的授予相当保守,因为它们会影响服务器的操作(例如,SHUTDOWN特权不是按每天来分发的权限)。第三组说明符是特殊的。ALL的意思是所有的权限,而USAGE的意思是无权限即创建用户,但不授予任何的权限。

  columns权限适用的列。这是可选的,只来设置列专有的权限。如果命名多于一个列,则用逗号分开。

  what权限应用的级别。权限可以是全局的(适用于所有数据库和所有的表)、数据库专有的(适用于某个数据库中的所有表),或表专有的。可以通过指定一个COLUMNS子句将权限授予特定的列。

  user使用权限的用户。它由用户名和主机名组成。在MySQL中,不仅指定谁进行连接,还要指定从哪里连接。它允许您拥有两个带有相同名字的、从不同位置连接的用户。MySQL允许在它们之间进行区别并相互独立地分配权限。

  MySQL的用户名就是您在连接到服务器时指定的名字。该名字与您的UNIX注册名或Windows名的没有必然连系。缺省设置时,客户机程序将使用您注册的名字作为MySQL的用户名(如果您不明确指定一个名字的话),但这只是一个约定。有关将root作为可以操作一切MySQL的超级用户名也是这样,就是一种约定。您也可以在授权表中将此名修改成nobody,然后作为nobody用户进行连接,以执行需要超级用户特权的操作。

  password分配给该用户的口令。这是可选的。如果您不给新用户指定IDENTIFIEDBY子句,该用户不分配口令(是非安全的)。对于已有的用户,任何指定的口令将替代旧口令。如果不指定新口令,用户的旧口令仍然保持不变。当您确实要使用IDENTIFIEDBY时,该口令串应该是直接量,GRANT将对口令进行编码。当用SETPASSWORD语句时,不要使用PASSWORD()函数。

  WITHGRANTOPTION子句是可选的。如果包含该子句,该用户可以将GRANT语句授予的任何权限授予其他的用户。可以使用该子句将授权的能力授予其他的用户。

看完上述内容,你们掌握MySQL数据库GRANT和REVOKE语句有哪些影响的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

用户 权限 语句 数据 数据库 口令 特权 影响 内容 名字 子句 说明符 管理 服务器 用户名 分配 服务 两个 全局 方法 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 vm虚拟化服务器sn码怎么查 数据库中恢复的原理 ftp服务器工作目录是啥 第三方网络安全测试 服务器计算芯片 广州工业软件开发价钱 数据库负载均衡代理 三年级小学生网络安全小报 中国网络安全人才市场 软件开发结构化与非结构化 崇明区通信网络技术结构设计 东营公安局网络安全监察大队 服务器ssh安全访问数据库 网吧怎么用代理服务器 网络安全技术体系和结构 淮安软件开发择优推荐 电脑连校园网无法连接认证服务器 hmcl怎么玩租赁服务器 北京币天下网络技术有限公司 局域网服务器接收信号延时 网络技术人员招聘试题 零基础做软件开发的书籍 我的世界手机版怎么创服务器 钉钉打开文件显示与服务器断开 软件开发权限设计文档 switchlite代理服务器 dellt130服务器单根内存 天涯明月刀服务器能一起玩吗 中国移动软件开发笔试题目 软件开发教程平台
0