database-migration

跨ORM与平台执行数据库迁移,采用零停机策略、数据转换及回滚流程。适用于数据库迁移、架构变更、数据转换或实施零停机部署策略的场景。

作者

安装

热度:0

下载并解压到你的 skills 目录

复制命令,发送给 OpenClaw 自动安装:

下载并安装这个技能 https://openskills.cc/api/download?slug=sickn33-skills-database-migration&locale=zh&source=copy

Database Migration - 跨 ORM 数据库迁移与零停机部署工具

技能概述


Database Migration 是一个专业的数据库迁移助手,帮助开发者完成跨 ORM 框架(Sequelize、TypeORM、Prisma)的表结构变更、数据转换和零停机部署,提供完整的迁移脚本和回滚策略。

适用场景

1. ORM 框架切换与迁移


当你需要从 Sequelize 迁移到 TypeORM,或从 Prisma 切换到其他 ORM 时,本技能提供完整的迁移脚本模板和跨数据库兼容方案,确保数据安全无损。

2. 生产环境零停机部署


在需要变更数据库表结构但又不能中断服务的情况下,提供蓝绿部署、扩展字段等零停机迁移策略,支持平滑滚动升级。

3. 复杂数据转换与重构


当需要拆分字段、合并表、变更数据类型或进行大批量数据转换时,提供事务保护、备份恢复和验证检查的完整迁移流程。

核心功能

1. 多 ORM 迁移脚本生成


自动生成 Sequelize、TypeORM、Prisma 三大主流 ORM 的迁移脚本模板,包含 up/down 双向迁移逻辑,支持增删改表、索引管理、外键约束等常见操作。

2. 零停机迁移策略


提供蓝绿部署、扩展字段、多阶段渐进式迁移等生产级方案,确保新旧代码可以同时运行,实现无感知升级。

3. 完整的回滚与验证机制


每个迁移都配备可执行的回滚脚本,支持事务保护和备份表恢复,提供迁移验证检查点,确保迁移失败时可安全回退。

常见问题

数据库迁移失败了怎么办?


本技能为每个迁移提供对应的 down 回滚脚本,执行 npx sequelize-cli db:migrate:undonpm run typeorm migration:revert 即可回滚。对于复杂迁移,还提供备份表恢复和事务保护机制。

如何实现零停机的数据库迁移?


零停机迁移采用多阶段策略:先添加新字段(兼容旧代码),部署双写代码,回填历史数据,切换读操作到新字段,最后删除旧字段。本技能提供完整的蓝绿部署模板和分步迁移脚本。

Sequelize 和 TypeORM 迁移有什么区别?


两者迁移语法和执行方式不同:Sequelize 使用 queryInterface API,TypeORM 使用 QueryRunner,Prisma 则基于 schema.prisma 自动生成。本技能为三种 ORM 提供对应的迁移模板和最佳实践指南。