如何将node-pg-migrate与独立的迁移通道一起使用?

时间:2018-03-26 18:49:47

标签: node.js postgresql database-migration

目前,迁移脚本(node-pg-migrate)构建了从零到一切的整个数据库。它是将取代旧系统的新系统的数据库。需要将数据从旧系统导入新数据库。它们具有完全不同的数据结构。

迁移脚本使用从旧系统导入的原始数据(使用其Web服务)构建import模式。然后创建所有其他模式及其表,函数和所有内容。主要是data模式,其数据从可用于新系统的import模式转换而来。 api模式,其中包含通过postgREST公开的视图和函数,处理来自data模式的数据。还有一些辅助模式和东西。

现在,要导入的数据还不是最终的,所以我需要经常重新导入。为此,我需要一直向下迁移,删除所有其他模式,以便进入迁移步骤,删除所有导入的数据并删除import模式。然后再次向上再次导入数据以构建所有模式以再次使用api。

我现在很快就遇到了我的问题......我很确定我需要将导入数据脚本从迁移中移开,所以我不需要解构和重构整个数据库及其所有模式。理想情况下,我想独立运行导入脚本和模式脚本。使用node-pg-migrate非常方便,也可以导入数据。

如何将node-pg-migrate与独立的迁移通道一起使用?一个用于导入(或dml更改),另一个用于架构更改(或ddl更改)。

相关:

更新:我刚刚发现解决方案可能位于{-3}}区域,由node-db-migrate 实现。我正在使用scope但是......

1 个答案:

答案 0 :(得分:1)

node-pg-migrate不支持通道,例如db-migrate。但您可以通过某种方式模拟IMO,您将使用单独的迁移文件夹和表:

node-pg-migrate -m migrations/dll -t pgmigrations_dll

node-pg-migrate -m migrations/dml -t pgmigrations_dml