AWS Aurora: почему не работает Alter table на маленьком столе? - PullRequest
0 голосов
/ 08 мая 2020

В базе данных всего 36 КБ (поэтому очень мало записей в каждой таблице). Я пытаюсь изменить таблицу target_table, в которой всего 4 поля и 16 записей. Другая таблица с 0 записями (170k ранее, но удалена) ссылается на эту таблицу с внешним ключом.

Выполняемое мной изменение: «ALTER TABLE target_table add column meta json;» Он длится вечно (я позволяю ему работать более 12 часов после удаления содержимого таблицы с 170k записями), и БД не отвечает на другие запросы во время выполнения изменения.

Когда Alter запущен, я не вижу конкретных c показателей на панели управления Aurora, за исключением примерно 5 выборок в секунду. (другие показатели такие же, как обычно).

Изменение было успешно (и мгновенно) выполнено в тестовой базе данных mysql, в которой есть некоторые записи (так что не полярное сияние).

На авроре у меня есть успешно выполнил эту команду:

CREATE TABLE table_target2 LIKE table_taget; INSERT table_target2 SELECT * FROM table_taget; ALTER TABLE target_table2 добавить столбец meta json; (запускается мгновенно)

Таким образом, единственная разница, похоже, заключается во внешнем ключе в таблице table_target (поэтому я сделал резервную копию и удалил все строки из таблицы, которая имеет этот внешний ключ, но это не влияет на Alter не работает).

...