《Oracle数据库备份与恢复实例讲解.ppt》由会员分享,可在线阅读,更多相关《Oracle数据库备份与恢复实例讲解.ppt(112页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Oracle数据库备份与恢复本章内容n n1 1 数据库常见故障类型数据库常见故障类型n n2 2 数据库保护机制数据库保护机制n n3 3 数据库逻辑备份与恢复数据库逻辑备份与恢复n n4 4 脱机备份(冷备份)脱机备份(冷备份)n n5 5 联机备份(热备份)联机备份(热备份)n n6 6 使用使用OMSOMS工具的备份与恢复向导工具的备份与恢复向导n n7 7 数据库恢复数据库恢复n nDBADBA的主要职责之一是备份数据库和在数据库发的主要职责之一是备份数据库和在数据库发生故障时高效、安全地恢复数据库。生故障时高效、安全地恢复数据库。n n备份方法备份方法n n冷备份冷备份n n热备份
2、热备份n n逻辑备份(逻辑备份(Export/ImportExport/Import)n n恢复方法恢复方法n n完全恢复完全恢复n n不完全恢复不完全恢复n nRMANRMAN备份恢复等方式备份恢复等方式1 数据库常见故障类型数据库常见故障类型n n系统崩溃或服务器崩溃系统崩溃或服务器崩溃n n用户错误、冲突或者磁盘失效导致的文件丢失用户错误、冲突或者磁盘失效导致的文件丢失n nSQLSQL语句失败语句失败n n网络故障网络故障n n场地灾难场地灾难2 数据库保护机制数据库保护机制n nOracleOracle数据库保护机制:数据库备份和事务日志。数据库保护机制:数据库备份和事务日志。Ora
3、cle数据库事务日志数据库备份n n数据库备份数据库备份n n一般来说,数据库备份可以分为物理备份和逻辑备份。一般来说,数据库备份可以分为物理备份和逻辑备份。n n物理备份可分为脱机备份和联机备份。脱机备份又称物理备份可分为脱机备份和联机备份。脱机备份又称为冷备份,只能在数据库关闭后进行备份;联机备份为冷备份,只能在数据库关闭后进行备份;联机备份又称为热备份,数据库没有关闭,用户还可以使用。又称为热备份,数据库没有关闭,用户还可以使用。n n逻辑备份是使用逻辑备份是使用ExportExport实用程序备份,当数据库出现实用程序备份,当数据库出现故障,可以使用故障,可以使用OracleOracl
4、e的的ImportImport实用程序恢复数据库。实用程序恢复数据库。n n事务日志事务日志n n数据库的事务日志(数据库的事务日志(Transaction LogTransaction Log)是一组操作系统是一组操作系统文件,它记录了提交事务所做的数据库修改。文件,它记录了提交事务所做的数据库修改。n n日志主要是保护数据库,在数据库出现故障时执行恢日志主要是保护数据库,在数据库出现故障时执行恢复。复。n n为了防止日志本身的故障,为了防止日志本身的故障,OracleOracle允许在不同的物理磁允许在不同的物理磁盘上维护两个或多个日志的副本。盘上维护两个或多个日志的副本。n n举例,磁盘
5、失效后如何保护和恢复数据库举例,磁盘失效后如何保护和恢复数据库 。n n(1 1)正常工作时,每天晚上备份数据库,包含所有)正常工作时,每天晚上备份数据库,包含所有数据文件。数据文件。n n(2 2)某一天,包含数据库的某个数据文件的磁盘坏)某一天,包含数据库的某个数据文件的磁盘坏了,因此一部分数据不可用(做了磁盘容错的情况了,因此一部分数据不可用(做了磁盘容错的情况例外),因此需要执行数据库恢复。例外),因此需要执行数据库恢复。n n(3 3)把有问题的磁盘更换为新的磁盘。)把有问题的磁盘更换为新的磁盘。n n(4 4)将最近的数据库备份存入新的磁盘中以恢复丢)将最近的数据库备份存入新的磁盘
6、中以恢复丢失的数据文件,但是,恢复的数据文件丢失了备份失的数据文件,但是,恢复的数据文件丢失了备份发生后所提交的事务工作。发生后所提交的事务工作。n n(5 5)最后,执行数据库恢复工作。在恢复过程中,)最后,执行数据库恢复工作。在恢复过程中,OracleOracle读取事务日志,把过去提交的事务工作重做,读取事务日志,把过去提交的事务工作重做,使数据库文件成为当前文件。使数据库文件成为当前文件。n n(6 6)数据库恢复后,打开数据,供应用程序使用。)数据库恢复后,打开数据,供应用程序使用。n nORACLEORACLE数据库两种运行方式数据库两种运行方式n n归档方式(归档方式(ARCHI
7、VELOGARCHIVELOG),),归档方式的目的是当数归档方式的目的是当数据库发生故障时最大限度恢复数据库,可以保证不丢据库发生故障时最大限度恢复数据库,可以保证不丢失任何已提交的数据。失任何已提交的数据。n n不归档方式不归档方式(NOARCHIVELOG)(NOARCHIVELOG),只能恢复数据库到最近只能恢复数据库到最近的回收点(冷备份或是逻辑备份)。的回收点(冷备份或是逻辑备份)。3 数据库逻辑备份与恢复数据库逻辑备份与恢复n n 数数据据库库逻逻辑辑备备份份:读读一一个个数数据据库库记记录录集集,并并以以OracleOracle提提供供的的内内部部格格式式写写入入一一个个二二进
8、进制制文文件件中中。这些记录的读出与其物理位置无关。这些记录的读出与其物理位置无关。n n 在在OracleOracle中中,ExportExport实实用用程程序序执执行行逻逻辑辑备备份份。使使用用OracleOracle的的ImportImport实用程序执行数据库恢复。实用程序执行数据库恢复。n n 当用户导入导出时,有相应的权限要求。当用户导入导出时,有相应的权限要求。n n 在在 OEMOEM中中,当当 用用 户户 连连 接接 到到 Oracle Oracle Management Management ServerServer时时,可可以以使使用用图图形形界界面面执执行行数数据据库
9、库的的导导入入和导出。和导出。3.1 导出导出n nOracleOracle的实用程序的实用程序Export Export 用来读取一个数据库,用来读取一个数据库,并把输入写入一个称为导出转储文件(并把输入写入一个称为导出转储文件(export export dump filedump file)的二进制文件。的二进制文件。EXP USERID=username/password EXP USERID=username/password PARAMETER=(value1,value2,.)PARAMETER=(value1,value2,.)n n可以通过如下命令来显示参数可以通过如下命令来
10、显示参数 EXP HELP=YEXP HELP=Yn n导出方式:导出方式:FullFull方式、方式、UserUser方式和方式和TableTable方式。方式。n n完全数据库导出完全数据库导出 exp system/manager full=Y constraints=Y exp system/manager full=Y constraints=Y file=file=f:backuptest.dmpf:backuptest.dmp n n导出用户表导出用户表 exp user1/password tables=employees exp user1/password tables=e
11、mployees file=file=f:backuptest.dmpf:backuptest.dmp exp user1/password tables=exp user1/password tables=(employeesemployees,jobsjobs)file=file=f:backuptest.dmpf:backuptest.dmp n n导出用户模式导出用户模式 exp user1/password owner=user1 file=exp user1/password owner=user1 file=test.dmptest.dmp n n一旦数据已经导出,就可以通过一旦
12、数据已经导出,就可以通过OracleOracle的的ImportImport实实用程序执行导入,来恢复数据库。用程序执行导入,来恢复数据库。ImportImport实用程实用程序读取由序读取由ExportExport创建的二进制导出转储文件并执创建的二进制导出转储文件并执行其中的命令行其中的命令 。IMP USERID=username/password IMP USERID=username/password PARAMETER=(value1,value2,.)PARAMETER=(value1,value2,.)n n可以通过如下命令来显示参数可以通过如下命令来显示参数 IMP HELP
13、=YIMP HELP=Yn n导出的数据可以导入到不同的数据库中,甚至可导出的数据可以导入到不同的数据库中,甚至可以导入到与生成导出转储文件不同的模式中;可以导入到与生成导出转储文件不同的模式中;可以导入全部或部分已导出的数据以导入全部或部分已导出的数据 。3.2 导入导入n n导入用户自身所拥有的表导入用户自身所拥有的表IMP system/ora456 tables=student IMP system/ora456 tables=student file=file=f:backuptest.dmpf:backuptest.dmpIMP system/ora456 tables=(stud
14、ent,course)IMP system/ora456 tables=(student,course)file=file=f:backuptest.dmpf:backuptest.dmpn n导入用户模式导入用户模式 imp system/manager FROMUSER=imp system/manager FROMUSER=scottscott TOUSER=system TOUSER=system tables=dept file=tables=dept file=f:backuptest.dmpf:backuptest.dmpn n案例案例1 1,导出数据库表,用户误操作删除表,执行
15、,导出数据库表,用户误操作删除表,执行导入表,恢复数据库导入表,恢复数据库n n(1 1)TEST2TEST2数据库(数据库(SystemSystem用户,口令为用户,口令为ora456ora456),),导导出表出表studentstudent3.3 逻辑备份案例逻辑备份案例n n(2 2)删除表)删除表studentstudent中的数据,或者将整个表删除,数中的数据,或者将整个表删除,数据已经不存在据已经不存在,或者表被删除或者表被删除 n n(3 3)导入表)导入表studentstudent,恢复数据库恢复数据库n n(4 4)查询表和数据,验证导入是否成功)查询表和数据,验证导入是
16、否成功n n案例案例2 2,导入其他方案的表。将,导入其他方案的表。将ScottScott的表的表deptdept导入导入SystemSystemn n(1 1)SystemSystem下没有下没有ScottScott的表的表deptdept,注意,这不同与查注意,这不同与查询时使用询时使用scott.deptscott.deptn n(2 2)在)在systemsystem下,导出下,导出ScottScott的表的表deptdept,导出文件导出文件test2.dmptest2.dmpn n(3 3)将)将ScottScott的表的表deptdept导入到导入到SystemSystem中中n
17、 n(4 4)再次执行步骤()再次执行步骤(1 1)中的查询,验证导入成功)中的查询,验证导入成功 4 脱机备份(冷备份)脱机备份(冷备份)n n脱机备份是最简单的一种数据库备份方式,在数脱机备份是最简单的一种数据库备份方式,在数据库关闭后进行备份,用户不能访问数据库,是据库关闭后进行备份,用户不能访问数据库,是一种完全备份。一种完全备份。n n脱机备份一般需要备份如下文件:脱机备份一般需要备份如下文件:n n(1 1)所有数据文件)所有数据文件n n(2 2)所有控制文件)所有控制文件n n(3 3)所有联机重做日志)所有联机重做日志n n(4 4)init.orainit.ora文件文件n
18、 n脱机备份步骤脱机备份步骤n n(1 1)以)以DBADBA或特权用户登录,对于需要的备份文件,或特权用户登录,对于需要的备份文件,用户也可通过下列用户也可通过下列SQLSQL语句来了解数据文件、重演日语句来了解数据文件、重演日志文件及控制文件的相应位置及名称。志文件及控制文件的相应位置及名称。SELECT *FROM V$LOGFILE;SELECT *FROM V$LOGFILE;SELECT *FROM V$DBFILE;SELECT *FROM V$DBFILE;SELECT *FROM V$CONTROLFILE;SELECT *FROM V$CONTROLFILE;n n(2 2
19、)关闭数据库)关闭数据库SHUTDOWN NORMAL;SHUTDOWN NORMAL;或者执行或者执行SHUTDOWN IMMEDIATE;SHUTDOWN IMMEDIATE;n n(3 3)复制数据文件)复制数据文件 用拷贝命令备份全部的数据文件、重做日志文件、控制文用拷贝命令备份全部的数据文件、重做日志文件、控制文件、初始化参数文件等。件、初始化参数文件等。简单的处理方法是将数据库所在路径下的文件全部复制备简单的处理方法是将数据库所在路径下的文件全部复制备份。在下面实验案例中所用数据库份。在下面实验案例中所用数据库TEST2TEST2的目录是:的目录是:f:oracleoradatat
20、est2f:oracleoradatatest2n n(4 4)重新启动数据库)重新启动数据库STARTUP;STARTUP;n n脱机备份的优点:脱机备份的优点:n n只需要拷贝文件,速度比较快。只需要拷贝文件,速度比较快。n n将文件拷贝回去,数据库就可以恢复到某个时间点。将文件拷贝回去,数据库就可以恢复到某个时间点。n n若结合数据库归档模式可以很好地恢复数据库。若结合数据库归档模式可以很好地恢复数据库。n n维护量相对较少,但安全性相对较高。维护量相对较少,但安全性相对较高。n n脱机备份的缺点:脱机备份的缺点:n n脱机备份时,数据库必须关闭。脱机备份时,数据库必须关闭。n n单独使
21、用脱机备份,数据库只能基于某一时间点恢复。单独使用脱机备份,数据库只能基于某一时间点恢复。n n若磁盘空间有限,使用磁带等外设时速度较慢。若磁盘空间有限,使用磁带等外设时速度较慢。n n脱机备份不能按表或用户恢复。脱机备份不能按表或用户恢复。n n案例,脱机备份与不完全数据库恢复案例,脱机备份与不完全数据库恢复n n脱机备份数据库相应文件,由于误操作,删除了脱机备份数据库相应文件,由于误操作,删除了usersusers表空间对象表空间对象STUDENTSTUDENT表,将备份的数据文件复制到原表,将备份的数据文件复制到原来的位置,恢复数据库到执行误操作前的状态。以来的位置,恢复数据库到执行误操
22、作前的状态。以SYSDBASYSDBA登录。数据字典登录。数据字典DBA_TABLESDBA_TABLES可以查询表所可以查询表所在的表空间。在的表空间。n n(1 1)对象)对象STUDENTSTUDENT,有两条记录有两条记录n n(2 2)脱机备份)脱机备份 shutdown immediate;shutdown immediate;备份数据文件备份数据文件user01.dbfuser01.dbf,控制文件,重做日志文件,控制文件,重做日志文件,或者或者直接将直接将f:oracleoradatatest2f:oracleoradatatest2目录下的文件全部备份。目录下的文件全部备份。
23、备份结束重启数据库备份结束重启数据库startup;startup;n n(3 3)对象)对象studentstudent增加一条记录增加一条记录insert into system.student values(1003,liming,20,CS);insert into system.student values(1003,liming,20,CS);n n(4 4)模拟误操作,删除了表)模拟误操作,删除了表STUDENTSTUDENT drop table system.student;drop table system.student;commit;commit;n n(5 5)查询对
24、象)查询对象STUDENTSTUDENT,返回错误信息返回错误信息n n(6 6)关闭数据库)关闭数据库shutdown immediate;shutdown immediate;n n(7 7)复制原先备份的数据文件,控制文件,重做日志复制原先备份的数据文件,控制文件,重做日志等到原来目录下,等到原来目录下,f:oracleoradatatest2f:oracleoradatatest2n n(8 8)startup mount;startup mount;n n(9 9)执行基于取消的恢复,)执行基于取消的恢复,recover database until cancelrecover da
25、tabase until canceln n(1010)以)以RESETLOGSRESETLOGS方式打开数据库方式打开数据库n n(1111)查询对象)查询对象STUDENTSTUDENT,只有脱机备份的两条记录,只有脱机备份的两条记录,备份后增加的记录没有恢复备份后增加的记录没有恢复5 联机备份(热备份)联机备份(热备份)n n联机备份是在数据库运行时进行的备份,用户仍联机备份是在数据库运行时进行的备份,用户仍然可以访问数据库,一些关键行业的数据必须运然可以访问数据库,一些关键行业的数据必须运行在行在7*247*24模式下,并不适合执行脱机备份,必须模式下,并不适合执行脱机备份,必须使用联
26、机备份使用联机备份。n n联机备份要求数据库运行在归档(联机备份要求数据库运行在归档(archivelogarchivelog)模模式下,该方式下,联机重做日志被归档,数据库式下,该方式下,联机重做日志被归档,数据库中所有事务的完整记录由中所有事务的完整记录由OracleOracle以循环方式写入以循环方式写入联机重做日志文件联机重做日志文件 。n n联机备份一般备份数据文件、控制文件和日志文联机备份一般备份数据文件、控制文件和日志文件。件。n n(1 1)备份所有数据文件)备份所有数据文件n n(2 2)备份所有归档的重做日志文件)备份所有归档的重做日志文件n n(3 3)备份一个控制文件)
27、备份一个控制文件n n(4 4)检查发生故障的数据文件,恢复数据文件)检查发生故障的数据文件,恢复数据文件n n联机备份的优点:联机备份的优点:n n可在表空间或数据文件级备份,备份时间短。可在表空间或数据文件级备份,备份时间短。n n备份时数据库仍可使用。备份时数据库仍可使用。n n可达到秒级恢复(恢复到某一时间点上)。可达到秒级恢复(恢复到某一时间点上)。n n可对几乎所有数据库实体作恢复。可对几乎所有数据库实体作恢复。n n恢复快速,大多数情况下恢复不需要关闭数据库。恢复快速,大多数情况下恢复不需要关闭数据库。n n联机备份的缺点:联机备份的缺点:n n不能出错,否则后果严重。不能出错,
28、否则后果严重。n n若联机备份不成功,所得结果不可用于时间点的恢复。若联机备份不成功,所得结果不可用于时间点的恢复。n n因难于维护,所以要特别小心,不允许因难于维护,所以要特别小心,不允许“以失败而告以失败而告终终”。n n案例,联机备份与完全数据库恢复案例,联机备份与完全数据库恢复n n在表空间在表空间APPL_DATAAPPL_DATA上建立对象上建立对象COURSECOURSE,首先执行首先执行联机备份,在联机备份,在COURSECOURSE表上加入记录,然后删除数据表上加入记录,然后删除数据文件文件APPL_DATAAPPL_DATA,最后执行恢复,数据文件重新联机,最后执行恢复,数
29、据文件重新联机,验证恢复成功。验证恢复成功。n n(1 1)在归档模式下,在表空间)在归档模式下,在表空间APPL_DATAAPPL_DATA上建立表上建立表COURSECOURSE,并插入两条记录并插入两条记录n n(2 2)切换日志,查看)切换日志,查看v$logv$log确认当前日志已经更改确认当前日志已经更改alter system switch alter system switch logfilelogfile;n n(3 3)备份控制文件(在本案例中可以不做)备份控制文件(在本案例中可以不做)alter database backup alter database backup
30、controlfilecontrolfile to to f:backupbackup.ctlf:backupbackup.ctl;n n(4 4)备份数据文件备份数据文件先将表空间先将表空间APPL_DATAAPPL_DATA设置为备份模式设置为备份模式alter alter tablespacetablespace appl_dataappl_data begin backup;begin backup;拷贝表空间的数据文件拷贝表空间的数据文件APPL_DATA.ORAAPPL_DATA.ORA,其他数据文件不变。其他数据文件不变。copy f:oracleoradatatest2appl
31、_data.ora copy f:oracleoradatatest2appl_data.ora f:backupappl_data.oraf:backupappl_data.ora将表空间将表空间APPL_DATAAPPL_DATA设置为正常模式设置为正常模式alter alter tablespacetablespace appl_dataappl_data end backup;end backup;n n(5 5)在)在COURSECOURSE表上添加记录表上添加记录insert into course values(30,database,20,4);insert into cour
32、se values(30,database,20,4);n n(6 6)使表空间脱机,删除数据文件)使表空间脱机,删除数据文件APPL_DATA.ORAAPPL_DATA.ORA alter alter tablespacetablespace appl_dataappl_data offline;offline;del f:oracleoradatatest2appl_data.oradel f:oracleoradatatest2appl_data.oran n(7 7)将表空间联机,出现错误,提示恢复数据文件)将表空间联机,出现错误,提示恢复数据文件n n(8 8)将备份的数据文件复制到
33、原来所在位置,执行数)将备份的数据文件复制到原来所在位置,执行数据文件恢复。据文件恢复。copy copy f:backupappl_data.oraf:backupappl_data.ora f:oracleoradatatest2appl_data.oraf:oracleoradatatest2appl_data.ora 然后,执行数据文件恢复命令,本例中文件号为然后,执行数据文件恢复命令,本例中文件号为1111recover recover datafiledatafile 11 11;n n(9 9)联机表空间)联机表空间n n(1010)查询对象)查询对象COURSECOURSE表,
34、确认联机备份恢复成功,表,确认联机备份恢复成功,联机备份前的数据和备份后新增加的数据都存在联机备份前的数据和备份后新增加的数据都存在6 使用使用OMS工具的备份与恢复向导工具的备份与恢复向导6.1 Oracle管理服务器的配置管理服务器的配置n n使用备份向导实现联机备份与恢复,需要登录到使用备份向导实现联机备份与恢复,需要登录到OracleOracle管理服务器管理服务器OMSOMS。n n需要先配置需要先配置OracleOracle管理服务器,选择管理服务器,选择【开始开始】-【程程序序】-【OraHome90OraHome90】-【Configuration and Migration
35、Configuration and Migration ToolsTools】-【Enterprise Manager Configuration AssistantEnterprise Manager Configuration Assistant】,进入进入OMSOMS的配置步骤。的配置步骤。n n进入进入OMSOMS后,为了保证备份向导的正确执行,应后,为了保证备份向导的正确执行,应做如下工作:做如下工作:n n(1 1)检查)检查SYSSYS和和SYSTEMSYSTEM用户权限,用户权限,SYSTEMSYSTEM用户在用户在独立模式下具有独立模式下具有SYSDBASYSDBA权限和权限
36、和SYSOPERSYSOPER权限,在管权限,在管理服务器模式下不具备理服务器模式下不具备SYSDBASYSDBA权限,不能启动和关权限,不能启动和关闭数据库,需要人工授予闭数据库,需要人工授予SYSOPERSYSOPER和和SYSDBASYSDBA权限,权限,同时应给同时应给SYSTEMSYSTEM用户添加角色用户添加角色EXP_FULL_DATABASEEXP_FULL_DATABASE和角色和角色 IMP_FULL_DATABASEIMP_FULL_DATABASE,确保数据库备份与恢复操确保数据库备份与恢复操作正常。作正常。SYSSYS用户无论是独立模式还是管理服务器模用户无论是独立模
37、式还是管理服务器模式都有式都有SYSOPERSYSOPER和和SYSDBASYSDBA权限。权限。n n(2 2)检查操作系统用户是否作为批处理作业登录。选)检查操作系统用户是否作为批处理作业登录。选择择【开始开始】-【程序程序】-【管理工具管理工具】-【本地安全本地安全策略策略】,选择用户权限分配,选择作为批处理作业登,选择用户权限分配,选择作为批处理作业登录,双击打开后添加录,双击打开后添加AdministratorAdministrator用户。用户。n n(3 3)检查节点和数据库的首选证明,设置节)检查节点和数据库的首选证明,设置节点的首先身份证明中的用户名为点的首先身份证明中的用户
38、名为AdministratorAdministrator,并输入口令。设置数据库的首先身份证明的并输入口令。设置数据库的首先身份证明的用户为用户为SYSSYS,输入口令,选择以输入口令,选择以SYSDBASYSDBA角色。角色。n n第一次登录管理服务器第一次登录管理服务器OMSOMS,管理员为管理员为SYSMANSYSMAN,缺省口令为缺省口令为OEM_TEMP OEM_TEMP n n初次登录,系统将提示更改初次登录,系统将提示更改SYSMANSYSMAN口令。如果口令。如果系统提示连接验证错误系统提示连接验证错误VTK-1000VTK-1000,查看查看【管理工管理工具具】-【服务服务】
39、-【OracleOraHome90ManagementServerOracleOraHome90ManagementServer】是否启动,是否启动,若没有启动,应手动启动该服务。若没有启动,应手动启动该服务。6.2 使用使用OMS备份向导备份向导n n1 1预定义备份策略预定义备份策略n n首先选择预定义备份策略,单击下一步按钮,出首先选择预定义备份策略,单击下一步按钮,出现现“备份频率备份频率”对话框对话框 n n2 2自定义备份策略自定义备份策略n n打开备份向导,策略选择自定义备份策略,出现打开备份向导,策略选择自定义备份策略,出现“备备份选择份选择”对话框对话框。n n为了较快地看到
40、备份结果,我们选择备份表空间,这为了较快地看到备份结果,我们选择备份表空间,这是数据库子集的备份。是数据库子集的备份。n n查看查看“作业作业”节点,在活动项中可以看到备份节点,在活动项中可以看到备份00530053已已经启动,等待一会儿切换到历史记录,可以看到备经启动,等待一会儿切换到历史记录,可以看到备份份00530053已经执行完成。已经执行完成。n n选择备份选择备份00530053,右键选择,右键选择“查看作业查看作业”,可以显示备,可以显示备份的详细信息。份的详细信息。n n选择状态已完成,单击选择状态已完成,单击“显示输出显示输出”按钮,得到执行按钮,得到执行备份的脚本代码。备份
41、的脚本代码。n n向导恢复可以选择向导恢复可以选择n n数据库恢复数据库恢复n n表空间恢复表空间恢复n n数据文件恢复三种数据文件恢复三种n n恢复向导判别目标数据库的状态(归档日志,无恢复向导判别目标数据库的状态(归档日志,无归档日志,已装载没有打开,装载并打开)来禁归档日志,已装载没有打开,装载并打开)来禁止选项。止选项。6.3 使用使用OMS恢复向导恢复向导n n恢复整个数据库时,将恢复属于该数据库的所恢复整个数据库时,将恢复属于该数据库的所有数据文件,要求数据库只处于装载状态,即有数据文件,要求数据库只处于装载状态,即NOMOUNTNOMOUNT方式启动。方式启动。n n表空间恢复将
42、恢复数据库的一个子集合。对选表空间恢复将恢复数据库的一个子集合。对选定的表空间进行恢复,一般要求数据库运行在定的表空间进行恢复,一般要求数据库运行在归档模式下。归档模式下。n n数据文件恢复将恢复单个数据文件,数据文件数据文件恢复将恢复单个数据文件,数据文件恢复不如表空间恢复那样常用,一般要求数据恢复不如表空间恢复那样常用,一般要求数据库运行在归档模式下库运行在归档模式下n n登录到管理服务器,选择数据库,选择登录到管理服务器,选择数据库,选择【工具工具】-【数据库向导数据库向导】-【备份管理备份管理】-【恢复恢复】,起用恢复向导。如果不能启动起用恢复向导。如果不能启动OMSOMS,应查看应查
43、看【管管理工具理工具】-【服务服务】-【OracleOraHome90ManagementServerOracleOraHome90ManagementServer】是否启动,是否启动,如果没有启动,先启动该服务。如果没有启动,先启动该服务。n n若要查看执行情况,可以在若要查看执行情况,可以在OMSOMS的节点的节点“作业作业”中,选择历史记录确认备份和恢复情况中,选择历史记录确认备份和恢复情况。5.7 数据库恢复数据库恢复n n恢复可以分为完全恢复和不完全恢复恢复可以分为完全恢复和不完全恢复 n n完全数据库恢复是恢复到故障发生前的状态,所完全数据库恢复是恢复到故障发生前的状态,所有已经提
44、交的操作都进行恢复,确保数据库不丢有已经提交的操作都进行恢复,确保数据库不丢失任何数据,完全恢复只用于归档模式。失任何数据,完全恢复只用于归档模式。n n不完全数据库恢复是将数据库恢复到备份点与介不完全数据库恢复是将数据库恢复到备份点与介质失败点之间某个时刻的状态,并不是恢复所有质失败点之间某个时刻的状态,并不是恢复所有提交的操作,不完全恢复可能丢失部分数据提交的操作,不完全恢复可能丢失部分数据。n n任何类型的恢复包括两个阶段:前滚阶段和回滚任何类型的恢复包括两个阶段:前滚阶段和回滚(回退)阶段。(回退)阶段。n n前滚阶段前滚阶段n n在前滚恢复阶段(在前滚恢复阶段(roll-forwar
45、d recoveryroll-forward recovery),恢复管理器恢复管理器应用必要的事务日志组应用必要的事务日志组“重做重做”(REDOREDO)所有提交所有提交的不在数据库数据文件中的事务的不在数据库数据文件中的事务 。n n回滚阶段回滚阶段n n在前滚恢复后,在前滚恢复后,OracleOracle必须执行回滚恢复(必须执行回滚恢复(roll-back roll-back recoveryrecovery)。)。n n由于一些未完成的事务对数据库的修改信息已经提交由于一些未完成的事务对数据库的修改信息已经提交到数据库,为保证数据库的一致性,需要清除这些事到数据库,为保证数据库的一
46、致性,需要清除这些事务对数据库的修改,数据库应执行回滚操作务对数据库的修改,数据库应执行回滚操作(UNDOUNDO),强制撤销这些未完成事务。强制撤销这些未完成事务。n n前滚和回滚的执行除了管理员或应用程序调用外,前滚和回滚的执行除了管理员或应用程序调用外,执行前滚操纵还是回滚操作与检查点的出现相关执行前滚操纵还是回滚操作与检查点的出现相关 12345检查点检查点系统故障系统故障上一检查点上一检查点无无前滚前滚回滚回滚前滚前滚回滚回滚故障时需要的动作故障时需要的动作n n数据库备份数据库备份n n日志日志n n回退段回退段n n控制文件控制文件7.1 恢复数据库所使用的结构恢复数据库所使用的
47、结构n n当数据库实例意外地(如掉电、后台进程故障等)当数据库实例意外地(如掉电、后台进程故障等)或预料地(发出或预料地(发出shutdown abortshutdown abort语句)终止时出现语句)终止时出现实例故障,此时需要实例恢复。实例故障,此时需要实例恢复。n n实例恢复将数据库恢复到故障前的事务一致状态。实例恢复将数据库恢复到故障前的事务一致状态。n n如果联机备份时出现实例故障,则需要介质恢复。如果联机备份时出现实例故障,则需要介质恢复。n n在其它情况下,在其它情况下,OracleOracle在下次数据库起动时(对在下次数据库起动时(对新实例装配和打开),自动地执行实例恢复。
48、新实例装配和打开),自动地执行实例恢复。7.2 实例故障的一致性恢复实例故障的一致性恢复n n恢复步骤处理恢复步骤处理n n(1 1)为恢复数据文件中没有记录的数据,进行前滚。)为恢复数据文件中没有记录的数据,进行前滚。数据记录在联机日志中,包括对回滚段的内容恢复。数据记录在联机日志中,包括对回滚段的内容恢复。n n(2 2)回滚未提交的事务。)回滚未提交的事务。n n(3 3)释放在故障时正在处理事务所持有的资源。)释放在故障时正在处理事务所持有的资源。n n(4 4)解决在故障时执行的任何悬而未决的分布事务。)解决在故障时执行的任何悬而未决的分布事务。n n电源失效和软件问题是引起一台电源
49、失效和软件问题是引起一台OracleOracle数据库服数据库服务器出现意外崩溃的常见原因。务器出现意外崩溃的常见原因。n n当系统崩溃时,数据库服务器没有完全关闭。当系统崩溃时,数据库服务器没有完全关闭。n n在系统崩溃期间,在系统崩溃期间,OracleOracle没有时间执行数据库检没有时间执行数据库检查点以确保缓存中被修改的数据块安全地写回到查点以确保缓存中被修改的数据块安全地写回到数据文件中。数据文件中。n n系统崩溃不会永久损坏任何一个数据库的数据文系统崩溃不会永久损坏任何一个数据库的数据文件。件。7.3 崩溃恢复崩溃恢复n n介质故障是当一个文件、一个文件的部分、磁盘介质故障是当一
50、个文件、一个文件的部分、磁盘不能读或不能写时出现的故障,介质故障后,必不能读或不能写时出现的故障,介质故障后,必须执行一个介质恢复操作。在一个典型的介质恢须执行一个介质恢复操作。在一个典型的介质恢复期间,必须完成以下几步操作:复期间,必须完成以下几步操作:n n(1 1)修理所有的硬件问题)修理所有的硬件问题n n(2 2)重建丢失的数据文件)重建丢失的数据文件n n(3 3)使用必要的事务日志组,完成恢复操作)使用必要的事务日志组,完成恢复操作n n(4 4)执行一个适当的介质恢复)执行一个适当的介质恢复7.4 介质恢复介质恢复n n完全恢复是一种恢复所有提交事务的操作,恢复完全恢复是一种恢