21.13 INFORMATION_SCHEMA PARTITIONS Table
PARTITIONS
테이블은 테이블 파티션에 대한 정보를 제공합니다. 테이블 파티셔닝 대한 자세한 내용은 19 장 "분할" 을 참조하십시오.
INFORMATION_SCHEMA Name | SHOW Name | Remarks |
---|---|---|
TABLE_CATALOG | | MySQL extension |
TABLE_SCHEMA | | MySQL extension |
TABLE_NAME | | MySQL extension |
PARTITION_NAME | | MySQL extension |
SUBPARTITION_NAME | | MySQL extension |
PARTITION_ORDINAL_POSITION | | MySQL extension |
SUBPARTITION_ORDINAL_POSITION | | MySQL extension |
PARTITION_METHOD | | MySQL extension |
SUBPARTITION_METHOD | | MySQL extension |
PARTITION_EXPRESSION | | MySQL extension |
SUBPARTITION_EXPRESSION | | MySQL extension |
PARTITION_DESCRIPTION | | MySQL extension |
TABLE_ROWS | | MySQL extension |
AVG_ROW_LENGTH | | MySQL extension |
DATA_LENGTH | | MySQL extension |
MAX_DATA_LENGTH | | MySQL extension |
INDEX_LENGTH | | MySQL extension |
DATA_FREE | | MySQL extension |
CREATE_TIME | | MySQL extension |
UPDATE_TIME | | MySQL extension |
CHECK_TIME | | MySQL extension |
CHECKSUM | | MySQL extension |
PARTITION_COMMENT | | MySQL extension |
NODEGROUP | | MySQL extension |
TABLESPACE_NAME | | MySQL extension |
참고 :
PARTITIONS
테이블은 비표준 테이블입니다.이 테이블의 각 레코드는 분할 된 테이블의 개별 파티션 또는 서브 파티션에 대응하고 있습니다.
TABLE_CATALOG
:이 컬럼은 항상def
입니다.TABLE_SCHEMA
:이 컬럼은 테이블이 속한 데이터베이스의 이름을 포함합니다.TABLE_NAME
:이 컬럼은 파티션을 포함하는 테이블의 이름을 포함합니다.PARTITION_NAME
: 파티션의 이름입니다.SUBPARTITION_NAME
:PARTITIONS
테이블 레코드가 서브 파티션을 나타내는 경우,이 열은 서브 파티션의 이름을 포함합니다. 그렇지 않은 경우는NULL
입니다.PARTITION_ORDINAL_POSITION
: 모든 파티션은 정의 된 때와 같은 순서로 인덱스를 붙일 수 있습니다. 첫 번째 파티션1
의 번호가 할당됩니다. 인덱스 설정은 파티션이 추가, 삭제, 재구성되면 변경 될 수 있습니다. 이 컬럼에 표시된 번호는 인덱스 설정의 변경을 고려하여 현재의 순서를 나타냅니다.SUBPARTITION_ORDINAL_POSITION
: 테이블에서 파티션에 인덱스를 붙이는 경우와 마찬가지로 지정된 파티션의 서브 파티션에 인덱스 설정 및 변경이 이루어집니다.PARTITION_METHOD
:RANGE
,LIST
,HASH
,LINEAR HASH
,KEY
또는LINEAR KEY
의 값 중 하나입니다. 즉, 섹션 19.2 "파티션 타입" 에서 설명하고있는 바와 같이, 사용 가능한 하나의 파티션 타입입니다.SUBPARTITION_METHOD
:HASH
,LINEAR HASH
,KEY
또는LINEAR KEY
의 값 중 하나입니다. 즉, 섹션 19.2.6 "서브 파티셔닝" 에서 설명하고있는 바와 같이, 사용 가능한 하나의 서브 파티셔닝 유형입니다.PARTITION_EXPRESSION
: 이것은 테이블의 현재 파티셔닝 기법을 작성한CREATE TABLE
또는ALTER TABLE
문에서 사용 된 파티션 함수의 식입니다.예를 들어, 다음 문을 사용하여
test
데이터베이스에 생성 된 파티션 된 테이블을 생각해 보겠습니다.CREATE TABLE tp ( c1 INT, c2 INT, c3 VARCHAR(25) ) PARTITION BY HASH(c1 + c2) PARTITIONS 4;
이 테이블에서 파티션에 대한 PARTITIONS 테이블 레코드의
PARTITION_EXPRESSION
컬럼은 다음과 같이c1 + c2
로 표시됩니다.mysql>
SELECT DISTINCT PARTITION_EXPRESSION
>FROM INFORMATION_SCHEMA.PARTITIONS
>WHERE TABLE_NAME='tp' AND TABLE_SCHEMA='test';
+----------------------+ | PARTITION_EXPRESSION | +----------------------+ | c1 + c2 | +----------------------+ 1 row in set (0.09 sec)SUBPARTITION_EXPRESSION
: 이것은 테이블의 분할을 정의하는 데 사용되는 파티셔닝 식에 대한PARTITION_EXPRESSION
동작과 마찬가지로 서브 파티션을 정의하는 서브 파티셔닝 식에 대해 작동합니다.테이블에 서브 파티션이없는 경우이 열은
NULL
입니다.PARTITION_DESCRIPTION
:이 컬럼은 RANGE 및 LIST 파티션에 사용됩니다.RANGE
파티션의 경우 파티션VALUES LESS THAN
절에 설정된 값이 포함됩니다. 여기에는 정수 또는MAXVALUE
중 하나를 지정할 수 있습니다.LIST
파티션의 경우이 열에는 파티션VALUES IN
절에 정의 된 값이 포함됩니다. 이것은 정수 값의 쉼표로 구분 된 목록입니다.PARTITION_METHOD
가RANGE
또는LIST
이외 인 파티션의 경우이 열은 항상NULL
입니다.TABLE_ROWS
: 파티션 테이블 행의 수입니다.파티션 된
InnoDB
테이블의 경우TABLE_ROWS
컬럼에 지정된 행수는 SQL 최적화에 사용 된 추정치에 불과하며 반드시 정확하다고는 아닙니다.AVG_ROW_LENGTH
:이 파티션 또는 서브 파티션에 저장된 행의 바이트로 나타낸 평균 길이입니다.이것은
TABLE_ROWS
에서 분할 된DATA_LENGTH
과 같습니다.DATA_LENGTH
: 파티션 또는 서브 파티션에 저장된 모든 행의 바이트로 표현 된 총 길이입니다. 즉, 파티션 또는 서브 파티션에 포함 된 총 바이트 수입니다.MAX_DATA_LENGTH
:이 파티션 또는 서브 파티션에 저장할 수있는 최대 바이트 수입니다.INDEX_LENGTH
:이 파티션 및 하위 파티션의 인덱스 파일의 바이트로 표현 된 길이입니다.DATA_FREE
: 파티션 또는 서브 파티션에 할당하고 있지만 사용되지 않은 바이트 수입니다.CREATE_TIME
: 파티션 또는 서브 파티션이 작성된 시간입니다.UPDATE_TIME
: 파티션 또는 서브 파티션이 마지막으로 수정 된 시간입니다.CHECK_TIME
: 파티션 또는 서브 파티션이 속한 테이블이 마지막으로 확인 된 시간입니다.참고일부 스토리지 엔진은이 시간을 업데이트하지 않습니다. 이러한 스토리지 엔진을 사용하는 테이블의 경우이 값은 항상
NULL
입니다.CHECKSUM
: 체크섬 값이됩니다 (있는 경우). 없는 경우이 열은NULL
입니다.PARTITION_COMMENT
:이 컬럼에는 파티션에 만들어진 의견의 텍스트가 포함됩니다.MySQL 5.6.6 이전에는,이 컬럼 표시 폭 80 문자 였지만,이 길이를 초과하는 파티션 댓글이 문자로 절단했습니다. MySQL 5.6.6 이후에서는 파티션 댓글의 최대 길이는 1024 자에 정의되어
PARTITION_COMMENT
컬럼 표시 폭이 제한에 일치하도록 1024 문자로 증가하고 있습니다 (Bug # 11748924, Bug # 37728).이 컬럼의 기본값은 빈 문자열입니다.
NODEGROUP
: 이것은 파티션이 속한 노드 그룹입니다. 이것은 MySQL 클러스터 테이블에만 관련이 있습니다. 그렇지 않은 경우는이 컬럼의 값은 항상0
입니다.TABLESPACE_NAME
:이 컬럼에는 파티션이 속한 테이블 스페이스의 이름이 포함됩니다. 현재이 컬럼의 값은 항상DEFAULT
입니다.분할되지 않은 테이블에는
INFORMATION_SCHEMA.PARTITIONS
에 하나의 레코드가 있습니다. 그러나PARTITION_NAME
,SUBPARTITION_NAME
,PARTITION_ORDINAL_POSITION
,SUBPARTITION_ORDINAL_POSITION
,PARTITION_METHOD
,SUBPARTITION_METHOD
,PARTITION_EXPRESSION
,SUBPARTITION_EXPRESSION
및PARTITION_DESCRIPTION
컬럼의 값은NULL
입니다. (이 경우PARTITION_COMMENT
열은 공백입니다.)