Oracle数据库系统恢复.ppt

上传人:高校教****PT 文档编号:96409982 上传时间:2023-11-23 格式:PPT 页数:31 大小:478.50KB
返回 下载 相关 举报
Oracle数据库系统恢复.ppt_第1页
第1页 / 共31页
Oracle数据库系统恢复.ppt_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《Oracle数据库系统恢复.ppt》由会员分享,可在线阅读,更多相关《Oracle数据库系统恢复.ppt(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第十一章:Oracle恢复学习目标11.1 数据库恢复概述11.2 无归档日志的数据库恢复11.3 有归档日志的数据库完全恢复11.4 有归档日志的数据库不完全恢复11.1 数据库恢复 数据库恢复就是发生故障后,利用已备份的数据文件或控制文件,重新建立一个完整的数据库。恢复的分类数据库恢复有以下分类方法:物理恢复与逻辑恢复完全恢复与不完全恢复归档模式下的恢复和非归档模式下的恢复实例恢复和介质恢复实例恢复和介质恢复按照恢复的过程中是否使用归档日志,可以分为:归档日志的恢复和无归档日志的恢复;按照数据库恢复是否能完全恢复到故障点可以分为:完全恢复和不完全恢复两类;需要注意的是所谓的完全恢复和不完全

2、恢复都是针对有归档日志的恢复,而无归档日志的数据库的恢复要简单的多。将有归档的恢复是否完全恢复可以分为两种类型:有归档日志的完全恢复和有归档日志的不完全恢复。11.1.1 实例恢复实例恢复对实例故障的恢复就是实例恢复,这个过程是由系统的SMON自动进行的。当数据库正在运行时,系统突然意外失败,此时,由于数据的更新是先在内存中更新,然后在一定的时机再写入到数据文件,所以就有两种情况产生。(1)某些事物已经提交,但是在内存中没来得及存入到数据文件,这些事务应该重做(redo)。(2)某些事务较长,部分数据已经写入数据文件,但是整个事物还没有提交,这些事务应该撤销(undo)。当重新启动实例后,应该

3、进行实例恢复。实例恢复或崩溃恢复:原因是尝试打开的数据库中的文件在关闭时不同步 使用重做日志组中存储的信息来同步文件 涉及到两个不同的操作:前滚(roll forward):数据文件还原到出现实例错误之前所处的状态。回滚(rollback):已执行但尚未提交的更改会返回到初始状态。roll forwardcommit recoredsuncommit recordsdatafilesrollbackundo recoredsdatafiles11.1.2 介质恢复介质恢复介质恢复时由于磁盘损坏而需要的数据库恢复方式。在启动数据库到打开(Open)状态之前,系统会检查各文件的时间点信息。当 sy

4、stem_scn和 datafile_scn这两个检查点序号不一致的话,则说明系统存在介质故障,需要进行介质恢复。此时无法将数据库成功打开联机给用户使用,DBA必须运用以前备份出来的数据文件、归档日志文件和联机日志文件,对数据库进行恢复操作,以使数据库恢复到同步状态。如果数据库的控制文件发生介质故障,则数据库只能启动到 Nomount阶段,恢复可在此阶段进行。而更多的情况是数据库的数据文件发生损坏而控制文件完好,此时数据库可以启动至装载(Mount)阶段,但无法到打开(Open)阶段联机供用户使用。DBA可在装载(Mount)模式下,执行数据库恢复。数据库恢复的过程根据介质故障的不同而不同,但

5、通常有两个基本的步骤,即复原(restore)与恢复(recover)。(1)复原 使用数据库的备份文件替代数据库的当前文件。如果不是该文件以前的目录,则需要使用 alter database rename datafile指令来告诉数据库新的数据文件的位置。(2)恢复 使用归档重做日志以及当前的日志文件恢复数据库到最新的状态。恢复包括两个步骤,这两个步骤就是实例恢复的步骤:前滚和回滚。11.2 非归档模式下的数据库恢复 所谓的非归档模式下的恢复也只是把近时间点全库脱机备份全部拷贝过来。需要注意的是全库拷贝,即用备份的数据文件、联机日故文件、控制文件覆盖替换数据库当前的所有数据文件、联机日志文

6、件和控制文件。这是因为如果有数据文件没有被替换,则它的时间点与其他的文件的时间点不一致,数据库不能打开使用。具体过程如下。(1)关闭数据库。(2)把上一次脱机全库备份的所有文件(数据文件、联机日志文件和控制文件)全部一起拷贝到其原来的位置。(3)启动数据库系统,完成数据库恢复。PasswordFileParameterFileData File 3Redo logFile 2Data File 2Control FilesRedo logFile 1Data File 1Backup143144144144144144恢复最近一次备份恢复最近一次备份恢复最近一次备份恢复最近一次备份Passwo

7、rdFileParameterFileData File 3Redo logFile 2Data File 2Control FilesRedo logFile 1Data File 1Database144144144144144144恢复到不同的位置SQL connect system/manager as sysdba;SQL startup mount;SQL alter database rename datafile 2 新的数据文件的位置新的数据文件的位置 SQL alter database open;Rename the file or directory location:

8、11.3 有归档日志的数据库完全恢复归档模式下数据库的完全恢复是指归档模式下一个或多个数据文件损坏,利用热备份的数据文件替换损坏的数据文件,再结合归档日志文件和联机重做日志文件,采用前滚技术重做自备份以来的所有改动,采用回滚技术回滚未提交的操作,以恢复到数据库故障时刻的状态。11.3.1 概述恢复的级别数据库级完全恢复:主要应用于所有或多数数据文件损坏的恢复;表空间级完全恢复:对指定表空间中的数据文件进行恢复;数据文件级完全恢复:是针对特定的数据文件进行恢复。注意数据库级的完全恢复只能在数据库装载但没有打开的状态下进行,而表空间级完全恢复和数据文件级完全恢复可以在数据库处于装载状态或打开的状态

9、下进行。11.3.2 数据库级完全恢复归档模式下数据库完全恢复的基本语法:RECOVER AUTOMATIC FROM locationDATABASE|TABLESPACE tspname|DATAFILE dfname参数说明 AUTOMATIC:进行自动恢复,不需要DBA提供重做日志文件名称;location:制定归档重做日志文件的位置。默认为数据库默认的归档路径。16数据库级完全恢复的步骤如果数据库没有关闭,则强制关闭数据库。SHUTDOWN ABORT利用备份的数据文件还原所有损坏的数据文件。将数据库启动到MOUNT状态。STARTUP MOUNT执行数据库恢复命令。RECOVER

10、DATABASE打开数据库。ALTER DATABASE OPEN;1711.3.3 表空间级完全恢复 p 以EXAMPLE表空间的数据文件example01.dbf损坏为例模拟表空级的完全恢复。数据库处于装载状态下的恢复 数据库处于打开状态下的恢复 18p数据库处于装载状态下的恢复数据库处于装载状态下的恢复如果数据库没有关闭,则强制关闭数据库。SHUTDOWN ABORT利用备份的数据文件example01.dbf还原损坏的数据文件example01.dbf。将数据库启动到MOUNT状态。STARTUP MOUNT执行表空间恢复命令。RECOVER TABLESPACE EXAMPLE打开数

11、据库。ALTER DATABASE OPEN;19p数据库处于打开状态下的恢复数据库处于打开状态下的恢复如果数据库已经关闭,则将数据库启动到MOUNT状态。STARTUP MOUNT将损坏的数据文件设置为脱机状态。ALTER DATABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCEEXAMPLE01.DBF OFFLINE;打开数据库。ALTER DATABASE OPEN;将损坏的数据文件所在的表空间脱机。ALTER TABLESPACE EXAMPLE OFFLINE FOR RECOVER;20 利用备份的数据文件example0

12、1.dbf还原损坏的数据文件example01.dbf。执行表空间恢复命令。RECOVER TABLESPACE EXAMPLE;将表空间联机。ALTER TABLESPACE EXAMPLE ONLINE;如果数据文件损坏时数据库正处于打开状态,则可以直接执行步骤(4)(7)。2111.3.4 数据文件级完全恢复 p以数据文件example01.dbf损坏为例模拟数据文件级的完全恢复。数据库处于装载状态下的恢复 数据库处于打开状态下的恢复 22p数据库处于装载状态下的恢复数据库处于装载状态下的恢复如果数据库没有关闭,则强制关闭数据库。SHUTDOWN ABORT利用备份的数据文件exampl

13、e01.dbf还原损坏的数据文件example01.dbf。将数据库启动到MOUNT状态。STARTUP MOUNT执行数据文件恢复命令。RECOVER DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE example01.dbf;将数据文件联机。ALTER DATABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE example01.dbf ONLINE打开数据库。ALTER DATABASE OPEN;23p数据库处于打开状态下的恢复数据库处于打开状态下的恢复如果数据库已经关闭,则将数

14、据库启动到MOUNT状态。STARTUP MOUNT将损坏的数据文件设置为脱机状态。ALTER DATABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE example01.dbf OFFLINE;打开数据库。ALTER DATABASE OPEN;利用备份的数据文件example01.dbf还原损坏的数据文件example01.dbf。24执行数据文件恢复命令。RECOVER DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE example01.dbf;将数据文件联机。ALTER DAT

15、ABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE example01.dbf ONLINE;如果数据文件损坏时数据库正处于打开状态,则可以直接执行步骤(2)、(4)(6)。11.4 归档模式下数据库不完全恢复1、概述、概述不完全恢复是指数据库没有恢复到控制文件记录的最新时间点,通常有两种情况导致数据库不能完全恢复,一是归档日志文件有断裂时间点,二是用户特意要求恢复到过去某一时间点。T3故障点现在T6T5T4T2t1过去时间轴:归档日志联机日志归档日志2、注意事项在进行数据库不完全恢复之前,首先要确保对数据库进行了完全备份。在进行数据文

16、件损坏的不完全恢复时必须先使用完整的数据文件备份将数据库恢复到备份时刻的状态。在不完全恢复恢复后,需要使用resetlogs选项打开数据库,原来的重做日志被清空,新的重做日志文件序列号重新从1开始。p不完全恢复类型:基于时间的不完全恢复:将数据库恢复到备份与故障时刻之间的某个特定时刻。基于撤销的不完全恢复:数据库的恢复随用户输入CANCEL命令而中止。基于SCN的不完全恢复:将数据库恢复到指定的SCN值时的状态。-使用备份的控制文件进行恢复p不完全恢复的语法为RECOVER AUTOMATIC FROM locationDATABASEUNTIL TIME time|CANCEL|CHANGE

17、 scnUSING BACKUP CONTROLFILE 291、数据文件损坏的数据库不完全恢复p如果数据库没有关闭,则强制关闭数据库。SHUTDOWN ABORTp用备份的所有数据文件还原当前数据库的所有数据文件,即将数据库的所有数据文件恢复到备份时刻的状态。p将数据库启动到MOUNT状态。STARTUP MOUNTp执行数据文件的不完全恢复命令。RECOVER DATABASE UNTIL TIME time;(基于时间恢复)RECOVER DATABASE UNTIL CANCEL;(基于撤销恢复)RECOVER DATABASE UNTIL CHANGE scn;(基于SCN恢复)p可

18、以通过查询数据字典视图V$LOG_HISTORY获得时间和SCN的信息。p不完全恢复完成后,使用RESETLOGS选项启动数据库。ALTER DATABASE OPEN RESETLOGS;302、控制文件损坏的数据库不完全恢复p如果数据库没有关闭,则强制关闭数据库。SHUTDOWN ABORTp用备份的所有数据文件和控制文件还原当前数据库的所有数据文件、控制文件,即将数据库的所有数据文件、控制文件恢复到备份时刻的状态。p将数据库启动到MOUNT状态。STARTUP MOUNTp执行不完全恢复命令。RECOVER DATABASE UNTIL TIME time USING BACKUP CO

19、NTROLFILE;RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE;RECOVER DATABASE UNTIL CHANGE scn USING BACKUP CONTROLFILE;p不完全恢复完成后,使用RESETLOGS选项启动数据库。ALTER DATABASE OPEN RESETLOGS;313、日志文件损坏的恢复p如果数据库没有关闭,则强制关闭数据库。SHUTDOWN ABORTp将数据库启动到MOUNT状态。STARTUP MOUNTp执行日志文件的完全恢复命令。alter database clear logfile group 日志组号;(非当前日志损坏的恢复)recover database until cancel(当前日志损坏的非强制恢复)(当前日志损坏的非强制恢复)p打开数据库并重置日志序号ALTER DATABASE OPEN RESETLOGS;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁