Liquibase 与 Spring Boot 多个数据源,其中一个已禁用
Posted
技术标签:
【中文标题】Liquibase 与 Spring Boot 多个数据源,其中一个已禁用【英文标题】:Liquibase with Springboot multiple datasources with one disabled 【发布时间】:2022-01-22 04:21:59 【问题描述】:我有一个带有 2 个数据源的 Spring Boot 应用程序。一个是只读数据源,不应由 liquibase 变更集更新。我在 application.yml 文件中尝试了许多配置,但到目前为止,我还不能只为一个数据源启用 liquibase。 无论我尝试过什么,它总是要么对两者都启用,要么对两者都禁用。
有人有一个示例 application.yml 文件,显示如何配置 2 个数据源,一个带 liquibase,一个不带?
【问题讨论】:
【参考方案1】:在 Spring Boot 中,您可以为 liquibase 指定自定义配置:
spring:
liquibase:
change-log: classpath*:db/changelog/db-changelog.xml
password: $DB_PASSWORD:postgres
url: jdbc:postgresql://$DB_HOST:localhost:$DB_PORT:5432/$DB_NAME:postgresql
user: $DB_USER:postgres
因此它可能与您用于 spring 数据源的完全不同。
【讨论】:
以上是关于Liquibase 与 Spring Boot 多个数据源,其中一个已禁用的主要内容,如果未能解决你的问题,请参考以下文章
带有spring-boot的自定义sql中的Liquibase参数
在Spring Boot 2下激活后启动liquibase。
使用 Spring-Boot 启动时的 Liquibase 迁移不起作用