Я верю, что произойдет следующее:
- Ваш
DROP INDEX
(который действительно запускает ALTER TABLE ... DROP INDEX
) работает на мастере
- Если ALTER завершится успешно, оператор будет добавлен в журнал и будет запущен на ведомом
Это означает, что ALTER TABLE
на другом компьютере не запустится, пока ALTER TABLE
не будет успешно завершен на первом (главном) компьютере.
Пока ALTER TABLE
работает на любой машине, таблица некоторое время будет читаемой, а затем не читаемой и не записываемой, поскольку MySQL сначала создает внутреннюю копию таблицы, а затем применяет изменения.
С http://dev.mysql.com/doc/refman/5.0/en/alter-table.html
В большинстве случаев ALTER TABLE работает
делая временную копию
оригинальный стол. Переделка
выполняется на копии, а затем
исходная таблица удаляется, а новая
один переименован. Пока ALTER TABLE есть
выполнение, исходная таблица
читается другими сессиями. Обновления
и записи в таблицу зашли в тупик
пока новый стол не будет готов, а затем
автоматически перенаправляются на
новая таблица без каких-либо неудачных обновлений.
Временная таблица создается в
каталог базы данных новой таблицы.
Это может отличаться от
каталог базы данных оригинала
таблица, если ALTER TABLE переименовывает
таблицы в другую базу данных.