关于开发人员数据库权限配置以及规范数据库升级流程
2012-07-20 23:07
302 查看
在项目的新版本发布过程中,暴露出了一些数据库权限管理的问题和数据库升级流程规范的问题。
在这次发布完真实版后,居然发现有些脚本没有被执行,导致用户升级完就出现了些Bug,产生了很不好的影响。
为此项目组专门开会讨论这个问题,具体原因分析如下:
1.开发人员现在都有测试数据库的写入权限,导致人人都可以在测试数据库中进行执行脚本,这样就有开发人员在测试环境
直接执行了脚本,但是却没有进行登记,结果在测试时没有发现问题,但是发布真实环境时却漏掉了一些脚本的发布。
2.一些数据库的存储过程没有按照规定直接更新到VSTS中指定的目录下,而是直接在开发版本的数据库中执行了,或者在测试数据库中执行了,这样在发布时没有了判断的基准。
为了避免以后再出现这种情况,建议按照如下规定执行:
1.收回开发人员对测试数据库的写入权限,开发人员对测试数据库只有读取权限,只有开发数据库的读取和写入权限。
测试版数据库的写入权限,只能指定一名发布测试版本的员工拥有。
2.对于数据库的每次变更都要写成脚本,并登记到指定的文件中,发布时一起执行。
3.对于存储过程的更新和新建,必须将更新的存储过程更新到VSTS中的指定目录中,同样如果是新建的存储过程
则要求加入VSTS中指定目录。
4.发布测试版和真实版本时所有的数据库脚本均要求从指定文件中获取,存储过程则要从指定目录下获取后执行。
在这次发布完真实版后,居然发现有些脚本没有被执行,导致用户升级完就出现了些Bug,产生了很不好的影响。
为此项目组专门开会讨论这个问题,具体原因分析如下:
1.开发人员现在都有测试数据库的写入权限,导致人人都可以在测试数据库中进行执行脚本,这样就有开发人员在测试环境
直接执行了脚本,但是却没有进行登记,结果在测试时没有发现问题,但是发布真实环境时却漏掉了一些脚本的发布。
2.一些数据库的存储过程没有按照规定直接更新到VSTS中指定的目录下,而是直接在开发版本的数据库中执行了,或者在测试数据库中执行了,这样在发布时没有了判断的基准。
为了避免以后再出现这种情况,建议按照如下规定执行:
1.收回开发人员对测试数据库的写入权限,开发人员对测试数据库只有读取权限,只有开发数据库的读取和写入权限。
测试版数据库的写入权限,只能指定一名发布测试版本的员工拥有。
2.对于数据库的每次变更都要写成脚本,并登记到指定的文件中,发布时一起执行。
3.对于存储过程的更新和新建,必须将更新的存储过程更新到VSTS中的指定目录中,同样如果是新建的存储过程
则要求加入VSTS中指定目录。
4.发布测试版和真实版本时所有的数据库脚本均要求从指定文件中获取,存储过程则要从指定目录下获取后执行。
相关文章推荐
- 关于开发人员数据库权限配置以及规范数据库升级流程
- 项目整体开发流程以及配置人员
- 项目整体开发流程以及配置人员
- Web平台开发流程以及规范
- 数据库分库分表(sharding)系列(三) 关于使用框架还是自主开发以及sharding实现层面的考量
- 软件项目开发流程及配置人员
- 关于web开发中的规范流程
- 软件项目开发流程以及人员职责
- JAVAWEB开发之Struts2详解(一)——Struts2框架介绍与快速入门、流程分析与工具配置以及Struts2的配置以及Action和Result的详细使用
- 我不要紧的编码组两人,至少两年的dotnet网咯服务开发经验,熟悉数据库orm, 系统管理人员:熟悉各linux发行版的系统管理和安全管理,linux常用数据库的配置与运维等,有代码托管服务管理经验优
- 01.关于c3p0的配置,以及后期快速得到数据库中查询出来的对象
- linux nfs 服务启用以及开发权限配置
- SNF开发平台-SNF.CodeGenerator-升级生成BS页面代码-支持视图-数据库配置-快速开发者的利器
- 关于数据库开发的一些规范整理
- 软件项目开发流程以及人员职责
- 数据库分库分表(sharding)系列(三) 关于使用框架还是自主开发以及sharding实现层面的考量
- JAVAWEB开发之Hibernate详解(一)——Hibernate的框架概述、开发流程、CURD操作和核心配置与API以及Hibernate日志的使用
- 软件项目开发流程以及人员职责
- 数据库分库分表(sharding)系列(三) 关于使用框架还是自主开发以及sharding实现层面的考量(不太懂)
- 软件项目开发流程以及人员职责