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

华清缘餐饮公司

华清缘餐饮公司

2016-01-29 15:58

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

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

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

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

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

   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://m.tulaoshi.com/sqlserver/)

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

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

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

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

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

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

展开更多 50%)
分享

猜你喜欢

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

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

介绍MySQL的管理工具:phpMyAdmin

编程语言 网络编程
介绍MySQL的管理工具:phpMyAdmin

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

MySQL的管理工具:phpMyAdmin

编程语言 网络编程
MySQL的管理工具:phpMyAdmin

Linux系统中的进程管理工具SystemD介绍

服务器
Linux系统中的进程管理工具SystemD介绍

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

desktopok桌面管理工具怎么用

电脑网络
desktopok桌面管理工具怎么用

巧用Word工具栏当管理工具

word
巧用Word工具栏当管理工具

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

《新超级马里奥兄弟Wii》游戏流程攻略

《新超级马里奥兄弟Wii》游戏流程攻略

局域网速度变慢的故障分析

局域网速度变慢的故障分析
下拉加载更多内容 ↓