`

(转载)SQL Server 2005 数据库快照(database Snapshot)

阅读更多

数据库快照(atabase snapshot)是一个只读的,静态的数据库视图。一个数据库可以有多个数据库快照,每个数据库快照在被显性的删除之前将一直存在。数据库快照将保持和源数据库快照被创建时刻一致,所以可被用来做一些报表。并且由于数据库快照的存在,我们可以很容易的把数据库回复到快照创建时刻。

数据库快照提供了一个把数据库回复到一个特定时间点的有效途径。一个数据库快照将记录从这个数据库快照被创建后已经提交的所有事务,这样你在对数据库进行错误操作后也不会发出如果上天能够再给我一次机会的话,我。。。。。。的感慨。由于是只记录数据库发生的改变,也不是在当前的那一时刻数据库的状态,所以数据库文件并不会很大,如下例:

--我们先来为数据库Northwind创建一个数据库快照,命名为NORTHWIND_DBSS1200,并让此数据库快照的文件存储在C:\NORTHWIND_DATA_1200.SS文件中

CREATE DATABASE NORTHWIND_DBSS1200 ON

( NAME = NORTHWIND, FILENAME =

'C:\NORTHWIND_DATA_1200.SS' )

AS SNAPSHOT OF NORTHWIND;

GO

 

--可以看到这个数据库快照文件的属性,如下:可以看到现在Size on disk128K

USE NORTHWIND

GO

--现在Northwind数据库进行更新操作

UPDATE DBO.CUSTOMERS

SET COMPANYNAME='NEWEGG.COM'

--可以看到现在Size on disk384K

--看一下Northwind数据库中被更新的列中存储的内容是已经被更新过的

SELECT DISTINCT COMPANYNAME FROM NORTHWIND.DBO.CUSTOMERS

 

--看一下NORTHWIND_DBSS1200数据库中被更新的列中存储的内容还是被更新以前的内容

SELECT DISTINCT COMPANYNAME FROM NORTHWIND_DBSS1200.DBO.CUSTOMERS

--IF AN ERROR DAMAGES A DATABASE, YOU MAY CHOOSE TO REVERT THE DATABASE TO A DATABASE SNAPSHOT THAT PREDATES THE ERROR. REVERTING OVERWRITES THE ORIGINAL SOURCE DATABASE WITH THE REVERTED DATABASE.

 

RESTORE DATABASE NORTHWIND FROM

DATABASE_SNAPSHOT = 'NORTHWIND_DBSS1200'

GO

--确认

SELECT DISTINCT COMPANYNAME FROM NORTHWIND.DBO.CUSTOMERS

 

--删除数据库快照

DROP DATABASE NORTHWIND_DBSS1200

 

从数据库快照中恢复数据库到快照创建的时刻

分享到:
评论

相关推荐

    MS SQL Server 2008数据库快照

    ### MS SQL Server 2008数据库快照详解 #### 一、快照原理与运行机制 数据库快照,作为MS SQL Server 2008的一项关键特性,提供了一种只读、静态的数据库视图,它捕捉的是数据库在某一特定时间点的状态。这种快照...

    SQL Server 数据库快照妙用.docx

    SQL Server数据库快照是SQL Server 2005及后续版本提供的一项功能,它允许用户创建当前数据库的只读、静态视图,用于快速分析或回溯到特定时间点的数据。数据库快照不包含未提交的事务,确保了事务一致性。以下是对...

    浅谈对SQL Server数据库快照的认识.pdf

    数据库快照是SQL Server数据库中的一个重要概念,它是源数据库在特定时间点的一个只读副本。快照能够为报表生成、灾难恢复等场景提供重要帮助。当创建快照时,它并不会立即分配磁盘空间,而是生成一个稀疏文件,初始...

    sql server2005教程

    SQL Server 2005 数据库快照(database Snapshot) SQL server 2005安装问题汇总 SQL Server 2005与Oracle同步注意NUMBER类型转换 SQL Server2005中利用SQL语句自动生成序号的俩种方式 SQL2005实现循环每一行做一定...

    Sql Server数据库数据恢复的几种实用方法.pdf

    创建数据库快照需要使用T-SQL语句,例如:CREATE DATABASE SNAPSHOT = 'snapshot_name' ON (NAME = 'database_name', FILENAME = 'filepath')。 三、使用事务日志恢复数据 事务日志是Sql Server中的一种日志文件,...

    sql Server2005高级编程

    - **T-SQL 语句**:使用 `CREATE DATABASE SNAPSHOT` 语句创建数据库快照。 - **SSMS**:在 SSMS 中,右键点击数据库,选择“任务” -> “生成快照”,按照向导步骤操作即可。 ##### 2.2 管理数据库快照 创建快照...

    掌握SQL Server数据库快照的工作原理第1/2页

    掌握 SQL Server 数据库快照的工作原理 数据库快照是 SQL Server 中的一种功能,它允许用户创建一个只读的数据库副本,该副本可以反映源数据库在某个时间点的状态。数据库快照的工作原理是基于稀疏文件的技术,稀疏...

    SQLServer数据库 DBA面试题 最新试卷 SQL面试题

    在SQL Server数据库领域,DBA(Database Administrator,数据库管理员)的角色至关重要。他们负责数据库的设计、实施、监控、优化以及安全等方面的工作。以下是一些在DBA面试中可能会遇到的SQL Server相关知识点,...

    SQL Server的升级之路系列课程(5):升级SQL Server 7.0.2000数据库引擎到SQL Sevrer 2005.Side-by-side (上)

    4. **并发性提升**:通过引入读已提交快照隔离(Read Committed Snapshot Isolation)和行版本控制,SQL Server 2005在处理并发事务时表现更优。 5. **性能优化**:包含了新的查询优化器,支持更高级的查询计划选择...

    数据库sql2005转换成sql2000的生成脚本

    本文档旨在解析一个将SQL Server 2005数据库转换为SQL Server 2000兼容格式的脚本。此脚本不仅包含了创建数据库的基本命令,还涉及了多个设置选项的调整,以便确保新创建的数据库能够在较旧版本的SQL Server环境中...

    两台SQL-Server数据同步解决方案

    - 查看复制目录(如C:\Program Files\Microsoft SQL Server\MSSQL\REPLDATA\unc\XIAOWANGZI_database_database)下是否定期生成时间戳文件夹。 - 在订阅服务器上检查是否可以看到发布的表。 #### 六、手动同步...

    十大特性,让我们爱上SQL Server 2005 现在就开始留意这些新特性吧!.pdf

    在开发工具方面,SQL Server 2005引入了Visual Studio Team System for Database Professionals,提供了全面的数据库项目管理和版本控制,使得数据库开发更加集成和高效。 最后,SQL Server 2005还加强了对XML的...

    sql server 2005 一惯性读取(日语)

    这一特性在SQL Server 2005中被称为“READ_COMMITTED_SNAPSHOT”和“スナップショット分離レベル”(Snapshot Isolation Level),它为数据库的一致性查询提供了新的机制。 ### 一貫性读取(READ_COMMITTED_...

    SQL SERVER间数据同步

    ### SQL Server 数据库间数据同步方法详解 #### 一、SQL Server 数据同步概述 SQL Server 数据同步是指在两台或多台 SQL Server 数据库之间保持数据一致性的过程。这对于分布式的数据库环境尤其重要,例如需要在...

    SQLServer发布与订阅

    1. 在两台服务器上安装好 SQL Server 2008 R2,主要安装的组件包括 Database Engine(含 SQL Server Replication)、Management Tools,并且启动 Sql Server 代理(发布服务器和订阅服务器均设置)。 2. 主数据库...

    Fundamentals of SQL Server 2012 Replication

    SQL Server 2012复制技术是微软数据库管理系统中的一个重要功能,它允许数据库管理员将数据的副本从一个SQL Server数据库分发到其他多个数据库实例。这种数据分发可以跨越不同的数据库平台,实现数据的同步、更新和...

    SQL2005学习总结.docx

    创建数据库快照的命令是`CREATE DATABASE SnapshotName AS SNAPSHOT OF SourceDatabaseName`,这样可以保护源数据库并提供历史数据访问。 综上所述,SQL Server 2005的全文索引、Tempdb数据库和数据库快照都是提升...

Global site tag (gtag.js) - Google Analytics