MySQL 5.7 provides a number of ways to modify
partitioned tables. It is possible to add, drop, redefine, merge,
or split existing partitions. All of these actions can be carried
out using the partitioning extensions to the
ALTER
TABLE statement. There are also ways to obtain
information about partitioned tables and partitions. We discuss
these topics in the sections that follow.

In MySQL 5.7, all partitions of a partitioned table
must have the same number of subpartitions, and it is not
possible to change the subpartitioning once the table has been
created.

To change a table's partitioning scheme, it is necessary only to
use the
ALTER
TABLE statement with a
partition_options clause. This clause
has the same syntax as that as used with
CREATE TABLE for creating a
partitioned table, and always begins with the keywords
PARTITION BY. Suppose that you have a table
partitioned by range using the following
CREATE TABLE statement:

Only a single PARTITION BY, ADD
PARTITION, DROP PARTITION,
REORGANIZE PARTITION, or COALESCE
PARTITION clause can be used in a given
ALTER
TABLE statement. If you (for example) wish to drop a
partition and reorganize a table's remaining partitions,
you must do so in two separate
ALTER
TABLE statements (one using DROP
PARTITION and then a second one using
REORGANIZE PARTITIONS).