Partition management

The most important thing when it comes to managing partitions is adding sufficient partitions in advance for time-based RANGE partitioning. Failure to do so leads to errors while inserting or, if the MAXVALUE partition is defined, all the inserts go into the MAXVALUE partition. For example, take the event_history table without the pmax partition:

mysql> CREATE TABLE `event_history` (  `event_id` int(11) NOT NULL,  `event_name` date NOT NULL,  `created_at` datetime NOT NULL,  `last_updated` timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,  `event_type` varchar(10) NOT NULL,  `msg` tinytext NOT NULL,  PRIMARY KEY (`event_id`,`created_at`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4PARTITION BY RANGE (to_days(created_at)) ...

Get MySQL 8 Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.