目次
この章では、ユーザー定義のパーティション化について説明します。
テーブルのパーティション化は、ウィンドウ関数で使用されるパーティション化とは異なります。 ウィンドウ関数の詳細は、セクション12.21「ウィンドウ関数」 を参照してください。
MySQL 8.0 では、パーティション分割のサポートは InnoDB
および NDB
ストレージエンジンによって提供されます。
MySQL 8.0 は現在、MyISAM
などの InnoDB
または NDB
以外のストレージエンジンを使用したテーブルのパーティション化をサポートしていません。 ネイティブパーティション化サポートを提供しないストレージエンジンを使用してパーティションテーブルを作成しようとすると、 ER_CHECK_NOT_IMPLEMENTED で失敗します。
Oracle によって提供される MySQL 8.0 Community バイナリには、InnoDB
および NDB
ストレージエンジンによって提供されるパーティショニングサポートが含まれます。 MySQL Enterprise Edition バイナリで提供されるパーティション分割サポートの詳細は、第30章「MySQL Enterprise Edition」 を参照してください。
ソースから MySQL 8.0 をコンパイルする場合は、InnoDB
サポートを使用してビルドを構成すれば、InnoDB
テーブルのパーティションサポートを使用してバイナリを作成できます。 詳細は、セクション2.9「ソースから MySQL をインストールする」を参照してください。
InnoDB
によるパーティション化サポートを有効にするために、これ以上行う必要はありません (たとえば、my.cnf
ファイルに特別なエントリは必要ありません)。
InnoDB
ストレージエンジンによるパーティション分割サポートを無効にすることはできません。
パーティショニングの概要およびパーティショニングの概念については、セクション24.1「MySQL のパーティショニングの概要」を参照してください。
サブパーティション化に加えて、いくつかのタイプのパーティション化がサポートされています。セクション24.2「パーティショニングタイプ」 および セクション24.2.6「サブパーティショニング」 を参照してください。
セクション24.3「パーティション管理」では、既存のパーティション化されたテーブルでパーティションを追加、削除および変更する方法について説明しています。
セクション24.3.4「パーティションの保守」では、パーティション化されたテーブルで使用するテーブル保守コマンドについて説明しています。
INFORMATION_SCHEMA
データベースの PARTITIONS
テーブルには、パーティションおよびパーティション化されたテーブルに関する情報があります。 詳細は、セクション26.21「INFORMATION_SCHEMA PARTITIONS テーブル」を参照してください。このテーブルに対するクエリーのいくつかの例については、セクション24.2.7「MySQL パーティショニングによる NULL の扱い」を参照してください。
MySQL 8.0 のパーティショニングの既知の問題については、セクション24.6「パーティショニングの制約と制限」を参照してください。
また、パーティション化されたテーブルを使用して作業を行うときに、次のリソースが役に立つことがあります。
追加のリソース. MySQL のユーザー定義パーティショニングに関するその他の情報ソースには、次のものがあります。
-
これは、MySQL パーティショニングテクノロジに興味があり実験している人のための公式ディスカッションフォーラムです。 MySQL 開発者などからの発表や更新が掲載されています。 パーティショニングの開発チームおよびドキュメントチームのメンバーによってモニターされています。
-
MySQL Partitioning Architect および Lead Developer Mikael Ronström は、MySQL Partitioning および NDB Cluster での作業に関する記事を頻繁に投稿しています。
-
MySQL を使用している人が関心を持つと思われる MySQL 関連ブログをまとめた MySQL ニュースサイト。 MySQL パーティショニングを使用している人が更新しているブログへのリンクをここでチェックしたり、自分のブログを追加したりすることをお勧めします。