深入介绍:SQL Server变更管理工具

2016-01-29 15:58 1 1 收藏

深入介绍:SQL Server变更管理工具,深入介绍:SQL Server变更管理工具

【 tulaoshi.com - SQLServer 】

当SQL Server 2005起动并运行的时候,有一些事情是你可以做,并且可以让你的生活变得像程序员一样更加简单——不需要变成数据库管理员。最常见的一个在背上的针芒就是变更管理。虽然大多数的开发人员都很熟悉Microsoft Source Safe或者其他的资源控制技术,数据库开发人员可用来帮助轻松管理变更的工具也是非常有限的。SQL Server 2005包括了Visual Source Safe集成在内。在这篇文章中我不会涉及Source Safe。我将会把重点集中在SQL Server本身可以让你的项目前进的技巧和技术上。在这篇文章中,我将会回答以下两个大问题:

  1、我如何回滚因错误产生的变更?

  2、我如何将变更从一个数据库移到另一个数据库中?

  认识到在开发时间里你可能会犯错误,那么在每次更改之前都先给数据库进行一次拷贝。你可能会发现自己最终被埋在数据库的几百份拷贝中——我就见过这种情况发生。这会变得非常难以处理。如果你的工作方式更像我,那么你会想要工作在开发数据库中,只是简单的找到一种方法来管理错误。要处理这种错误,通常有两种方式:数据库备份和数据库快照。我将要讨论的第一种方式是数据库备份(注意:你可以使用SQL Server管理套件执行每种技巧——但是因为我们是开发人员,所以我们将会在Transact-SQL完成这些任务。)

  首先,让我们创建一个完全的数据库备份。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/sqlserver/)

   BACKUP DATABASE [AdventureWorksDW] TO DISK = N'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLBackupAdventureWorksDW.bak' WITH NOFORMAT, NOINIT, NAME = N'AdventureWorksDW-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO

  在这个例子中,我为SQL Server默认环境备份了AdventureWorks DW示例数据库到备份文件夹中去。备份是我们最可靠的擦除器。如果你不想要经常备份,试试叫作“数据库快照”的数据库新功能。数据库快照就是第二种方式。它允许我们取出某个时间点的数据库图像。当主数据库(或者源数据库)发生变化的时候,快照数据库对数据库备份之前发生的主要变化进行了记录。从本质上说,数据库快照在拷贝上使用了从被修改页面上传过来的写技术。因此你可以使用快照来进行恢复。要创建数据库快照,我执行如下的T-SQL:

CREATE DATABASE AdventureWorks_DWBEFORECHANGE ON ( NAME = AdventureWorksDW_Data, FILENAME = 'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDataAdventureWorks_DW.ss'AS SNAPSHOT OF AdventureWorksDW;
GO

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/sqlserver/)

  这里灵活的部分就是知道数据文件的名字,在NAME子句中提供出来。你可以通过在SQL Server管理套件的数据库对象浏览器中找到拥有的文件来找到数据库数据文件名(是的,我们耍赖了)。

  现在,我们做一些修改,然后。噢我的天!我们需要回滚!魔法就在这里:

Use Master;
RESTORE DATABASE [AdventureWorksDW] FROM DATABASE_SNAPSHOT = 'AdventureWorks_DWBEFORECHANGE';

  这很酷,但是有些局限。当你使用快照恢复之后,你应该进行一次完全的数据库备份——仅仅是重新执行以上步骤。SQL Server重新构建了日志文件,然后执行一次完整的备份来使它正确。还有,既然数据库快照不能捕捉数据库中的一切内容,只是那些被修改了的部分,你可能需要使用我们前面创建的完全备份,或者用脚本重新输入所与的测试数据。在很多情况下,我们都将数据放在单独的插入数据脚本中,所以我们可以在匆忙间重新产生它们。

  我喜欢使用叫做EMS DB Extract的工具。它在生成向数据库中创建数据插入的脚本方面非常棒。SQL Server确实提供了数据库导入和导出向导,但是我发现它是有限制的,它强

来源:https://www.tulaoshi.com/n/20160129/1496956.html

延伸阅读
1、问题:图片哪里去了? 这可能是由3个原因造成的: (1)可能图片大小小于250*250像素。Picasa默认不显示小于这个尺寸的图片,所以有时你会发现无论如何都找不到这些图片。要让这些图片显示出现只需点击【查看】,勾选显示小图片。 (2)可能是Picasa不支持图片的格式,或你没有勾选Picasa显示某种格式的图片。你可以在【工具】-【选项】-【...
iPhone越狱后管理工具推荐之iTools 提示:此教程与iPad通用 第一步 1.可到iTools官方网站下载:http://itools.hk/tscms/连接iPhone,打开程序库,在此您可以进行电脑中app程序的管理。 第二步 2.可以关闭iTunes的备份功能,还有进行pxl向ipa的转换。 第三步 3.SHSH管理。可以进行SHSH的备份,SHSH服...
标签: 电脑入门
在安装卡巴斯基网络版6.0管理工具之前,先要检查一下系统是否支持安装管理工具,6.0的管理工具不能安装在windows me,windows 98,Windows XP 的Home上;第二步要检查要装的机器能否上网,管理工具下载更新要从卡巴斯基升级服务器上更新,还要检查要装的机器的IP地址和计算机名是否是固定的;检查该机器是否安装了其他的杀毒软件,如有要先卸载其...
iPhone越狱后管理工具推荐之同步助手 提示:此教程与iPad通用 特色一 1.可到同步助手官方网站下载:www.tongbu.com。同步助手内置海量软件库,且更新频率很快,方便用户对于程序的下载。tulaoshi 特色二 2.内置的音乐库,下载导入一气呵成。 特色三 3.铃声库,不必再因为铃声制作而感到头疼。 ...
ios应用开发数据管理工具:Core Data iOS 操作系统提供一系列用于存储,访问和共享数据的完整的工具和框架。 Core Data 是一个针对 Cocoa Touch 程序的全功能的数据模型框架,而 SQLite 非常适合用于关系数据库操作。应用程序可以通过 URL 来在整个 iOS 范围内共享数据。Web 应用程序可以利用 HTML5 数据存储 API 在客户端缓冲保...

经验教程

934

收藏

42
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部