База данных LiquibaseChangeLogTable - PullRequest
0 голосов
/ 06 августа 2020

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

1 Ответ

0 голосов
/ 06 августа 2020

Поскольку вы хотите, чтобы несколько микросервисов подключались к одной базе данных, вам необходимо выбрать следующие параметры:

  1. Использовать общую таблицу databasechangelog (это не должно быть проблемой, если вы напишете правильные предварительные условия, поскольку ни один of the changeSets будет выполняться, если предварительные условия не выполняются)
  2. используйте другое имя для databasechangelog таблицы, указав свойство liquibase.databaseChangeLogTableName.

Для первого микросервиса вы можете установить : liquibase.databaseChangeLogTableName=databasechangelog_microservice_1

Для второго микросервиса вы можете установить: liquibase.databaseChangeLogTableName=databasechangelog_microservice_2

et c.

Примечание:

для Spring-boot это свойство будет иметь имя spring.liquibase.database-change-log-table=your_table_name

И если вы хотите изменить имя таблицы databasechangeloglock, используйте это свойство: spring.liquibase.database-change-log-lock-table=your_lock_table_name

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...