Spec-Zone .ru
спецификации, руководства, описания, API

13.1.7.1. ALTER TABLE Операции раздела

Связанные с разделением пункты для ALTER TABLE может использоваться с разделенными таблицами для того, чтобы повторно разделить, для того, чтобы добавить, отбросить, объединить, и разделить разделы, и для того, чтобы выполнить обслуживание разделения.

До MySQL 5.6.6, когда ALTER TABLE ... EXCHANGE PARTITION или ALTER TABLE ... TRUNCATE PARTITION был выполнен против разделенной таблицы, которая использовала MyISAM (или другой механизм хранения, который использует блокировку на уровне таблицы), вся разделенная таблица была заблокирована; в MySQL 5.6.6 и позже, в таких случаях, только блокируются те разделы, которые фактически читаются из. Это не сделало (и не делает), влияют на разделенные таблицы, используя механизм хранения — такой как InnoDB— это использует блокировку на уровне строки. См. Раздел 18.6.4, "Деля и Блокируя".

Это возможно для ALTER TABLE оператор, чтобы содержать a PARTITION BY или REMOVE PARTITIONING пункт в дополнении к другому изменять спецификации, но PARTITION BY или REMOVE PARTITIONING пункт должен быть определен последний после любых других спецификаций.

ADD PARTITION, DROP PARTITION, COALESCE PARTITION, REORGANIZE PARTITION, ANALYZE PARTITION, CHECK PARTITION, и REPAIR PARTITION опции не могут быть объединены с другим изменять спецификации в сингле ALTER TABLE, начиная с опций только перечисленное действие на отдельных разделах. Для получения дополнительной информации см. Раздел 13.1.7.1,"ALTER TABLE Операции раздела".

Только единственный экземпляр любой из следующих опций может использоваться в данном ALTER TABLE оператор: PARTITION BY, ADD PARTITION, DROP PARTITION, TRUNCATE PARTITION, EXCHANGE PARTITION, REORGANIZE PARTITION, или COALESCE PARTITION, ANALYZE PARTITION, CHECK PARTITION, OPTIMIZE PARTITION, REBUILD PARTITION, REMOVE PARTITIONING.

Например, следующие два оператора недопустимы:

ALTER TABLE t1 ANALYZE PARTITION p1, ANALYZE PARTITION p2;ALTER TABLE t1 ANALYZE PARTITION p1, CHECK PARTITION p2;

В первом случае можно проанализировать разделы p1 и p2 из таблицы t1 одновременно используя единственный оператор с синглом ANALYZE PARTITION опция, которая перечисляет оба из разделов, которые будут проанализированы, как это:

ALTER TABLE t1 ANALYZE PARTITION p1, p2;

Во втором случае не возможно выполнить ANALYZE и CHECK операции на различных разделах той же самой таблицы одновременно. Вместо этого следует сделать два отдельных заявления, как это:

ALTER TABLE t1 ANALYZE PARTITION p1;ALTER TABLE t1 CHECK PARTITION p2;