История изменений
Исправление Pinkbyte, (текущая версия) :
Уже 200 раз разжевали же. Кроме как дополнить вариантом где в БД хранится некий scheme_version, равный например 1 для старой схемы и 2 для новой - ничего не могу предложить. А приложение соответственно переписать так, чтобы в зависимости от scheme_version - использовались возможности либо старой версии, либо новой.
Но есть 2 проблемы:
а) такое надо закладывать при проектировании;
б) если по-быдлятски реализовать сейчас - переход со схемы без версии на схему с версией чреват многими многими багами(и я тут даже не про отсутствие в схеме scheme_version - нет переменной, считай равной нулю, делов-то). И c zero downtime тут не получится.
Вообще, ИМХО, zero downtime надо или закладывать сразу(обычно - дорого), либо быть готовым к простою при переходе на систему где простоев при апгрейде больше не будет(в идеале).
Исходная версия Pinkbyte, :
Уже 200 раз разжевали же. Кроме как дополнить вариантом где в БД хранится некий scheme_version, равный например 1 для старой схемы и 2 для новой - ничего не могу предложить. А приложение соответственно переписать так, чтобы в зависимости от scheme_version - использовались возможности либо старой версии, либо новой.
Но есть 2 проблемы:
а) такое надо закладывать при проектировании;
б) если по-быдлятски реализовать сейчас - переход со схемы без версии на схему с версией чреват многими многими багами. И c zero downtime тут не получится.
Вообще, ИМХО, zero downtime надо или закладывать сразу(обычно - дорого), либо быть готовым к простою при переходе на систему где простоев при апгрейде больше не будет(в идеале).