Стратегия развертывания базы данных MySQL в производстве - PullRequest
0 голосов
/ 13 ноября 2018

Я ищу идеи для стратегии развертывания базы данных MySQL на производстве.

Мой сценарий такой:

  1. У меня есть задание, которое создает дамп SQL из набора статических таблиц
  2. У меня есть существующая схема в производстве, которая содержит вышеуказанный набор статических таблиц наряду с другими таблицами.
  3. Я хочу применить дамп, созданный на шаге 1, к схеме производственной базы данных

Одной из идей было бы создать таблицу в дампе с некоторым постфиксом скажем _new, а затем поменять местами таблицы с помощью команды mysql RENAME. Но я не уверен насчет проблем, связанных с этим подходом. В руководстве по mysql сказано, что RENAME работает только в том случае, если не были приняты транзакционные блокировки, а использование команды RENAME приводит к удалению всех ограничений в новой замененной таблице, команда будет выглядеть так, как показано ниже.

rename table foo to foo_old, foo_new to foo;

Другая идея, о которой я думаю, - если есть какая-то функция для создания псевдонимов схемы, и во время развертывания я могу создать совершенно новую схему из оригинала, а затем указать псевдоним на новую схему, которая кажется менее рискованной, но не уверена, что MySQL поддерживает это.

Любые идеи и ссылки на это были бы очень полезны, спасибо!

...