数据库迁移

数据库迁移

在多人开发的项目中,我们都习惯了使用 SVN 或者 Git 来对代码做版本控制,主要的目的就是为了解决多人开发代码冲突和版本回退的问题。其实,数据库的变更也需要版本控制,在日常开发中,我们经常会遇到下面的问题:

  • 自己写的 SQL 忘了在所有环境执行;
  • 别人写的 SQL 我们不能确定是否都在所有环境执行过了;
  • 有人修改了已经执行过的 SQL,期望再次执行;
  • 需要新增环境做数据迁移;
  • 每次发版需要手动控制先发 DB 版本,再发布应用版本;
  • 其它场景…