MySQL实现了复杂的访问控制和权限系统,允许您创建用于处理客户端操作的全面的访问规则,并有效防止未经授权的客户端访问数据库系统。


1.当客户端连接到服务器时,MySQL访问控制有两个阶段:

  • 连接验证:连接到MySQL数据库服务器的客户端需要有一个有效的用户名和密码。此外,客户端连接的主机必须与MySQL授权表中的主机相匹配。

  • 请求验证:当连接成功建立后,对于客户端发出的每个语句,MySQL会检查客户端是否具有足够的权限来执行该特定语句。 MySQL能够检查数据库,表和字段级别的权限

2.MySQL安装程序自动创建一个名为mysql的数据库。

mysql数据库包含五个主要的授权表。 您可通过GRANTREVOKE等语句间接操作这些表

  • user表:包含用户帐户和全局权限列。MySQL使用user表来接受或拒绝来自主机的连接。 在user表中授予的权限对MySQL服务器上的所有数据库都有效。

  • db表:包含数据库级权限。MySQL使用数据库表来确定用户可以访问哪个数据库以及哪个主机。在db表中的数据库级授予的特权适用于数据库,所有对象属于该数据库,例如触发器视图存储过程等。

  • table_privcolumns_priv表:包含表级和列级权限。 在table_priv表中授予的权限适用于表及其列,而在columns_priv表中授予的权限仅适用于表的特定列。

  • procs_priv表:包含存储函数和存储过程的权限。


MySQL利用这些表来控制MySQL数据库服务器的权限。 在实现自己的灵活访问控制系统之前,了解这些表非常重要。

推荐:mysql教程

以上就是MySQL访问控制系统入门的详细内容,更多请关注悠悠之家其它相关文章!

点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部