对存取控制的第二阶段(请求证实),如果请求涉及表,服务器可以另外参考tables_priv 和columns_priv 表。这些表的字段如下: 表名称tables_priv columns_priv 范围字段Host Host Db Db User User Table_name Table_name Column_name 权限字段Table_priv Column_priv Column_priv 其他字段Timestamp Timestamp Grantor
每个授权表包含范围字段和权限字段。
范围字段决定表中每个条目的范围,即,条目适用的上下文。例如,一个user 表条目的Host 和User 值为thomas.loc.gov 和bob 将被用于证实来自主机thomas.loc.gov 的bob 对服务器的连接。同样,一个db 表条目的Host 、User 和Db 字段的值是thomas.loc.gov 、bob 和reports 将用在bob 从主机联接thomas.loc.gov 存取reports 数据库的时候。tables_priv 和columns_priv 表包含范围字段,指出每个条目适用的表或表/列的组合。
对于检查存取的用途,比较Host 值是忽略大小写的。User 、Passwor d、Db 和Table_name 值是区分大小写的。Column_name 值在MySQL3.22.12或以后版本是忽略大小写的。
权限字段指出由一个表条目授予的权限,即,可实施什么操作。服务器组合各种的授权表的信息形成一个用户权限的完整描述。为此使用的规则在6.8存取控制,阶段2:请求证实描述。
范围字段是字符串,如下所述;每个字段的缺省值是空字符串:
字段名类型Host CHAR(60) User CHAR(16) Password CHAR(16) Db CHAR(64) (tables_priv 和columns_priv 表为CHAR(60) )
(编辑:aniston)
|