WEB开发网
开发学院数据库MSSQL Server SQL Server 数据库快照妙用 阅读

SQL Server 数据库快照妙用

 2008-03-03 09:52:46 来源:WEB开发网   
核心提示:如果要在一个特定的时间分析数据库中的数据,你会怎么做?例如,SQL Server 数据库快照妙用,你想要分析晚上12点的数据,你会采取什么样的措施?最经常用到的方法,图一(来源:SQL Server 2005 在线手册)使用数据库快照首先,你需要创建一个数据库快照,创建一个计划任务,在晚上12点的时候执行备份

如果要在一个特定的时间分析数据库中的数据,你会怎么做?例如,你想要分析晚上12点的数据,你会采取什么样的措施?最经常用到的方法,创建一个计划任务,在晚上12点的时候执行备份,将当前数据库以一个新的名字备份到服务器上,然后再开始分析这个备份数据库中的数据。这样做的问题就在于,如果这个数据库很大,那么备份它就需要花费大量的时间和磁盘空间。如果你需要在数据访问高峰期做备份的话,它花费的资源足以让你的服务器宕机。然而,在SQL Server2005中,有一项新的功能,名为数据库快照,可以让你很方便的处理类似的问题。

除了上面提到的优点,使用数据库快照还有很多其它的好处,本文将集中讨论数据库快照的优点。数据库快照是一项不太起眼的功能,这意味着,许多DBA和开发者都没有注意到它的存在。

数据库快照是什么

数据库快照是当前数据库的只读静态视图,不包括那些还没有提交的事务。没有提交的事务被回滚了,这样才能保证数据库的事务一致性。

工作原理

通常,我们使用一项功能的时候并不需要知道它的工作原理。然而,知道其工作原理将会给我们的工作带来大大的好处。

一旦你创建数据库快照,快照数据库将被分配到一个空闲文件中。当原始数据页发生变化的时候,该页就会被移动到这个空闲文件。当你访问数据库快照的时候,你会访问到空闲文件,以及原始数据库上那些没有发生变化的数据页。我们可以从下图看出数据库快照是如何工作的。

SQL Server 数据库快照妙用

图一(来源:SQL Server 2005 在线手册)

使用数据库快照

首先,你需要创建一个数据库快照。有两种方法可以创建数据库快照。

1 2  下一页

Tags:SQL Server 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接