Documentation Home
MySQL 8.0 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 33.7Mb
PDF (A4) - 33.7Mb
PDF (RPM) - 31.7Mb
HTML Download (TGZ) - 8.1Mb
HTML Download (Zip) - 8.1Mb
HTML Download (RPM) - 6.9Mb
Man Pages (TGZ) - 145.6Kb
Man Pages (Zip) - 206.5Kb
Info (Gzip) - 3.1Mb
Info (Zip) - 3.1Mb


MySQL 8.0 Reference Manual  /  Partitioning

Pre-General Availability Draft: 2017-10-18

Chapter 23 Partitioning

This chapter discusses user-defined partitioning.

Note

Table partitioning differs from partitioning as used by window functions. For information about the latter, see Section 12.19, “Window Functions”.

In MySQL 8.0, partitioning support is provided by the InnoDB storage engine. (The NDB storage engine used by MySQL Cluster also provides partitioning support, but NDB is not included in MySQL 8.0.)

MySQL 8.0 does not currently support partitioning of tables using any storage engine other than InnoDB, such as MyISAM. An attempt to create a partitioned tables using a storage engine that does not supply native partitioning support fails with ER_CHECK_NOT_IMPLEMENTED.

MySQL 8.0 Community binaries provided by Oracle include partitioning support provided by the InnoDB storage engine. For information about partitioning support offered in MySQL Enterprise Edition binaries, see Chapter 30, MySQL Enterprise Edition.

If you are compiling MySQL 8.0 from source, configuring the build with InnoDB support is sufficient to produce binaries with partition support for InnoDB tables. For more information, see Section 2.8, “Installing MySQL from Source”.

Nothing further needs to be done to enable partitioning support by InnoDB (for example, no special entries are required in the my.cnf file).

It is not possible to disable partitioning support by the InnoDB storage engine.

See Section 23.1, “Overview of Partitioning in MySQL”, for an introduction to partitioning and partitioning concepts.

Several types of partitioning are supported, as well as subpartitioning; see Section 23.2, “Partitioning Types”, and Section 23.2.6, “Subpartitioning”.

Section 23.3, “Partition Management”, covers methods of adding, removing, and altering partitions in existing partitioned tables.

Section 23.3.4, “Maintenance of Partitions”, discusses table maintenance commands for use with partitioned tables.

The PARTITIONS table in the INFORMATION_SCHEMA database provides information about partitions and partitioned tables. See Section 25.13, “The INFORMATION_SCHEMA PARTITIONS Table”, for more information; for some examples of queries against this table, see Section 23.2.7, “How MySQL Partitioning Handles NULL”.

For known issues with partitioning in MySQL 8.0, see Section 23.6, “Restrictions and Limitations on Partitioning”.

You may also find the following resources to be useful when working with partitioned tables.

Additional Resources.  Other sources of information about user-defined partitioning in MySQL include the following:

  • MySQL Partitioning Forum

    This is the official discussion forum for those interested in or experimenting with MySQL Partitioning technology. It features announcements and updates from MySQL developers and others. It is monitored by members of the Partitioning Development and Documentation Teams.

  • Mikael Ronström's Blog

    MySQL Partitioning Architect and Lead Developer Mikael Ronström frequently posts articles here concerning his work with MySQL Partitioning and MySQL Cluster.

  • PlanetMySQL

    A MySQL news site featuring MySQL-related blogs, which should be of interest to anyone using my MySQL. We encourage you to check here for links to blogs kept by those working with MySQL Partitioning, or to have your own blog added to those covered.


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