Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将Liquibase数据库迁移引入现有产品_Mysql_Liquibase_Rpm_Legacy - Fatal编程技术网

Mysql 将Liquibase数据库迁移引入现有产品

Mysql 将Liquibase数据库迁移引入现有产品,mysql,liquibase,rpm,legacy,Mysql,Liquibase,Rpm,Legacy,我正在使用RPM将Liquibase数据库迁移添加到我们当前的产品部署中,并希望获得一些关于如何实现预期目标的建议/提示 RPM最好能够安装在全新且闪亮的开发人员环境中,以及现有的集成/生产系统中 我已经使用generateChangeLog创建了当前预液化db模式的xml变更日志,我已经创建了主变更日志,并准备根据需要进行新的变更集 然而,我正试图确定有条件地在必要时一次性执行生成的初始模式的最佳方法,即:在新的数据库上执行。上下文似乎不是非常理想,只是因为我需要一些其他的外部方式来与RPM通

我正在使用RPM将Liquibase数据库迁移添加到我们当前的产品部署中,并希望获得一些关于如何实现预期目标的建议/提示

RPM最好能够安装在全新且闪亮的开发人员环境中,以及现有的集成/生产系统中

我已经使用generateChangeLog创建了当前预液化db模式的xml变更日志,我已经创建了主变更日志,并准备根据需要进行新的变更集

然而,我正试图确定有条件地在必要时一次性执行生成的初始模式的最佳方法,即:在新的数据库上执行。上下文似乎不是非常理想,只是因为我需要一些其他的外部方式来与RPM通信它应该作为什么上下文运行,这似乎很容易出错

我还希望旧版生成的更改日志显示为已在DATABASECHANGELOG表中运行,使项目显示为始终是liquibase管理的

感谢任何帮助或指导


提前感谢

您可以将所有初始lb更改放入一个变更集中,并将前提条件表放入该变更集中,检查模型中的任何表。如果该表不存在->您有一个空数据库,因此您的大变更集将创建所有对象。如果该表存在->您正在现有数据库上运行,则应跳过该表,并使用onFail=MARK_run和前提条件