首页 应用开发数据库升级的一些实践与思考

应用开发数据库升级的一些实践与思考

11761 67 355 2018 / 12 / 21

主导开发的一个项目上线将近2个月,目前更新了两个大版本,小版本不计其数,也没做登记,系统流水现在超过了100w,每次升级都心惊胆战,特别是数据库,因为正式环境的数据不能丢失与损伤,所以不能以覆盖更新的方法。公司也没有老司机可以开车带我。

    目前的数据库升级手段是原始的:手动记录每次细小的更改,然后在版本升级时对照着一个一个改。简直日乐购。

    

    琢磨了一下,准备用以下思路代替:

    1、每个版本打上版本号,版本跨度是本次更新到上次更新这个时间段内的所有修改;

    2、统一开发人员的数据库结构管理终端(也就是给他们统一一个地方做表的字段和关系增删改),传统的桌面软件只做数据查询。在这个统一的终端里面自动记录下这个每个版本跨度内的所有数据库结构改动(注意是结构,不包括数据);

    3、写一个自动升级脚本,将第2步收集到的更改自动化更新到正式数据库。


    那么问题来了,需要写一个第二步用来记录版本更改细节的数据库结构管理终端。并且不能占用我写业务的时间和完善框架的时间。那就得占用我看动漫和玩游戏的时间。Soga。

    如果有这方面的版本升级经验的老司机,请不吝赐教。感激不尽。