1.当客户端连接到服务器时,MysqL访问控制有两个阶段:
连接验证
:连接到MysqL数据库服务器的客户端需要有一个有效的用户名和密码。此外,客户端连接的主机必须与MysqL授权表中的主机相匹配。请求验证
:当连接成功建立后,对于客户端发出的每个语句,MysqL会检查客户端是否具有足够的权限来执行该特定语句。 MysqL能够检查数据库,表和字段级别的权限
MysqL数据库
包含五个主要的授权表。 您可通过GRANT
和REVOKE
等语句间接操作这些表
user
表:包含用户帐户和全局权限列。MysqL使用user
表来接受或拒绝来自主机的连接。 在user
表中授予的权限对MysqL服务器上的所有数据库都有效。db
表:包含数据库级权限。MysqL使用数据库表来确定用户可以访问哪个数据库以及哪个主机。在db
表中的数据库级授予的特权适用于数据库,所有对象属于该数据库,例如表
,触发器
,视图
,存储过程
等。table_priv
和columns_priv
表:包含表级和列级权限。 在table_priv
表中授予的权限适用于表及其列,而在columns_priv
表中授予的权限仅适用于表的特定列。procs_priv
表:包含存储函数和存储过程的权限。
MysqL利用这些表来控制MysqL数据库服务器的权限。 在实现自己的灵活访问控制系统之前,了解这些表非常重要。
推荐:mysql教程
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。