项目团队数据库版本管理及发布探索
2016-06-13 05:49
435 查看
项目团队开发产品前期在测试数据库上进行项目开发,即使数据库经常结构经常变动,也只是针对这个测试环境。在项目开发进入发布任务“收官阶段”进行数据库升级。在数据升级过程中出现了如下问题:
数据库升级脚本有时会拖延到最初数据库改变发生后数月才开始编写,而这时关于如何迁移数据的项目可能早已遗忘,或者有所缺失了;
编写数据库升级脚本所需的时间难以预料,因为没有数据库变动记录,因而需要对比数据库差异,这使的项目发布风险提高;
匆忙编写的数据库升级脚本没有经过彻底并且重复性的测试,更是使项目存在潜在风险;
项目上线多家客户后,每个客户数据库都存在差异,造成系统无法更新到最新版本,因为客户数据库差异越来越大,一不小心就出现数据不一致的问题,无法合并,需要非常小心,坑越挖越深;
经过上述痛苦数据库升级阶段深刻体会一个良好的数据库版本管理以及发布策略对后期项目发布上线的重要性。
其次配置数据库管理员,统一管理员数据库创建和升级工作。
在开发过程中,开发者并行地完成对代码和数据库的修改。除了对数据库项目进行改动之外,团队成员还需要编写升级脚本,随后和其它代码一起交付给数据库配置管理员,由其签入版本控制,并且在一个独立的环境中进行测试。
当阶段开发工作结束后,项目成员一起讨论并决定把哪些脚本会和其它必需步骤一起加入整个安装过程。
2016 年 01 月 17日
数据库升级脚本有时会拖延到最初数据库改变发生后数月才开始编写,而这时关于如何迁移数据的项目可能早已遗忘,或者有所缺失了;
编写数据库升级脚本所需的时间难以预料,因为没有数据库变动记录,因而需要对比数据库差异,这使的项目发布风险提高;
匆忙编写的数据库升级脚本没有经过彻底并且重复性的测试,更是使项目存在潜在风险;
项目上线多家客户后,每个客户数据库都存在差异,造成系统无法更新到最新版本,因为客户数据库差异越来越大,一不小心就出现数据不一致的问题,无法合并,需要非常小心,坑越挖越深;
经过上述痛苦数据库升级阶段深刻体会一个良好的数据库版本管理以及发布策略对后期项目发布上线的重要性。
1、怎么管理?
首先定义“标准”并让每个团队成员都应该了解如何按照团队遵循的规则编写升级脚本:采用怎样的格式?是否使用了某种模板?文件保存在哪里?又该遵循何种命名规范?其次配置数据库管理员,统一管理员数据库创建和升级工作。
在开发过程中,开发者并行地完成对代码和数据库的修改。除了对数据库项目进行改动之外,团队成员还需要编写升级脚本,随后和其它代码一起交付给数据库配置管理员,由其签入版本控制,并且在一个独立的环境中进行测试。
当阶段开发工作结束后,项目成员一起讨论并决定把哪些脚本会和其它必需步骤一起加入整个安装过程。
2、管理方式
作者 @zokaper2016 年 01 月 17日
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- 数据库链接字符串查询网站
- 说说技术型创业团队的技术选型
- DB2实例管理
- DB2实例管理
- 保障MySQL数据安全的14个最佳方法
- mysql问答汇集
- 【DevOps】为什么我们永远疲于奔命?
- 第三章 数据库备份和还原
- 创建一个空的IBM DB2 ECO数据库的方法
- Access 2000 数据库 80 万记录通用快速分页类
- 网络管理之IP地址篇
- 开通一个数据库失败的原因的和解决办法
- 一个简单的asp数据库操作类
- 文件的读出 编辑 管理
- CentOS下DB2数据库安装过程详解
- EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)第1/2页
- sql2008 还原数据库解决方案
- Oracle 数据库自动存储管理-安装配置