Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 27.1Mb
PDF (A4) - 27.1Mb
EPUB - 7.5Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  INFORMATION_SCHEMA テーブル  /  INFORMATION_SCHEMA PARTITIONS テーブル

21.13 INFORMATION_SCHEMA PARTITIONS テーブル

PARTITIONS テーブルは、テーブルパーティションに関する情報を提供します。テーブルのパーティション化に関する詳細は、第19章「パーティション化を参照してください。

INFORMATION_SCHEMA SHOW 備考
TABLE_CATALOG   MySQL 拡張
TABLE_SCHEMA   MySQL 拡張
TABLE_NAME   MySQL 拡張
PARTITION_NAME   MySQL 拡張
SUBPARTITION_NAME   MySQL 拡張
PARTITION_ORDINAL_POSITION   MySQL 拡張
SUBPARTITION_ORDINAL_POSITION   MySQL 拡張
PARTITION_METHOD   MySQL 拡張
SUBPARTITION_METHOD   MySQL 拡張
PARTITION_EXPRESSION   MySQL 拡張
SUBPARTITION_EXPRESSION   MySQL 拡張
PARTITION_DESCRIPTION   MySQL 拡張
TABLE_ROWS   MySQL 拡張
AVG_ROW_LENGTH   MySQL 拡張
DATA_LENGTH   MySQL 拡張
MAX_DATA_LENGTH   MySQL 拡張
INDEX_LENGTH   MySQL 拡張
DATA_FREE   MySQL 拡張
CREATE_TIME   MySQL 拡張
UPDATE_TIME   MySQL 拡張
CHECK_TIME   MySQL 拡張
CHECKSUM   MySQL 拡張
PARTITION_COMMENT   MySQL 拡張
NODEGROUP   MySQL 拡張
TABLESPACE_NAME   MySQL 拡張

:

  • PARTITIONS テーブルは、非標準テーブルです。

    このテーブルの各レコードは、パーティション化されたテーブルの個々のパーティションまたはサブパーティションに対応しています。

  • TABLE_CATALOG: このカラムは常に def です。

  • TABLE_SCHEMA: このカラムはテーブルが属しているデータベースの名前を含みます。

  • TABLE_NAME: このカラムはパーティションを含むテーブルの名前を含みます。

  • PARTITION_NAME: パーティションの名前です。

  • SUBPARTITION_NAME: PARTITIONS テーブルレコードがサブパーティションを表す場合、このカラムはサブパーティションの名前を含みます。そうでない場合は、NULL になります。

  • PARTITION_ORDINAL_POSITION: すべてのパーティションは、定義されたときと同じ順序でインデックスが付けられます。最初のパーティションに 1 の番号が割り当てられます。インデックス設定は、パーティションが追加、削除、再編成されると変わることがあります。このカラムに表示された番号は、インデックス設定の変更を考慮した現在の順序を表します。

  • SUBPARTITION_ORDINAL_POSITION: テーブル内でパーティションにインデックスを付ける場合と同様に、指定されたパーティション内のサブパーティションにもインデックスの設定および変更が行われます。

  • PARTITION_METHOD: RANGELISTHASHLINEAR HASHKEY、または LINEAR KEY のいずれかの値です。つまり、セクション19.2「パーティショニングタイプ」で説明しているように、利用可能ないずれかのパーティショニングタイプになります。

  • SUBPARTITION_METHOD: HASHLINEAR HASHKEY、または 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_METHODRANGE または 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 に 1 つのレコードがあります。ただし、PARTITION_NAMESUBPARTITION_NAMEPARTITION_ORDINAL_POSITIONSUBPARTITION_ORDINAL_POSITIONPARTITION_METHODSUBPARTITION_METHODPARTITION_EXPRESSIONSUBPARTITION_EXPRESSION、および PARTITION_DESCRIPTION カラムの値はすべて NULL になります。(この場合の PARTITION_COMMENT カラムはブランクです。)


User Comments
Sign Up Login You must be logged in to post a comment.