`

[转]SQL Server 2005 从差异备份还原数据库

阅读更多

[转]SQL Server 2005 从差异备份还原数据库

差异数据库还原的语法与完整数据库还原的相同,只是完整数据库还原必须要执行在附加差异备份之前。当还原完整数据库备份时,数据库必须置为NORECOVERY模式。而且任何你希望还原的事务日志必须在附加了差异备份之后完成,正如示例所演示的。

首先,我通过对TrainingDB数据库执行完整备份、差异备份、事备日志备份来启动这个示例:

USE master

GO

BACKUP DATABASE TrainingDB

TO DISK='C:\Apress\Recipes\TrainingDB_DiffExample.bak'

 

-- Time passes

BACKUP DATABASE TrainingDB

TO DISK = 'C:\Apress\Recipes\TrainingDB_DifExample.diff'

WITH DIFFERENTIAL

-- More time passes

BACKUP LOG TrainingDB

TO DISK = 'C:\Apress\Recipes\TrainingDB_DifExample_tlog.trn'

 

现在,我将演示执行RESTORE,将数据库还原到最后事务日志备份完成时的状态:

 

USE master

GO

--Full Database restore 完整数据库备份还原

RESTORE DATABASE TrainingDB

FROM DISK = 'C:\Apress\Recipes\TrainingDB_DiffExample.bak'

WITH NORECOVERY, REPLACE

-- Differential 差异备份还原

RESTORE DATABASE TrainingDB

FROM DISK='C:\Apress\Recipes\TrainingDB_DifExample.diff'

WITH NORECOVERY

-- Transaction log 事务日志备份还原

RESTORE LOG TrainingDB

FROM DISK='C:\Apress\Recipes\TrainingDB_DifExample_tlog.trn'

WITH RECOVERY

 

这个查询返回:

已为数据库'TrainingDB',文件'TrainingDB'(位于文件1上)处理了1672页。

已为数据库'TrainingDB',文件'TrainingDB_log'(位于文件1上)处理了3页。

RESTORE DATABASE成功处理了1675页,花费1.801秒(7.615MB/秒)。

已为数据库'TrainingDB',文件'TrainingDB'(位于文件1上)处理了40页。

已为数据库'TrainingDB',文件'TrainingDB_log'(位于文件1上)处理了1页。

RESTORE DATABASE成功处理了41页,花费0.724秒(0.463MB/秒)。

RESTORE LOG成功处理了0页,花费0.184秒(0.000MB/秒)。

解析

差异备份捕捉数据库在最后一次完整数据库备份之后发生的变化。差异还原使用了与完整数据库 还原相同的语法,只是它们必须总是在完整数据库还原(设置NORECOVERY)之后。在此技巧中,数据库最初从完整数据库还原,然后是差异备份的还原, 最后是事务日志备份的还原。差异RESTORE命令的组成与前面RESTORE示例中的相似,只不过它是基于差异备份文件的。在最后一次还原操作时,指定 RECOVERY选项使数据库处于可用状态。

 

注:

还原数据库时,删除已存在的数据库,再使用还原命令。还原的数据库名要与数据库备份文件中的名称一致。

分享到:
评论

相关推荐

    SQL Server 2005 从差异备份还原数据库

    ### SQL Server 2005 从差异备份还原数据库 #### 概述 在SQL Server 2005中,数据库备份与恢复是一项至关重要的任务,尤其当涉及到数据的完整性和系统的连续运行时更是如此。差异备份作为一种常用的备份策略,在...

    将Sql Server 2000中的数据库备份文件还原到sql2005中

    在这个过程中,我们需要了解Sql Server 2000和Sql Server 2005之间的差异,以便正确地还原数据库备份文件。下面是相关的知识点: 1. Sql Server 2000中的数据库备份文件还原步骤 在Sql Server 2000中,备份文件的...

    Sqlserver2005数据库还原备份工具

    本文将深入探讨“Sqlserver2005数据库还原备份工具”以及相关的知识点。 首先,我们关注的是“备份”。在SQL Server 2005中,备份是预防数据丢失的关键步骤。备份操作可以创建数据库的完整副本,以便在系统故障、...

    SqlServer数据库的备份与还原

    SqlServer数据库的备份与还原是数据库管理中的核心操作,它们确保了数据库的稳定性和数据的安全性。在SqlServer2017中,可以采用手动备份和自动备份两种方式进行数据库的备份,同时在必要时进行还原操作。 首先,...

    SQL Server2005 数据库还原和备份

    ### SQL Server 2005 数据库备份与还原详解 #### 一、SQL Server 2005 备份概述 SQL Server 2005 是一款强大的关系型数据库管理系统,为企业提供了高度可靠的数据存储解决方案。为了确保数据的安全性和系统的稳定...

    SQLServer2005数据库备份与还原.docx

    * 在 SQL Server 2005 中,可以使用 SQL Server Management Studio 或 T-SQL 命令来还原数据库。 * 还原类型有完全还原、差异还原和事务日志还原。 * 还原数据库需要指定备份文件的路径和名称。 备份和还原的步骤 ...

    SqlServer2000数据库备份还原工具

    本文将详细阐述如何使用SQL Server 2000进行数据库备份和还原,并介绍一款名为"数据库备份还原.exe"的实用工具,以简化这一过程。 一、SQL Server 2000数据库备份 1. 备份类型: - 完全备份:备份整个数据库,...

    SQL Server 2021 如何备份、还原数据库.docx

    **二、SQL Server 2021还原数据库** 1. **获取备份文件**:要还原数据库,你需要先拥有一个有效的`.bak`文件,可以通过上述备份步骤获取,或者从其他来源获取。 2. **修改文件扩展名**:如果备份文件没有`.bak`...

    sqlserver还原备份数据库以及清理日志文件

    - **差异备份(Differential Backup)**:备份上次完整备份后发生变化的数据页。 - **事务日志备份(Transaction Log Backup)**:备份自上次事务日志备份以来发生的事务日志记录。 **1.2 恢复模式** - **简单恢复...

    SQL SERVER 2000 数据库备份与还原

    在SQL Server 2000中,数据库的备份与还原是数据库管理的重要组成部分,它确保了数据的安全性和可恢复性。下面将详细讲解这个主题。 首先,我们需要理解数据库备份的基本概念。备份是复制数据库或其一部分到另一个...

    SQL Server数据库备份与恢复(C#代码示例)

    为了实现上述功能,你需要在项目中引用Microsoft.SqlServer.Smo和Microsoft.SqlServer.SqlManagementUtils库。在压缩包文件"SQL Server数据库备份与恢复"中,可能包含了详细的C#代码示例,你可以参考这些示例来理解...

    c# asp.net实现sql server数据库备份

    完整备份会保存整个数据库,而差异备份则只备份自上次完整备份以来发生更改的数据。日志备份则用于记录事务日志,以便在恢复时能够保持事务一致性。 在C#和ASP.NET中,我们可以使用SQL Server的Management Objects ...

    SMO+PowerShell 实现SQLServer数据库的备份与还原

    标题 "SMO+PowerShell 实现SQLServer数据库的备份与还原" 涉及到的是在SQL Server环境中,使用SQL Server Management Objects (SMO) 和 PowerShell脚本来自动化数据库的备份和恢复过程。这是一种高效且灵活的方法,...

    浅谈SQL Server 2005数据库备份与还原.pdf

    描述中提到的文档是“浅谈SQL Server 2005数据库备份与还原.pdf”,这表明该文档可能是提供了一个基础介绍,对SQL Server 2005中数据库备份与还原的基本原理、策略选择、操作步骤以及可能遇到的问题和解决方案进行了...

    网传的几种方法sql2000还原SQL2005数据库 备份

    ### SQL Server 2000 数据库备份还原到 SQL Server 2005 的方法 在实际工作中,可能会遇到需要将旧版本的数据库备份还原到新版本的情况,比如本例中的将 SQL Server 2000 的数据库备份还原到 SQL Server 2005 中。...

    SQL2005数据库的备份与还原.pdf

    SQL Server 2005 提供了多种备份方式,包括完整备份、差异备份和日志备份。完整备份将整个数据库备份,差异备份将自上次完整备份以来更改的部分备份,而日志备份将 Transaction Log 的内容备份。 在备份数据库之前...

    SQLSERVER2000备份和还原说明

    ### SQL Server 2000 数据库备份与还原详解 #### 一、SQL Server 2000数据库备份 在进行任何重要的数据操作之前,备份是必不可少的一个环节。本章节将详细介绍如何使用SQL Server 2000进行数据库备份。 ##### 1.1...

    基于SQLServer的数据库备份与还原

    ### 基于SQL Server的数据库备份与还原 #### 一、引言 在现代信息技术领域,数据库系统作为数据管理的核心部分,在企业运营和个人信息管理中扮演着至关重要的角色。然而,无论是硬件故障还是软件错误,都可能对...

    sqlserver 数据库的备份与还原

    2. **差异备份**:差异备份仅备份自上次完整备份以来发生更改的数据。这种备份方式可以节省存储空间,并且通常比完整备份执行得更快。 3. **事务日志备份**:事务日志备份主要用于捕获自上次事务日志备份以来的所有...

Global site tag (gtag.js) - Google Analytics