【发布时间】:2018-09-05 00:27:22
【问题描述】:
目前,迁移脚本 (node-pg-migrate) 构建了从零到一切的整个数据库。它是一个新系统的数据库,它将取代旧系统。数据需要从遗留系统导入到新数据库。它们具有完全不同的数据结构。
迁移脚本使用从旧系统(使用其 Web 服务)导入的原始数据构建 import 架构。然后创建所有其他模式及其表、函数和所有内容。主要是 data 架构,其数据从 import 架构转换而来,可用于新系统。 api 架构具有通过 postgREST 公开的视图和函数,处理来自 data 架构的数据。还有一些辅助模式和东西。
现在,要导入的数据还没有最终确定,所以我需要经常重新导入。为此,我需要一直向下迁移,在向下迁移时删除所有其他模式,以进入删除所有导入数据并删除import 模式的迁移步骤。然后再往上走,把数据一路往上导入,重新构建所有的模式,再有一个工作的api。
我马上就要回答我的问题了……我很确定我需要将导入数据脚本从迁移中移开,这样我就不需要解构和重建整个数据库及其所有模式。理想情况下,我想独立运行导入脚本和模式脚本。使用node-pg-migrate 确实很方便,也可以用于导入数据。
如何将 node-pg-migrate 与独立的迁移通道一起使用?一种用于导入(或 dml 更改),另一种用于架构更改(或 ddl 更改)。
相关:
- Migration scripts for Structure and Data
- https://dba.stackexchange.com/questions/64632/how-to-create-a-versioning-ddl-dml-change-script-for-sql-server
更新:我刚刚发现解决方案可能位于由 node-db-migrate 实现的scope 区域。我正在使用node-pg-migrate...
【问题讨论】:
标签: node.js postgresql database-migration