Я много искал об автоматизации разбиения MySQL на разделы. Но, к сожалению, с проблемой ничего не связано. Я хочу удалить старые разделы, которые не нужны, но в то же время добавить новые данные в раздел. Что я могу сделать здесь, так это каждый день удалять старый раздел и создавать новые разделы с помощью некоторых автоматических функций mysql, таких как МЕСЯЦ (СЕЙЧАС () - интервал 2 месяца) и т. Д. Но что он будет делать, так это увеличивать стоимость операции, как каждую ночь Мне нужно воссоздать разделы для новых данных. Я обнаружил, что могу использовать разбиение по диапазону, но есть все жестко запрограммированные примеры, предполагающие, что мне может потребоваться разбиение каждый раз, когда добавляются новые данные.
Вот пример, который я нашел, но не очень похож на меня:
ALTER TABLE t1 PARTITION BY
RANGE(TO_DAYS(FROM_UNIXTIME(transaction_date)))(
PARTITION JAN VALUES LESS THAN (TO_DAYS('2013-02-01')),
PARTITION FEB VALUES LESS THAN (TO_DAYS('2013-03-01')),
PARTITION MAR VALUES LESS THAN (TO_DAYS('2013-04-01')),
PARTITION APR VALUES LESS THAN (TO_DAYS('2013-05-01')),
PARTITION MAY VALUES LESS THAN (TO_DAYS('2013-06-01')),
PARTITION JUN VALUES LESS THAN (TO_DAYS('2013-07-01')),
PARTITION JUL VALUES LESS THAN (TO_DAYS('2013-08-01')),
PARTITION AUG VALUES LESS THAN (TO_DAYS('2013-09-01')),
PARTITION SEP VALUES LESS THAN (TO_DAYS('2013-10-01')),
PARTITION `OCT` VALUES LESS THAN (TO_DAYS('2013-11-01')),
PARTITION NOV VALUES LESS THAN (TO_DAYS('2013-12-01')),
PARTITION `DEC` VALUES LESS THAN (TO_DAYS('2014-01-01'))
);
Пожалуйста, предложите мне правильный способ сделать это.