3

你好在 mysql 这些是 INFORMATION_SCHEMA.SCHEMA_PRIVILEGES 表中的列

+----------------+--------------+------+-----+---------+-------+
| Field          | Type         | Null | Key | Default | Extra |
+----------------+--------------+------+-----+---------+-------+
| GRANTEE        | varchar(81)  | NO   |     |         |       |
| TABLE_CATALOG  | varchar(512) | YES  |     | NULL    |       |
| TABLE_SCHEMA   | varchar(64)  | NO   |     |         |       |
| PRIVILEGE_TYPE | varchar(64)  | NO   |     |         |       |
| IS_GRANTABLE   | varchar(3)   | NO   |     |         |       |
+----------------+--------------+------+-----+---------+-------+

所以我想知道所有这些列代表什么我知道第三列和第四列代表什么,但我不知道其他列有什么可以解释一下吗?我一直在网上搜索,但我没有找到任何内容,只有该列的一些示例值。

4

1 回答 1

5

根据MySQL 文档,这些值只是从 mysql.db 表中复制而来。所有这些都提供了一种替代方法来查找所有已被授予数据库级权限的用户。

以下是每列代表的内容的细分

  • GRANTEE是授予权限的 mysql 用户(user@ hostfrom mysql.db
  • TABLE_CATALOG为这个表定义的一个字段,它与 SQL-92 兼容
  • TABLE_SCHEMA是允许授予的数据库(db 中的列mysql.db
  • PRIVILEGE_TYPE是授予的单个数据库级权限mysql.db
    • Select_priv
    • 插入隐私
    • 更新隐私
    • 删除_priv
    • 创建_priv
    • Drop_priv
    • References_priv
    • Index_priv
    • Alter_priv
    • 创建_tmp_table_priv
    • Lock_tables_priv
    • Create_view_priv
    • Show_view_priv
    • create_routine_priv
    • Event_priv
    • Trigger_priv
  • IS_GRANTABLE告诉您用户是否已定义WITH GRANTS(Grant_priv 列mysql.db)。换句话说,该值告诉 mysql 用户是否可以将特定的数据库级权限授予其他 mysql 用户
于 2012-05-14T21:19:58.647 回答