首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在生产环境中执行液基更新

在生产环境中执行液基更新
EN

Stack Overflow用户
提问于 2013-11-15 15:23:17
回答 1查看 5.7K关注 0票数 4

我有一个Java项目。我在用液化库更新DB。

在本地,要更新db,我只需在命令行中运行:

代码语言:javascript
复制
mvn liquibase:update

在生产环境中,我没有安装Maven。

我需要实现的是通过控制台执行命令,在特定的类路径中运行清算基脚本。

有什么想法吗?

编辑:

好吧我正试着遵循这个方法。我把下列物品放进一个文件夹:

  1. 液基罐
  2. 包含我的申请和液化基变更集的战争
  3. liquibase.properties:它包含以下内容: url=jdbc:jtds:sqlserver://xxxxxxxx:xxxx/xxxxx username=xxx password=xxxxx classpath=war_file.war changeLogFile=WEB-INF/classes/sql/projectName/liquibase/liquibase.xml

然后,在控制台中,我执行:

代码语言:javascript
复制
java -jar liquibase-core-3.0.5.jar update

它起作用了!它找到我的liquibase.xml文件并启动清算库更新。

但是,当它引用库中包含的另一个jar文件中的liquibase.xml时,它会失败,因为我将它包含在liquibase.xml中,如下所示:

代码语言:javascript
复制
<include file="../other_module/src/main/resources/sql/projectName/liquibase/liquibase.xml" />

如何在不执行"src/main/resources“的情况下添加"include”并使其找到此xml?

EN

回答 1

Stack Overflow用户

发布于 2013-11-15 21:46:03

在Dev机器上运行updateSQL目标:

代码语言:javascript
复制
mvn liquibase:updateSQL

您可以生成一个迁移脚本:

代码语言:javascript
复制
└── target
    └── liquibase
        └── migrate.sql

这是我最喜欢的液化资产的特征之一。有时,客户端坚持所有数据库架构更改都必须由其工作人员手动执行。

另一种选择是将自动升级功能构建到应用程序中。见servlet侦听器

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20004426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档