Есть таблица с заказами более 10млн записей. Хочу разбить на партиции по дате создания поквартально. PK — id INT AUTO_INCREMENT. При альтере таблицы получаю: A PRIMARY KEY must include all columns in the table's partitioning function. Сделать PK составным я не могу, так как мне важна уникальность именно поля id, тем более что саму идею такого PK считаю бредом.
Как быть? Неужели нет нормального способа разбить таблицу?
ЗЫ: Доку я вообще то читал, но решения там не нашел, возможно из-за плохого инглиша, так что просьба не закидывать цитатами оттуда =)
Я это делал в ручную, но в то время еще не было партиций и деление было не по дате а по праймари айди =) Так что в худшем случае бейте таблицы руками и названия давайте им date('Y_m_d') (допустим). В итоге Запросы прекрасно работают, найти нужную таблицу нет проблем, но плохо что все это делается не автоматически.
Нельзя указать мускулю чтоб он автоматом создавал партиции по полю исходя из значений, можно лишь создать _определенное количество_ партиций, которые будут руководствоваться правилом. В итоге предложенный мной способ более гибок, но менее автоматизирован. Перед тем как нажимать минус идем и читаем про партиции, а не тупо высказываем свои незнания в вопросе.