的分区
Table提供表分区信息。该表中的每一行都对应于分区表的单个分区或子分区。有关分区表的更多信息,请参见22章,分区。
的分区
表有这些列:
TABLE_CATALOG
表所属的目录的名称。这个值总是
def
。TABLE_SCHEMA
表所属的模式(数据库)的名称。
TABLE_NAME
包含分区的表的名称。
PARTITION_NAME
分区的名称。
SUBPARTITION_NAME
如果
分区
表中行代表一个子分区,子分区的名称;否则零
。PARTITION_ORDINAL_POSITION
所有分区都按照定义时的顺序建立索引
1
分配给第一个分区的编号。索引可以随着分区的添加、删除和重组而改变;该列显示的数字反映了当前的顺序,考虑到任何索引更改。SUBPARTITION_ORDINAL_POSITION
给定分区内的子分区也按照与表内分区索引相同的方式进行索引和重新索引。
PARTITION_METHOD
其中一个价值观
范围
,列表
,哈希
,线性散列
,关键
,或线性关键
;中讨论的可用分区类型之一第22.2节“分区类型”。SUBPARTITION_METHOD
其中一个价值观
哈希
,线性散列
,关键
,或线性关键
;中讨论的可用子分区类型之一第22.2.6节,“分区”。PARTITION_EXPRESSION
控件中使用的分区函数的表达式
创建表
或ALTER TABLE
语句,用于创建表的当前分区方案。方法中创建的分区表
测试
数据库使用此语句:CREATE TABLE tp (c1 INT, c2 INT, c3 VARCHAR(25)) PARTITION BY HASH(c1 + c2) PARTITION 4;
的
PARTITION_EXPRESSION
中的列。分区
该表中分区的表行将显示C1 + c2
,如图所示:从信息schema中选择不同的PARTITION_EXPRESSION。TABLE_NAME='tp'和TABLE_SCHEMA='test'的分区;+----------------------+ | PARTITION_EXPRESSION | +----------------------+ | c1 + c2 | +----------------------+
SUBPARTITION_EXPRESSION
对于将表的子分区定义为的子分区表达式,这以相同的方式工作
PARTITION_EXPRESSION
用于定义表的分区的分区表达式。如果表没有子分区,则此列为
零
。PARTITION_DESCRIPTION
此列用于RANGE和LIST分区。对于一个
范围
分区时,它包含分区中设置的值值小于
子句,该子句可以是整数或MAXVALUE
。对于一个列表
分区时,此列包含分区中定义的值值
子句,它是逗号分隔的整数值列表。对于以下分区
PARTITION_METHOD
而不是范围
或列表
,这一栏总是零
。TABLE_ROWS
分区中的表行数。
为分区
InnoDB
表中给出的行数TABLE_ROWS
列只是SQL优化中使用的估计值,可能并不总是准确的。AVG_ROW_LENGTH
存储在此分区或子分区中的行的平均长度,以字节为单位。这和
DATA_LENGTH
除以TABLE_ROWS
。DATA_LENGTH
存储在这个分区或子分区中的所有行的总长度,以字节为单位;也就是说,分区或子分区中存储的字节总数。
MAX_DATA_LENGTH
可存储在该分区或子分区中的最大字节数。
INDEX_LENGTH
此分区或子分区的索引文件的长度,以字节为单位。
的分区
NDB
表,无论表使用隐式分区还是显式分区,都可以使用INDEX_LENGTH
列值总是0。但是,您可以使用ndb_desc实用程序。DATA_FREE
分配给分区或子分区但未使用的字节数。
CREATE_TIME
创建分区或子分区的时间。
UPDATE_TIME
上一次修改分区或子分区的时间。
CHECK_TIME
最后一次检查该分区或子分区所属的表。
为分区
InnoDB
表中,值为always零
。校验和
校验和值(如果有的话);否则
零
。PARTITION_COMMENT
注释的文本(如果分区有注释的话)。如果不是,则该值为空。
分区注释的最大长度定义为1024个字符,分区注释的显示宽度为
PARTITION_COMMENT
列也是1024个字符,以匹配此限制。节点组
这是分区所属的节点组。这只与NDB集群表相关;否则,值为always
0
。TABLESPACE_NAME
分区所属的表空间名称。值总是
默认的
,除非该表使用NDB
存储引擎(请参阅笔记在本节的末尾)。
笔记
分区
是非标准的INFORMATION_SCHEMA
表格使用任何存储引擎以外的表
NDB
没有被分区的有一行分区
表格但是,的值PARTITION_NAME
,SUBPARTITION_NAME
,PARTITION_ORDINAL_POSITION
,SUBPARTITION_ORDINAL_POSITION
,PARTITION_METHOD
,SUBPARTITION_METHOD
,PARTITION_EXPRESSION
,SUBPARTITION_EXPRESSION
,PARTITION_DESCRIPTION
列都是零
。此外,PARTITION_COMMENT
本例中的列为空白。一个
NDB
表中没有显式分区的分区
表为NDB集群中的每个数据节点。对于每个这样的行:的
SUBPARTITION_NAME
,SUBPARTITION_ORDINAL_POSITION
,SUBPARTITION_METHOD
,PARTITION_EXPRESSION
,SUBPARTITION_EXPRESSION
,CREATE_TIME
,UPDATE_TIME
,CHECK_TIME
,校验和
,TABLESPACE_NAME
列都是零
。的
PARTITION_METHOD
总是关键
。的
节点组
列是默认的
。的
PARTITION_EXPRESSION
和PARTITION_COMMENT
列为空。