2016-04-11 5 views
0

Мне интересно, в какой ситуации откаты в Liquibase могут быть полезны. В большинстве случаев обращение с откатом ликбазы побуждает разработчиков писать некоторые дополнительные изменения. Но какова реальная ценность этого? Нелегко всегда писать откаты в заполненной базе данных. Я вижу только одно значение этой функции - когда мы хотим вернуться к предыдущей версии, мы можем вызвать откат. Но проще просто сбросить базу данных и вызвать Liquibase для создания базы данных еще раз. Это короткая операция. Может ли кто-нибудь сказать мне некоторые реальные случаи, когда вы используете эту функцию?Откат Liquibase - это полезно?

ответ

1

Короткий ответ: «Это бесконечно полезно», но чтобы дать вам краткое описание того, как и почему это полезно, нам нужно объяснить несколько других понятий.

Можно уподобить Liquibase системе, такой как Active Record, которая наряду с решением ORM, главным образом для Rails, также известна тем, что ее разработчики могут переносить и откатывать изменения. Он даже отслеживает изменения, которые он запускает уже, чтобы можно было с первого взгляда определить, что было раньше, а что нет.

Теперь часть миграции проста. Вы хотите перенести изменения, чтобы вы могли фактически улучшить базу данных, постепенно, со временем, с записью того, что было изменено. То есть на всякий случай делает перерыв, и вам нужно вернуться, чтобы исправить это. Здесь задействована функция отката; если изменение схемы оказывается неправильным, приводит к потере данных или нарушается для этой базы данных, откатывание схемы и восстановление данных в исходное состояние (вероятно, с помощью резервных копий) имеет решающее значение для поддержания стабильности системы.

К вашему предложению:

Но это легче просто падение базы данных и вызвать LiquiBase построить базу данных еще раз.

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

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

+0

Я спросил об этом, потому что в моей команде у нас есть другое использование Liquibase. Мы используем его только во время разработки, и мы производим sql-файлы из наборов изменений. Это потому, что мы являемся частью какого-либо другого проекта и для согласованности нам нужно просто создавать sql-файлы, которые используются в каком-то скрипте, который создает базу данных. Мы не вынуждены заботиться о откатах, чтобы вернуться к предыдущей версии. Именно по этой причине я начал думать, если в моем проекте действительно необходимо по-прежнему обрабатывать откат –

Смежные вопросы