В действительности, ALTER TABLE ... ОТКЛЮЧИТЬ КЛАВИШИ и ALTER TABLE ... ENABLE KEYS не работают !!!!
Я обратился к этому еще в 13 февраля 2011 года.
Я немного покопался и узнал от материнской компании InnoDB, InnoBase Oy (до того, как меня сделали 7 из 9 в Oracle Borg), что это действительно так.
Эта ссылка предлагает сделать DISABLE KEYS и отключить внешние ключи вместе. Хотя я думаю, что оба излишни, это, видимо, сработало для кого-то
ОБНОВЛЕНИЕ 2011-07-18 12:35 ПО ВОСТОЧНОМУ ВРЕМЕНИ
Это очень хороший вопрос, потому что он раскрывает зло, оставшееся в MySQL. Программа mysqldump вслепую отбрасывает DISABLE KEYS и ENABLE KEYS вокруг создания и загружает каждую таблицу независимо от механизма хранения. Поскольку DISABLE KEYS и ENABLE KEYS не работают (в лучшем случае не оказывает влияния) на таблицы InnoDB, так как он работает правильно для MyISAM, этот неизвестный факт должен быть лучше задокументирован сообществом MySQL. О да, MySQL находится в центре Галактической Империи, известной как Oracle. Я не буду затаить дыхание на предстоящие изменения документации.