数据库版本管理

数据库版本管理

ID:45604192

大小:285.47 KB

页数:16页

时间:2019-11-15

数据库版本管理_第1页
数据库版本管理_第2页
数据库版本管理_第3页
数据库版本管理_第4页
数据库版本管理_第5页
资源描述:

《数据库版本管理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、简介在软件开发过程中,版木控制是一个广为人知的概念。因为一个项冃可能会需要不同角色人员的参与,通过使用版木控制软件,可以使得项目屮不同角色的人并行参与到项目当中。源代码控制使得代码可以存在多个版本,而不会将代码库变得混乱,典型的场景包括Bug修复、添加新功能、版本整合等。虽然在开发层面的版本控制软件已经非常成熟,但F1前国内述没有专门针对数据库层面的版本控制软件來帮助不同角色的人员在数据库层血进行团队协作、变更代码管理以及対数据库的变更进行查看和比对。在数据库层面版本控制工具的缺乏叮能会出现如下场呆:•

2、无法在数据库层面进行团队协作:开发人员A对存储过程的修改导致开发人员B创建的存储过程被覆盖,从rfu无法比对和追踪•开发人员•开发DBA■测试人员难以协作:SVN等版木工具是基于文件的,很难在数据库层面进行版本控制•数据库发生的变更难以追踪:现冇的技术无法追踪由谁、在什么时间、对数据库修改了什么,当发&由数据库引起的报错或性能下降时,难以排杏•无法记录对数据库变更的过程资产:数据库变更的历史记录只有数据库运维人员了解,当该相关人员离职或调岗,这些过程资产难以继承•难以审计数据库:现侑的数据库审计功能往往

3、依赖于口志,对性能造成很大影响。•SQL脚本无法有效管理:现有的做法往往是将SQL以文件形式保存,无法有效管理和共享•无法查看被加密的数据库对彖:当需耍对加密的数据库对彖进行修改时,如呆无法找到对■象定义的原始记录,则必须重写该对象•SVN建立和使用复杂:SVN使用流程对于数据库人员过于繁琐,为数据库人员增加了额外的工作负担由于数据库是整个业务应用的核心,上述问题无论是在开发环境还是在生产环境如果得不到有效的解决,会造成生产力低下、过程资产无法得到管理、数据库审查无法进行、难以排查由数据库变更导致的问题

4、等情况。F面来介绍一FSourceSafeforSQLServer如何解决该类问题。软件的安装软件的官网下载完SourceSafe的安装包后…路下•步,安装完成后打开ManagementStudio,在碍要加入到源代码控制器的某个数据库服务器上右键,在弹出菜单中选择“添加数据库到版本控制”,如图1所示。Him数据库田N系统数据库田□数据库快照a□aIJAdve田ijCredii

5、±

6、Lidnt田曲GRQS田01Salest田JSourc田□SSCTr田IJVersicUN安全性BN服务器更列口复制5NA

7、lwaysO八B□管理司5一iIntegratiO1aS)SQLSen新建数据库(N)・・・新建葩(Q)编写数据库脚本为(S)矽(T)FindInvalidObjects策略(O)方面(A)启动PowerShell(H)添加数据库到版本控制授权级帮助关于报表(P)►重命名(M)删除(D)刷新(F)雇性侃)图1•将数据库添加到版木控制然后设置相关的选项,如图2所示。图2.添加数据库到版木控制相关设置现在再来看,整个数据库都己经在版木控制之下了,如图3所示。日皿・(SQLServer11.0.3128・CA

8、REYSON-PCCa日□数据库S□系统数据库田」数据库快照AdventureWorks2012ffl丄I数据库关系图田勿视图ffi□同义词日囱可编程性日勿存储过程田□系统存储过程田切dbo.CommandExecutedbo.usp_GetProductTrdnsactidbo.usp_paramsniffingtestdbo.uspGetEmployeeManagedbo.uspGetManagerEmployeedbo.uspGetWherellsedProducdbo.uspLogErrord

9、bo.uspPrintErrordbo.uspSearchCandidateResuHumanResources.usptlpdateEHumanResources.usptlpdateEHumanResources.usptlpdateES®dbo.DatabaseBackup田切dbo.IndexOptimize田尿dbo.Proc_testEn田切dbo.test_xx田尿dbo.testProd田国田切田切田切田切田切田切田切田切田切田切田勿函数田孕数据库触发器1.工二廿隹图3.查看受版本控制的

10、数据席至此,SourceSafeforSQLServer就安装配置完成了。典型应用场景SourceSafe町以解决下述问题:开发团队进行版本控制在一个开发团队中,对于数据库对象的每一次变更都会H动覆盖上一个版本,导致上一个版本对象定义的丢失。比如说开发人员A创建了存储过程“ProcA”,然后开发人员B修改了存储过程“ProcA”,开发人员A创建的存储过程将会被开发人员B所做的修改覆盖,造成之前定义存储过程的丢失和无法冋滚。使用SourceS

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。