业务数据库开发上线流程v1.0

XX业务数据库开发上线流程v1.0

草拟时间:2015.11.23
制订时间:
修订时间:

0x00 目的

本文定义了业务在开发上线发布过程中涉及的数据库相关流程,指引业务人员高效完成数据库上线工作,最终确保上线质量可控。

0x01 适用范围

人员:所有研发人员,运维人员
数据库:业务所有MySQL 数据库

0x02 流程说明

流程内容包含:
数据库申请-->功能开发---功能与性能测试-->提交审核-->运维审核--->上线变更---验证---上线结束

1. 数据库服务申请

流程负责人员:业务开发人员

自建MySQL新集群申请

主要活动:自建新集群涉及到新服务器申请,需要至少提前1个月与运维接口人进行沟通和申请

申请途径:方案确认后,开发人员 提交申请工单。

托管数据库新实例申请

主要活动:托管数据库 新实例涉及到其他部门资源,业务需要提前一周与运维同学进行沟通

申请途径: 
 申请模板:
1.业务名称
2.需求背景
3.预估容量大小
4.数据清理规则
5.主要接口人员
6.实例名称与字符编码(默认utf8)

新库,表申请和说明

主要活动:新库表创建申请
 申请途径:确认DB服务器信息后,提交工单申请。 
 申请模板:
1.数据库IP和端口
2.业务名称与需求背景
3.库表信息简要描述说明

2. 数据库功能开发

流程负责人员:业务开发人员

主要活动: 业务开发必须在开发或测试环境数据库完成SQL脚本功能性开发,库表字段名尽可能做到见名知意,添加必要的备注信息。

3.功能与性能测试

流程负责人员:业务开发和测试人员

主要活动: SQL脚本必须在测试环境数据库完成功能性和性能测试,对于可能查询频繁的字段创建好必要的索引。

4.提交数据库变更申请

流程负责人员:业务开发和测试人员

主要活动:
      业务上线涉及数据库sql经测试环境功能和性能测试通过后,开发人员在工单系统进行提单,进行数据库发布操作申请。
      临时型数据库sql需求,涉及百万以上记录表批量数据只读(select)查询,需要开发人员内部double check并知会到运维人员,无需提交申请单。
      涉及到数据变更的需求,需要提交变更需求,走数据库变更流程。

申请途径:

库表结构修改的需求需提前一天或者选择一个访问量小的时候,全部放到上线时候处理,会对上线过程造成影响。
     提交变更语句。

5.运维审核

流程负责人员:业务运维人员

主要活动:运维人员收到数据库变更工单后,第一时间对变更单内容进行审核,审核通过即可配合进行变更操作,审核不通过需打回进行内容修改,重新提单。
   运维审核阶段,运维人员需要关注表字段命名是否合理,是否能根据名称确定表的含义与用途:
1.sql语法是否存在错误
2.表是否创建主键,是否创建索引
3.update,delete等修改数据的条件是否合理
4.帐号申请的操作权限是否是必要的,比如drop,alter,delete权限。
5.insert,update,alter等语句是否合理,针对一个表的表结构修改操作在一个语句中完成,数据update和delete是否有where判断条件。

6.上线变更

流程负责人员:业务运维人员

要求上线申请提交的sql命令或文件明确指定操作的数据库和表以及编码。

7.验证

流程负责人员:流程涉及的所有人员

主要活动:运维上线变更完毕后,由运维人员进行初步确认,由开发,测试人员进行二次变更确认。

8.上线结束

流程负责人员:业务运维和需求发起人员

主要活动:变更确认通过后,运维人员 结单操作,需求发起人知会提单人本次数据库功能上线流程结束。

0x03 违反流程行为的处理

1.违反流程行为:

1.未按照流程进行变更
2.非授权行为进行变更

2.违反流程行为处罚:

对于违反数据库开发上线流程行为未造成影响的,QA记录过程偏离。

对于违反数据库开发上线流程行为并造成一定影响的,记录线上问题单并持续跟踪。

对于违反数据库开发上线流程行为并造成明显影响的,按照公司BG及部门相关处罚规定处理。

0x04 修订与发布

1.修订

通过与业务方人员沟通对数据库上线流程进行草拟修订。

2.发布

流程内容修订后,发布最新内容及变更内容邮件通知全体研发人员。

0x05 其他

业务功能变更涉及sql:
1.业务中sql语句由开发和测试人员在开发测试阶段把控,本文不涉及相关流程。
2.核心业务 系统重大版本变更,概设文档需要含数据库设计通知到运维人员
2. 变更SQL需要在测试结束提交给运维人员确认变更时间和审核内容。

可裁剪情况说明

1.已存在数据库配置时无需申请环节
2.开发测试环节在业务进度较紧张时可以同时进行
3.审核和变更环节在操作上可以合并进行
4.变更范围较小,数据少时验证通过,无需对外通知。
5.非核心DB部分操作,可根据紧急程度进行先操作后补单流程。

时间: 2024-10-26 20:44:30

业务数据库开发上线流程v1.0的相关文章

安卓开发开发规范手册V1.0

安卓开发开发规范手册V1.0 之前发布过一份Web安全开发规范手册V1.0,看到收藏文章的读者挺多,发现整理这些文档还挺有意义. 最近周末抽了些时间把之前收集关于安卓安全开发的资料也整理了一下,整理出一份安卓安全开发手册,大部分内容都是在一些博客看到各位师傅的分享. 一.manifest文件安全 1.1 禁止PermissionGroup的属性为空 PermissionGroup可以对permission进行一个逻辑上的分组.如果PermissionGroup的属性为空,会导致权限定义无效,且其

2016-02-12 网站开发知识梳理--v1.0

1. 梳理的体系结构如下:   2.下面具体讲讲我目前的认知状况: <1> 浏览器端优化: 目的 -- 降低页面加载时间 #影响加载时间的因素: 页面上的资源(图片.js.css等)资源链接数 静态文件是否设置了缓存(依据expires/ETAG) 页面上链接是否来自多个域名(浏览器同时向同一个域名发起的链接数是固定的,所以将不同的文件放到不同的二级域名下可以提高资源链接的并发数) cookie的使用(非通用的cookie不要设置成根域名,否则所有页面.js.图片在访问时都会带上cookie,

Web安全开发规范手册V1.0

一.背景 团队最近频繁遭受网络攻击,引起了部门技术负责人的重视,笔者在团队中相对来说更懂安全,因此花了点时间编辑了一份安全开发自检清单,觉得应该也有不少读者有需要,所以将其分享出来. 二.自检清单 检查类型 说明 检查项 输入验证 概述 任何来自客户端的数据,如URL和参数.HTTP头部. Javascript戓其他嵌入代码提交的信息,都属于不可信数据.在应用外部边界或内部每个组件或功能边界,都将其当做潜在的恶意输入来校验 白名单 不可信数据可以设定白名单校验的,应接受所有和白名单匹配的数据,并

MySQL 数据库设计初步规范V1.0

数据库设计规范: 1,表设计规范 1.1关于表设计 a)         表名.列名必须有注释. b)         命名应使用富有意义的英文词汇或者缩写,多个单词组成的,全部大写,以"_"分隔开来,只能使用英文字母,数字和下划线,不留空格.比如USER_DETALL,不允许使用关键字TYPE或者STATUS等来作为字段名. c)         命名长度不超过15个字符为宜(避免超过20),应该反映数据集所在的业务范围,或者业务功能,如POWER_USER(用户中心)等. d)  

【工具篇】利用DBExportDoc V1.0 For MySQL自动生成数据库表结构文档

对于DBA或开发来说,如何规范化你的数据库表结构文档是灰常之重要的一件事情.但是当你的库,你的表排山倒海滴多的时候,你就会很头疼了. 推荐一款工具DBExportDoc V1.0 For MySQL(MySQL数据库表结构导出器). 介绍: DBExportDoc V1.0 For MySQL是一款利用office特性VBA开发的小工具,利用此工具可以将本机MySQL上任意数据库.任意表的数据结构导出.但是它不是一款你安装是一路next到finish就可以立刻使用的. 要注意的有两点: 首先,你

jplogic v1.0案例开发之知识库管理(文档管理等)(二)

jplogic v1.0开发陆续更新,意在和广大网友分享交流.通过寻求合作伙伴,交流群376447127.以下是jplogic的关于知识库模块的部分功能,例如以下进行功能展示: 知识库主界面: 新增知识类别: 新增文档: 调整类别结构: 附件明细操作: 文档信息查看:(将上传的各种文本文件转化成swf格式,便能够实现仿百度文库在线阅读功能) 海量知识库文档高级检索(数据库检索.索引检索(全文检索))等功能.

Farseer ORM开源框架 V1.0 开发目标

本篇主要给大家说明下在V1.0中,计划开发的任务的状态.按照国际惯例.上大表格 开发计划状态 编号 模块 状态 说明 1  分离Utils.Extend.UI  √  在V0.2版本中,是集成在一个项目里,现在已经各有自独立成4个项目文件了,需要时才引用. 2  TableContext  √  表上下文  3  ViewContext    视图上下文 4  ProcContext    存储过程上下文  5  TableSet  √  表查询  6  合并SQL提交  √  将多次操作,合并

【资源共享】Rockchip I2C 开发指南 V1.0

2C设备的设备应用非常广泛,常见的包含重力传感器,触摸屏驱动芯片,音频解码等 这个文档是RK3399的I2C开发文档:<Rockchip I2C 开发指南 V1.0> 内容预览: 下载地址:http://developer.t-firefly.com/thread-12495-1-1.html

基于Qt5.5.0的sql数据库、SDK_tts文本语音朗读的CET四六级单词背诵系统软件的编写V1.0

作者:小波 QQ:463431476 请关注我的博客园:http://www.cnblogs.com/xiaobo-Linux/  感觉我要火~~这比我是装定了!! 我的第二款软件:CET四六级单词背诵软件.基于QT5.5.0.sql数据库.以及TTS文本识别语音单词朗读的一款软件. 第一款软件的sql数据库软件的编写:http://www.cnblogs.com/xiaobo-Linux/p/4676950.html 现在来讲解我的第二款高大上的代码: 这个是.pro的代码,其中axconta