加载中...
数据库迁移指以受控、可版本化的方式对数据库结构(表、列、索引等)进行演进的过程。通过将结构变更写成可执行的迁移脚本并按顺序应用,团队能协同管理、追踪并可靠地回放数据库的演化历史。

| 类型 | 结构演进管理 |
| 管理方式 | 版本化脚本 |
| 历史记录 | 迁移历史表 |
| 集成环节 | 持续交付流程 |
数据库迁移(Schema Migration)是指以脚本化、版本化的方式,对数据库的结构(如新增表、修改列、创建索引、调整约束)进行有序演进的过程。它把每一次结构变更记录为独立的迁移脚本,按既定顺序应用到各环境,使数据库结构像代码一样可被追踪和管理。
在多人协作和多环境部署中,若手工执行结构变更,极易出现环境不一致、变更遗漏或顺序错乱。迁移工具通过维护一张迁移历史表记录已应用的版本,启动时比对并按序执行尚未应用的脚本,从而保证开发、测试、生产各环境结构一致,并能追溯何时做了何种变更。
数据库迁移是现代持续交付流程的标准环节,用于伴随功能迭代演进表结构、上线前自动应用变更、以及在多环境间保持结构同步。对大表的结构变更还需配合在线变更手段,避免长时间锁表影响业务。
问:迁移能保证可回滚吗?答:结构变更的回滚往往可写,但涉及数据删除或不可逆转换时难以真正还原,应谨慎设计并在应用前备份。
问:大表加字段会不会锁表?答:部分变更在大表上可能长时间加锁影响业务,应评估是否需借助在线结构变更工具或分步灰度进行。

| 类型 | 结构演进管理 |
| 管理方式 | 版本化脚本 |
| 历史记录 | 迁移历史表 |
| 集成环节 | 持续交付流程 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧