Ликвибаза - Liquibase

Ликвибаза
Разработчики)Натан Воксланд
Стабильный выпуск
3.9.0 / 14 мая 2020 г.; 6 месяцев назад (2020-05-14)[1]
Написано вЯва
Операционная системаКроссплатформенность
ТипРазработка программного обеспечения
ЛицензияЛицензия Apache 2.0
Интернет сайтhttp://www.liquibase.org/

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

Обзор

Все изменения в базе данных хранятся в текстовых файлах (XML, YAML, JSON или же SQL ) и идентифицируется комбинацией тегов «id» и «author», а также именем самого файла. Список всех примененных изменений хранится в каждой базе данных, с которой обращаются ко всем обновлениям базы данных, чтобы определить, какие новые изменения необходимо применить. В результате номер версии базы данных отсутствует, но такой подход позволяет ей работать в средах с несколькими разработчиками и ветвями кода.

Liquibase автоматически создает таблицу DatabaseChangeLog и таблицу DatabaseChangeLogLock при первом выполнении файла changeLog.

Основная функциональность

  • Более 30 встроенных рефакторинг базы данных
  • Расширяемость для создания пользовательских изменений
  • Обновить базу данных до текущей версии
  • Откатить последние X изменений в базе данных
  • Откатить изменения базы данных на определенную дату / время
  • Откат базы данных до "тега"
  • SQL для обновлений и откатов баз данных можно сохранить для просмотра вручную
  • Автономная IDE и Затмение плагин
  • «Контексты» для включения / исключения наборов изменений для выполнения
  • Отчет о различиях в базе данных
  • Создание журнала изменений базы данных
  • Возможность создания журнала изменений для создания существующей базы данных
  • Создание документации по изменению базы данных
  • Предварительные условия проверки СУБД, проверки пользователя и проверки SQL
  • Возможность разделить журнал изменений на несколько файлов для упрощения управления
  • Выполняется через командную строку, Apache Ant, Apache Maven, контейнер сервлета, или же Spring Framework.
  • Поддержка 10 систем баз данных

Коммерческая версия

Liquibase (ранее Datical)[2] является крупнейшим участником проекта Liquibase и разработчиком Liquibase Enterprise. [3] - коммерческий продукт, который обеспечивает базовую функциональность Liquibase и дополнительные функции.

  • Прогнозирование изменений: спрогнозируйте предстоящие изменения, которые будут выполнены до их запуска, чтобы определить, как эти изменения повлияют на ваши данные.[4]
  • Механизм правил для обеспечения соблюдения корпоративных стандартов и политик.[5]
  • Поддерживает хранимую логику базы данных: функции, хранимые процедуры, пакеты, табличные пространства, триггеры, последовательности, определяемые пользователем типы, синонимы и т. Д.
  • Сравнить базы данных позволяет сравнить две схемы базы данных, чтобы идентифицировать изменения и легко переносить их в журнал изменений.
  • Мастер наборов изменений позволяет легко определять и фиксировать изменения в базе данных нейтральным образом.
  • Мастер плана развертывания для моделирования и управления рабочим процессом логического развертывания
  • Плагины к Дженкинс, Bamboo, UrbanCode, CA Release Automation (Nolio), Serena Release Automation, BMC Bladelogic, Кукольный, Повар,[6] а также все популярные системы управления версиями, такие как SVN, Git, TFS, CVS и т. Д.

Продукты Liquibase, включая Liquibase Enterprise (ранее известную как Datical DB), используются администраторами баз данных, менеджерами по выпуску, командами DevOps, владельцами приложений, архитекторами и разработчиками, участвующими в процессе выпуска приложений. Он управляет изменениями схемы базы данных вместе с кодом приложения программным способом, что исключает ошибки и задержки и позволяет быстро выпускать Agile-версии. Коммерческие продукты Liquibase основаны на подходе модели данных Liquibase для управления конкретным содержимым структуры данных в разных версиях приложений по мере их перехода от среды разработки к среде тестирования к среде производства. Datical предварительно просматривает влияние изменений схемы в любой среде перед развертыванием, что снижает риски и приводит к более плавным и быстрым изменениям приложений.

Разработчик Liquibase, Натан Воксланд, является исполнительным директором Liquibase (ранее Datical). [7]

Пример файла журнала изменений Liquibase

<?xml version="1.0" encoding="UTF-8"?>        xmlns ="http://www.liquibase.org/xml/ns/dbchangelog/1.3"        xmlns: xsi ="http://www.w3.org/2001/XMLSchema-instance"        xsi: schemaLocation ="http://www.liquibase.org/xml/ns/dbchangelog/1.3        http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.3.xsd ">    <preConditions>             type ="оракул"/>    </preConditions>     id ="1" автор ="author1">         tableName ="лица">            <столбец имя ="я бы" type ="int" autoIncrement ="истинный">                <ограничения primaryKey ="истинный" nullable ="ложный"/>            </column>            <столбец имя ="имя" type ="варчар (50)"/>        </createTable>    </changeSet>     id ="2" автор ="автор2" context ="тест">        <вставить tableName ="лица">            <столбец имя ="я бы" значение ="1"/>            <столбец имя ="имя" значение =«Тест1»/>        </insert>        <вставить tableName ="лица">            <столбец имя ="я бы" значение ="2"/>            <столбец имя ="имя" значение =«Тест2»/>        </insert>    </changeSet></databaseChangeLog>

Связанные инструменты

Рекомендации

  1. ^ «Загрузки Liquibase». Ликвибаза. Получено 2020-05-29.
  2. ^ https://www.liquibase.com/blog/2020-05-19
  3. ^ «Ликвибас Энтерпрайз». Ликвибаза. Получено 2020-05-29.
  4. ^ https://www.liquibase.com/forecast. Отсутствует или пусто | название = (помощь)
  5. ^ «Правила Liquibase». Ликвибаза. Получено 2020-05-29.
  6. ^ "Наши партнеры". Ликвибаза. Получено 2020-05-29.
  7. ^ "Лидерство Liquibase". Ликвибаза. Получено 2020-05-29.

внешняя ссылка