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


    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

     

  • 相关阅读:
    分享一个文件的工具类
    关于itext生成pdf的新的demo(包含简单的提取txt文件的内容 和xml内容转化为pdf)
    全文检索的Demo
    dom4j操作xml的demo
    利用Java获取ip地址
    利用htmlparser读取html文档的内容
    关于pdfbox操作pdf的分享链接手长
    poi读取word的内容
    基于NPOI对Excel进行简单的操作
    “尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。”
  • 原文地址:https://www.cnblogs.com/seerlin/p/1384734.html
Copyright © 2020-2023  润新知