25. TABLESPACES , 26. TABLE_CONSTRAINTS , 27. TABLE_PRIVILEGES

25. TABLESPACES

TABLESPACES表提供有关活动MySQL Cluster表空间的信息。

TABLESPACES表有以下列:

  • TABLESPACE_NAME :表空间名称
  • ENGINE :表空间使用的存储引擎名称
  • TABLESPACE_TYPE :表空间类型
  • LOGFILE_GROUP_NAME:分配给表空间的日志文件组的名称。
  • EXTENT_SIZE :属于表空间的文件使用的扩展区的大小(以字节为单位)。
  • AUTOEXTEND_SIZE :不适用
  • MAXIMUM_SIZE :不适用
  • NODEGROUP_ID :不适用
  • TABLESPACE_COMMENT:不适用

Notes

  • TABLESPACES表是非标准的INFORMATION_SCHEMA表。

  • TABLESPACES表不提供有关InnoDB表空间的信息。 有关InnoDB表空间元数据,请参阅INFORMATION_SCHEMAINNODB_SYS_TABLESPACESINNODB_SYS_DATAFILES表。 FILES表还为InnoDB表空间提供元数据。

26. TABLE_CONSTRAINTS

TABLE_CONSTRAINTS表描述哪些表具有约束。

TABLE_CONSTRAINTS表有以下列:

  • CONSTRAINT_CATALOG:约束所属目录的名称。该值始终为def。
  • CONSTRAINT_SCHEMA :约束所属的schema(数据库)的名称。
  • CONSTRAINT_NAME :约束名称
  • TABLE_SCHEMA :表所属的schema(数据库)的名称。
  • TABLE_NAME :表名称
  • CONSTRAINT_TYPE :约束的类型。 值可以是UNIQUE,PRIMARY KEY,FOREIGN KEY或CHECK。 这是CHAR(非ENUM)列。 在MySQL支持CHECK之前,CHECK值不可用。
    当Non_unique列为0时,UNIQUE和PRIMARY KEY信息与从SHOW INDEX的输出中的Key_name列获得的信息大致相同。

示例

mysql> select * from table_constraints where TABLE_SCHEMA='test';
+--------------------+-------------------+-----------------+--------------+------------+-----------------+
| CONSTRAINT_CATALOG | CONSTRAINT_SCHEMA | CONSTRAINT_NAME | TABLE_SCHEMA | TABLE_NAME | CONSTRAINT_TYPE |
+--------------------+-------------------+-----------------+--------------+------------+-----------------+
| def                | test              | PRIMARY         | test         | t1         | PRIMARY KEY     |
| def                | test              | CO              | test         | t3         | FOREIGN KEY     |
+--------------------+-------------------+-----------------+--------------+------------+-----------------+
2 rows in set (0.00 sec)

27. TABLE_PRIVILEGES

TABLE_PRIVILEGES表提供有关表权限的信息。它从mysql.tables_priv系统表中获取其值。

TABLE_PRIVILEGES表有以下列:

  • GRANTEE :授予权限的帐户的名称,格式为"user_name"@"host_name"
  • TABLE_CATALOG :表所属目录的名称。该值始终为def。
  • TABLE_SCHEMA :表所属的schema(数据库)的名称。
  • TABLE_NAME :表名称
  • PRIVILEGE_TYPE:授予的特权。该值可以是可以在表级别授予的任何权限;请参见“GRANT语法”。每行列出一个权限,因此被授权者拥有每个表权限一行。
  • IS_GRANTABLE :如果用户具有GRANT OPTION权限,则为YES,否则为NO。输出不会将GRANT OPTION列为具有PRIVILEGE_TYPE =’GRANT OPTION’的单独行。

Notes

  • TABLE_PRIVILEGES表是非标准的INFORMATION_SCHEMA表。

以下语句不等价:

mysql> select * from information_schema.table_privileges;
+-----------------------------+---------------+--------------+------------+----------------+--------------+
| GRANTEE                     | TABLE_CATALOG | TABLE_SCHEMA | TABLE_NAME | PRIVILEGE_TYPE | IS_GRANTABLE |
+-----------------------------+---------------+--------------+------------+----------------+--------------+
| 'mysql.session'@'localhost' | def           | mysql        | user       | SELECT         | NO           |
| 'mysql.sys'@'localhost'     | def           | sys          | sys_config | SELECT         | NO           |
+-----------------------------+---------------+--------------+------------+----------------+--------------+



mysql> show grants;
+---------------------------------------------------------------------+
| Grants for root@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION        |
+---------------------------------------------------------------------+

猜你喜欢

转载自blog.csdn.net/wanbin6470398/article/details/81836160