《MS SQL Server 2000管理员手册》系列——33. 还原及回复数据库[1]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

33. 还原及回复数据库
还原方法
执行数据库还原
规划严重损坏的回复
本章总结
在 第 32 章 中,我们学到了系统备份的重要性,以及如何执行备份。本章将继续上一章所提的数据库保护与建立的说明。我们将学习如何还原数据库、如何回复系统,还有数据库回复的运作方式。正如您所见,备份执行的类型会影响到回复的进行。除了学习关于还原与回复数据库,也会介绍 记录文件传送 (log shipping)。记录文件传送是 Microsoft SQL Server 2000 中的新功能,让您用原始的服务器交易纪录在另一个服务器上建立备用副本。
________________________________________
说明
有些 DBA 提到还原与回复数据库的过程都称作 recovering the database。然而,这些程序是大不相同的。 第 32 章 说明了从备份还原数据库与 SQL Server 回复过程的差异。在任何情况下,将数据库带回系统失败前的状态,就是备份、还原和回复操作执行的主要目标。
________________________________________
还原方法
 
如前所提,执行备份的类型影响了还原操作的性质。在这个章节中我们将学习如何从完整备份、差异式备份、以及交易纪录备份执行还原。
从完整备份还原
 
从完整备份还原是相当简单直接的过程:只要用 SQL Server Enterprise Manager或 Transact-SQL (TSQL)命令还原备份文件。本章稍后会有这两种方法的使用说明。如果在完整备份后,打算从差异式备份还原,只要确定有最近的交易纪录备份,如本章后面 < 从交易纪录备份还原 > 章节所言,并在执行还原时指定 NORECOVERY 选项就行了。
________________________________________
说明
还原操作有个重要的特性,就是 RECOVERY 的选项。它命令 SQL Server 在还原完成后用联机交易纪录来回复数据库。如果想利用差异式备份文件或者交易纪录文件,记得要确定已经指定 NORECOVERY 选项。
________________________________________
从差异式备份还原
 
要从差异式备份还原,必须先从完整备份还原,然后还原上次完整备份后的所有差异式备份文件。记住,差异式备份是用来备份在最近一次完整备份或差异式备份后更改过的信息。确定您使用的是 NORECOVERY 选项,除非您正在还原最后一个备份文件,而还原最后一个备份文件可以用 RECOVERY 选项。如果在差异式备份之外还从交易记录文件执行还原,就必须同时备份目前的记录文件并应用所有更改过的记录文件,这将在下一节中提到。
从交易记录文件备份还原
 
执行回复操作将使数据库的状态返回到失效前的那一点,先还原数据文件,然后还原从开始备份以来对数据库的更改内容。您可以储存所有失效以来的交易记录文件备份来还原这些变更。
为了确保在还原这些记录文件的过程中没有遗失任何最新交易,必须先保存目前的记录文件。如果忘了保存目前的记录文件,会因为还原操作覆写交易记录而遗失记录在记录文件中的大部分最新的更改。
要使用交易记录文件将数据库还原到失效前的状态,请依下列步骤进行(这些是建立在 第 32 章 中所学到的技术基础上):
1. 使用 NO_TRUNCATE 选项备份目前使用中的交易记录文件。
2. 还原最近的完整备份。
3. 还原所有的差异式备份,将数据库还原到最后的备份状态。
4. 还原所有从最后的差异式备份以来的交易记录文件备份,以重置所有自最后备份以来所发生的交易。
5. 还原在步骤 1 中建立的交易记录文件备份,让数据库回到失效前的状态。
在 BULK_LOGGED 回复模式中还原数据库
 
如果正在 BULK_LOGGED 回复模式中执行数据库,需要还原时就必须再做一次记录操作。这些操作包括 SELECT...INTO、BULK COPY、BCP 和一些 CREATE INDEX 操作,还有已在上一章谈过的文字操作。如果觉得这里所谈的内容过于麻烦,可以不要在 BULK_LOGGED 回复模式中执行数据库。
执行数据库还原
 
使用 Enterprise Manager 或 T-SQL 命令可执行还原操作--这两种方式得到的结果相同。与备份操作不同,SQL Server 没有提供还原操作精灵。
使用 Enterprise Manager 执行还原
 
要使用 Enterprise Manage r执行还原操作,请按照下列步骤操作:
1. 在 Enterprise Manager 中,在要还原的数据库名称上按鼠标右钮,在快捷菜单上选取 所有工作 ,然后选择 还原数据库 ,进入 还原数据库 对话框,如图33-1所示。
 
 
图33-1 「还原数据库」对话框中的「一般」页签
2. 在 一般 页签的顶端是 还原成数据库 下拉式清单,这个清单可指定这个备份将被还原的数据库型态。图33-1显示选择了 Example 数据库。
这里并不要求直接用同样的名称来还原数据库-实际上,应该要使用另一个数据库名称。例如,假定某个使用者意外地删除了一个数据表,想要还原完整的数据库,那么就会将所有人的数据还原成较早的数据。但是,其实可以将数据还原到重新命名的数据库中,取出被删除的数据表,然后将这个数据表插入到仍在工作的数据库中。
3. 接着指定还原操作的类型: 数据库 、 档案群组或档案 或者 来源装置 。 数据库 选项可指定还原数据库。 档案群组或档案 选项可指定还原的档案群组或档案。 来源装置 选项可指定还原的装置,装置的内容将决定还原的类型。图33-1显示选择了数据库选项。
4.  参数 区域可以让您设定是否要显示其它数据库的备份(从另一个数据库的备份进行还原),应该要先还原哪个备份(如果设定了多个可用的备份),还有是否应该执行 还原时间点 。 还原时间点 能够还原数据到特定时间的状态。例如,如果在12:01时意外的删除了数据表,可以用 还原时间点 还原12:00时的数据库,刚好在删除发生之前。因为有全部可用的备份清单,可以选择需要使用的备份。如果没有强制还原最新的备份,那么数据库的所有备份都可供选择。
在 还原数据库 对话框中可选择一组备份,然后选择 属性 按钮检视内容。 备份集属性 窗口如图33-2所示。

 
 
图33-2 备份集属性窗口
5. 选择 确定 ,返回 还原数据库 对话框的 一般 页签,并选择 档案群组或档案 显示一个不同的画面,如图33-3所示。图33-3显示 Example 数据库中所有的档案和档案群组备份。要检视这些档案和档案群组备份的属性,请选取档案或档案群组然后选择 属性 。
 
 
图33-3 选取档案群组或档案选项后,还原数据库对话框的一般页签
6. 现在选择 来源装置 ,如图33-4所示。当选取一个还原的特殊备份装置时,会需要用到这个选项。必须以手动选取这组备份,然后指定 SQL Server 是否应该执行完全还原、差异还原、交易记录还原或档案和档案群组还原。也可以让 SQL Server 读取备份信息,并将这些信息与其它备份历史信息一起储存在 msdb 数据库。如果要执行数据库还原,这些关于备份的信息就可派上用场了。
7. 选取 还原数据库 对话框的 选项 页签,如图33-5所示。在这个页签顶端会看到3个复选框。 备份还原后,逐一退出已插入的磁带 复选框可确保磁带不会留在磁带机中被覆写。选择 还原备份前,先提示我 选项提供改变执行备份的机会。而选择 强制对现有的数据库进行还原 复选框让您用还原的数据库覆写现存的数据库。在这个页签,可以在一个新的数据文件名之下还原数据库,这对于保留原始数据库是很有用的。
 
 
图33-4 选取来源装置选项之后,还原数据库对话框的一般页签

本文关键:《MS SQL Server 2000管理员手册》系列——33. 还原及回复数据库
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top