资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,112,第,十,章 备份与恢复,(教材第,16,章),10.1,数据库备份概述,10.2,逻辑备份和恢复,10.3,脱机备份,10.4,联机备份,10.5,数据库恢复概述,10.6,手工进行数据库恢复操作,10.1,数据库备份概述,备份与恢复是数据库管理中的主要任务之一,,DBA,应该对可能发生的任何类型的失败预先做准备,以最快的速度使数据库恢复正常。,数据库备份的种类,1,、物理备份(,physical backups,),2,、逻辑备份(,logical backups,),造成数据库损失并需要恢复的各种数据库错误,2 语句故障,1 用户错误,3 用户进程故障,5 介质故障,4 例程故障,可能的用户错误,SQL DROP TABLE employees;,SQL TRUNCATE TABLE employees;,SQL UPDATE employees,2 SET salary = salary * 1.5;,SQL COMMIT;,SQL DELETE FROM employees;,SQL COMMIT;,用户错误的解决方法,培训数据库用户。,从有效的备份中恢复。,从导出文件中导入表。,使用,LogMiner,确定错误发生的时间。,使用时间点恢复进行恢复。,使用,LogMiner,执行对象级恢复。,使用,FlashBack,查看和修复历史数据。,语句故障的原因,应用程序中出现逻辑错误,试图向表中输入无效数据,权限不足却试图执行某操作,试图创建表却已超出所分配的限额限制,试图对表执行,INSERT,或,UPDATE,操作,导致分配了一个区,但是表空间中的可用空间不足,语句故障的解决方法,更正程序的逻辑流。,修改并重新发出,SQL,语句。,提供必要的数据库权限。,使用,ALTER USER,命令更改用户的限额限制。,向表空间中添加文件空间。,启用可恢复的空间分配。,用户进程故障的原因,用户在会话中执行了异常断开操作。,用户会话被异常终止。,用户的程序引起地址异常,从而终止了会话。,用户进程故障的解决方法,PMON,进程检测异常终止的用户进程。,PMON,回退事务处理并释放它所持有的任何资源和锁。,146,146,数据库,数据文件,1,数据文件,2,数据文件,3,控制文件,重做日志,文件,1,重做日志,文件,2,145,例程故障的原因,例程,SGA,重做日志缓冲区,数据缓冲区,大型共享池,锁,共享池,数据字典高速缓冲区,共享,SQL,和,PL/SQL,PMON,DBW,n,SMON,LGWR,CKPT,ARC,n,用户进程,服务器,进程,PGA,用户进程,服务器,进程,PGA,146,146,146,参数文件,口令文件,从例程故障进行恢复,DBA,不需要执行任何特殊的恢复操作。,启动例程。,等待出现 “数据库已打开” (,database opened),通知。,通知用户。,检查警报日志以确定故障原因。,介质故障的原因,磁盘驱动器上的磁头损坏,读取或写入数据库文件时存在物理问题,文件被意外删除,介质故障的解决方法,恢复策略取决于选择的备份方法以及受到影响的文件。,如果归档重做日志文件可用,可应用它们来恢复自上次备份以来所提交的数据。,数据库备份的内容,全部数据文件,控制文件,归档日志文件,联机日志文件,参数文件,数据库备份模式,1,、归档,(ARCHIEVELOG),模式,2,、非归档,(NOARCHIEVELOG),模式,定义备份和恢复策略,业务要求,操作要求,技术方面的考虑因素,管理上的协作,业务要求,平均恢复时间,平均故障间隔时间,演变过程,操作要求,24,小时操作,测试和验证备份,数据库易变性,技术方面的考虑因素,资源:硬件、软件、人力和时间,操作系统文件的物理映像副本,数据库中各对象的逻辑副本,数据库配置,事务处理量,这将影响需要备份的频率,灾难恢复问题,在出现严重灾难的情况下,您的业务会受到什么样的影响?,地震、水灾或火灾,完全丢失计算机,存储硬件或软件故障,失去重要人员,如数据库管理员,是否已制定定期测试策略的计划?,第,十,章 备份与恢复,(教材第,16,章),10.1,数据库备份概述,10.2,逻辑备份和恢复,10.3,脱机备份,10.4,联机备份,10.5,数据库恢复概述,10.6,手工进行数据库恢复操作,Oracle,导出和导入实用程序,Oracle,数据库,Oracle,数据库,导出,导入,Oracle,导出和导入实用程序概览,您可以使用这两个实用程序来执行以下任务:,归档历史数据,保存表定义以防止出现用户错误故障,在计算机和数据库之间,或在不同版本的,Oracle,服务器之间移动数据,在数据库之间传输表空间,调用导出和导入实用程序的方法,命令行界面,交互式对话,参数文件,Oracle Enterprise Manager,完全数据库模式,表定义,表数据授权索引表约束,导出模式,表模式,表定义,表数据(所有行或选定的行)所有者的表授权所有者的表索引表约束,用户模式,表定义,表数据所有者的授权所有者的索引表约束,表空间模式,表定义,授权索引,表约束,触发器,调用导出实用程序,语法:,示例:,exp keyword = value, value2, ,value,n,exp hr/hr TABLES=employees,departments,rows=y file=exp1.dmp,exp system/manager OWNER=hr direct=yfile=,expdat.dmp,exp username/password AS SYSDBA,TRANSPORT_TABLESPACE=y,TABLESPACES=,ts_emp,log=,ts_emp.log,直接路径导出概念,缓冲区高速缓存,生成,SQL,命令,写入块,直接路径,转储文件,导出,导出,Oracle,服务器,读取块,评估缓冲区,TTC,缓冲区,缓冲区高速缓存管理器,SQL,命令处理,双任务公用协议,(Two-Task common,TTC),直接路径,常规路径,直接路径导出功能,导出类型将显示在屏幕输出、导出转储文件和日志文件中。,数据已经是导出实用程序所预期的格式,从而避免了不必要的数据转换。,使用优化的,SQL,SELECT,语句。,直接路径导出的限制,直接路径选项不能交互式调用。,客户端和服务器端的字符集必须相同。,BUFFER,参数不起作用。,不能使用直接路径选项来导出包含,LOB,、,BFILE,、,REF,的行或对象类型。,指定直接路径导出,使用导出命令的命令行参数:,使用参数文件中的关键字:,exp,parfile,=,exp,userid,=hr/hr full=y direct=y,参数文件,.,(其它参数),DIRECT = Y,.,(其它参数),使用导入实用程序进行恢复,创建表定义,从有效的导出文件中提取数据,从完全或累积导出文件中导入,从用户错误故障中恢复,导入模式,模式,说明,表模式,将指定的表导入方案中。,用户模式,导入属于某个方案的所有对象,表空间模式,导入表空间中包含的所有的对象定义,完全数据库模式,从导出文件中导入所有对象,调用导入实用程序,语法:,示例:,imp hr/hr TABLES=employees,departments,rows=y file=exp1.dmp,imp keyword = value or keyword = value, value2, value n,imp system/manager FROMUSER=hr file=exp2.dmp,imp username/password AS SYSDBA,TRANSPORT_TABLESPACE=y,TABLESPACES=,ts_employees,作为,SYSDBA,调用导入实用程序,在下列条件下,您需要以,SYSDBA,用户身份调用导入实用程序:,应,Oracle,技术支持的要求,在导入可移动的表空间集时,要以,SYSDBA,用户身份来调用导入实用程序,请执行以下命令:,imp username/password AS SYSDBA,导入进程序列,1.,创建新表,2. 导入数据,3. 建立索引,4. 导入触发器,5. 对新表启用完整性约束,6. 建立所有位图、函数和/或域索引,全球化支持注意事项,导出文件确定该文件中字符数据所使用的字符编码方案。,导入实用程序将数据转换成其主机系统的字符集。,多字节字符集导出文件必须导入到具有相同特征的系统中。,第,十,章 备份与恢复,(教材第,16,章),10.1,数据库备份概述,10.2,逻辑备份和恢复,10.3,脱机备份,10.4,联机备份,10.5,数据库恢复概述,10.6,手工进行数据库恢复操作,术语,整体数据库备份,目标数据库可能是打开的,也可能是关闭的,备份所有数据文件和控制文件,部分数据库备份,表空间,数据文件,控制文件,一致备份,不一致备份,联机重做日志文件,无重做历史记录,LGWR,重做历史记录,054,053,052,重做日志历史记录,051,052,联机重做日志文件,无重做历,史记录,053,LGWR,054,053,052,053,054,053,052,052,NOARCHIVELOG,模式,ARCHIVELOG,模式,053,053,053,051,053,051,051,052,053,归档日志文件,联机重做日志文件,LGWR,054,052,054,052,重做,历史记录,更改归档模式,SHUTDOWN NORMAL/IMMEDIATE/TRANSACTIONAL,1,STARTUP MOUNT,ALTER DATABASE ARCHIVELOG,3,ALTER DATABASE OPEN,4,5,2,初始化参数,控制文件,完全数据库备份,自动和手动归档,自动归档:,LOG_ARCHIVE_START=TRUE,手动归档:,LOG_ARCHIVE_START=FALSE,DBA,ARC0,053,053,053,053,指定多个,ARC,n,进程,动态参数,LOG_ARCHIVE_MAX_PROCESSES,用于控制在例程启动时启动的归档进程数。,最多可指定十个,ARC,n,进程。,ARC,n,进程数可通过,ALTER SYSTEM,命令进行更改。,停止或启动附加归档进程,LOG_ARCHIVE_MAX_PROCESSES=2,归档重做日志,053,联机重做日志,ARC0,ARC1,ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES = 3;,ARC2,053,053,在例程启动时启用自动归档,051,归档日志文件,051,052,已归档,已归档,当前,LOG_ARCHIVE_START=TRUE,LOG_ARCHIVE_MAX_PROCESSES=,n,联机重做日志,051,052,052,051,ARC0,053,在例程启动后启用自动归档,ALTER SYSTEM ARCHIVE LOG START;,2,051,052,052,051,1,3,051,ARC0,联机重做日志,ARC0,禁用自动归档,1,2,ALTER SYSTEM ARCHIVE LOG STOP;,LOG_ARCHIVE_START,051,052,联机重做日志,052,051,初始化,参数,手动归档联机重做日志文件,1,2,052,051,053,联机重做日志,051,052,服务器,进程,ALTER SYSTEM ARCHIVE LOG CURRENT;,手动归档重做日志文件,指定归档日志目标,使用,LOG_ARCHIVE_DEST_,n,最多可指定十个归档目标。,使用,LOG_ARCHIVE_FORMAT,可在文件名中包括日志序列号和线程号。,指定多个归档日志目标,使用,LOG_ARCHIVE_DEST_,n,最多可指定十个归档目标,这些目标可位于:,本地磁盘,远程备用数据库,log_archive_dest_1 = LOCATION=/archive1,log_archive_dest_2 = SERVICE=standby_db1,LOG_ARCHIVE_DEST_,n,选项,将归档位置设置为,MANDATORY,或,OPTIONAL。,在出现故障之后、重试之前定义时间。,log_archive_dest_1=LOCATION=/archive/ MANDATORY REOPEN,log_archive_dest_2=SERVICE=standby_db1MANDATORY REOPEN=600,log_archive_dest_3=LOCATION=/archive2/OPTIONAL,指定本地目标的最小数量,LOG_ARCHIVE_MIN_SUCCEED_DEST,参数,只有在下列情况下才能重新使用联机重做日志组:,已归档到所有强制位置,已归档的本地位置数大于或等于,LOG_ARCHIVE_MIN_SUCCEED_DEST,参数的值,LOG_ARCHIVE_MIN_SUCCEED_DEST = 2,控制归档到目标,可以使用动态初始化参数,LOG_ARCHIVE_DEST_STATE_,n,禁用归档目标。,可以重新启用归档到某一目标的操作。,LOG_ARCHIVE_DEST_STATE_2 = DEFER,LOG_ARCHIVE_DEST_STATE_2 = ENABLE,ALTER SYSTEM SET log_archive_dest_state_3 = ENABLE;,ALTER SYSTEM SET log_archive_dest_state_3 = DEFER;,指定文件名格式,ARC0,LOG_ARCHIVE_DEST_,n,LOG_ARCHIVE_FORMAT,/,ORADATA/archive/,已归档的日志文件,arch%s.arc,052,组,1,053,052,053,052,053,053,ARC0,052,联机重做日志文件,组,2,获取归档日志信息,V$ARCHIVE_DEST,V$ARCHIVED_LOG,V$LOG_HISTORY,动态视图,命令行,ARCHIVE LOG LIST,V$DATABASE,V$ARCHIVE_PROCESSES,用户管理的备份和恢复,文件是使用操作系统命令进行备份的,备份是使用操作系统命令进行还原的,恢复是使用,SQL,和,SQL*Plus,命令完成的,查询视图以获得数据库文件信息,V$DATAFILE,V$CONTROLFILE,V$LOGFILE,DBA_DATA_FILES,获得数据库文件信息,备份方法,物理备份,关闭的数据库,NOARCHIVELOG,模式,关闭或打开的数据库,ARCHIVELOG,模式,脱机备份:,一致的整体数据库备份(关闭的数据库的备份),数据文件,控制文件,口令文件,联机或脱机存储,参数文件,重做日志文件,进行一致的整体数据库备份的优点,概念上简明易懂,易于执行,几乎不需要交互操作,2,进行一致的整体数据库备份,3,4,SHUTDOWN IMMEDIATE,HOST cp /backup/,STARTUP OPEN,1,控制文件,口令文件,参数文件,数据文件,重做日志文件,第,十,章 备份与恢复,(教材第,16,章),10.1,数据库备份概述,10.2,逻辑备份和恢复,10.3,脱机备份,10.4,联机备份,10.5,数据库恢复概述,10.6,手工进行数据库恢复操作,联机备份:打开的数据库的备份,数据文件,控制文件,参数文件,归档重做日志文件,口令文件,联机重做日志文件,进行打开的数据库的备份的优点,保持较高的数据库可用性,可以在表空间级或数据文件级进行备份,支持业务活动不中断,ARCHIVELOG,模式,联机重做日志文件,归档重做日志文件,ARC0,052,051,053,051,052,053,LGWR,054,053,052,052,051,054,053,051,对打开的数据库执行备份的条件,联机备份:,对打开的数据库执行备份时的选项,表空间备份,表空间,USERS,users02.dbf,users01.dbf,数据文件备份,表空间,USERS,users01.dbf,users02.dbf,数据库备份,数据文件 2,144,数据文件 1,143,进行联机表空间的备份,SQL ALTER TABLESPACE users 2 BEGIN BACKUP;,SQL !cp /,/users01.dbf /BACKUP/users01.dbf,数据库,数据文件 1,数据文件 2,数据文件 3,控制文件,重做日志文件 1,重做日志文件 2,145,145,145,144,145,144,结束联机表空间备份,SQL ALTER TABLESPACE users 2 BEGIN BACKUP;,SQL !cp /,/users01.dbf /BACKUP/users01.dbf,SQL ALTER TABLESPACE users 2 END BACKUP;,数据库备份,数据文件 2,144,数据文件 1,143,数据库,数据文件 1,数据文件 2,数据文件 3,控制文件,重做日志文件 1,重做日志文件 2,145,145,145,144,145,145,备份状态信息,动态视图,V$BACKUP,V$DATAFILE_HEADER,联机表空间备份过程中出现故障,ALTER TABLESPACE usersBEGIN BACKUP;,cp /users01.dbf,/BACKUP/users01.dbf,数据文件 3,重做日志文件 2,控制文件,重做日志文件,1,数据文件 1,数据库,144,145,144,144,144,数据文件 2,144,数据文件 3,重做日志文件 2,控制文件,重做日志文件,1,数据文件 1,数据库,146,145,146,146,146,数据文件 2,144,结束联机备份,查询,V$BACKUP,以检查备份状态,发出,ALTER DATABASE,命令更改状态并取消冻结标头:,或在,Oracle9,i,中使用以下命令:,ALTER DATABASE DATAFILE END BACKUP;,ALTER DATABASE END BACKUP;,只读表空间备份,ALTER TABLESPACE,query_data,READ ONLY;,SCN 1,SCN 2,SCN 1,备份副本,1,2,SCN 2,3,4,用户文件,1,文件,1,用户文件,2,Query_Data,文件,1,DBW0,只读表空间备份问题,在将表空间更改为只读后,只需要一个备份。,在使表空间成为读写状态之后,应恢复按照正常备份日程对该表空间进行备份。,控制文件必须能正确标识处在只读模式下的表空间;否则,您必须恢复该表空间。,与记录和不记录选项相关的备份问题,不记录,记录,所有更改记录到重做日志中,重做日志只记录最少量内容,可从上一次备份完全恢复,不可从上一次备份恢复,无其它备份,可能需要其它备份,手动备份控制文件,创建二进制映像,创建文本跟踪文件,ALTER DATABASE BACKUP CONTROLFILE TO control1.bkp;,ALTER DATABASE BACKUP CONTROLFILE TO TRACE;,备份初始化参数文件,CREATE PFILE FROM SPFILE;,CREATE PFILE = /backup/,init.ora, FROM SPFILE;,1,2,使用,DBVERIFY,实用程序验证备份,DBVERIFY,数据文件,联机,错误报告,脱机,3,4,联机,DBVERIFY,命令行界面,外部命令行实用程序,用于确保备份数据库或数据文件在还原之前是有效的,遇到数据损坏问题时可作为有用的诊断辅助工具,%,dbv,file=/ORADATA/u03/users01.dbf,logfile,=,dbv.log,第,十,章 备份与恢复,(教材第,16,章),10.1,数据库备份概述,10.2,逻辑备份和恢复,10.3,脱机备份,10.4,联机备份,10.5,数据库恢复概述,10.6,手工进行数据库恢复操作,介质恢复,用于恢复丢失的或损坏的当前数据文件或控制文件,要求显式调用,操作如下所示:,从备份还原文件,将重做数据从归档重做日志文件和联机重做日志应用到还原的文件中,恢复步骤,还原的数据文件,包含已提交和未提交的事务处理的数据库,恢复的数据库,应用了重做,应用了还原,5,4,3,2,1,数据文件,1,数据文件,2,数据文件,3,数据文件,1,数据文件,2,数据文件,3,数据文件,1,数据文件,2,数据文件,3,归档重,做日志,联机,重做日志,使用用户管理的过程而执行的还原和数据文件介质恢复,使用操作系统命令还原文件,使用,SQL*Plus,RECOVER,命令恢复文件,ARCHIVELOG,模式和,NOARCHIVELOG,模式,例程,SGA,重做日志,缓冲区,数据缓冲区,大型共享池,Java,池,共享池,数据字典,高速缓存,共享,SQL,和,PL/SQL,PMON,DBW,n,SMON,LGWR,CKPT,ARC,n,用户进程,服务器,进程,PGA,用户进程,服务器,进程,PGA,口令文件,参数文件,数据库,144,数据文件,1,144,数据文件,2,144,数据文件,3,144,控制文件,144,重做日志,文件,1,145,重做日志,文件,2,在,NOARCHIVELOG,模式下进行恢复,在,NOARCHIVELOG,模式下,必须还原以下数据库文件:,所有数据文件,控制文件,也可以还原以下文件:,重做日志文件,口令文件,参数文件,在,NOARCHIVELOG,模式下进行恢复,优点,易于操作,出错的风险小,恢复时间即为还原所有文件所花的时间,缺点,数据将丢失,必须手动重新应用,将整个数据库还原到上次备份时的状态(关闭的数据库的整体备份),在,NOARCHIVELOG,模式下使用重做日志文件备份进行恢复,从最新的备份进行还原,口令文件,参数文件,口令文件,参数文件,口令文件,参数文件,备份,144,数据文件,1,144,数据文件,2,144,数据文件,3,144,控制文件,144,重做日志,文件,1,143,重做日志,文件,2,数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志,文件,1,145,重做日志文件,2,数据库,144,数据文件,1,144,数据文件,2,144,数据文件,3,144,控制文件,144,重做日志,文件,1,143,重做日志,文件,2,在,NOARCHIVELOG,模式下不使用重做日志文件备份进行恢复,1.,关闭例程。,2.,从数据库的最新而且完整的备份中还原数据文件和控制文件。,3.,执行基于取消的恢复。,4.,使用,RESETLOGS,选项打开数据库。,在,ARCHIVELOG,模式下进行恢复,完全恢复,使用重做数据或增量备份,将数据库更新到最近的时间点,应用所有的重做更改,不完全恢复,使用备份和重做日志生成数据库的除当前版本之外的其它版本,完全恢复,确保要还原的数据文件处于脱机状态。,仅还原丢失的或损坏的数据文件。,不要还原控制文件、重做日志文件、口令文件或参数文件。,恢复数据文件。,在,ARCHIVELOG,模式下进行完全恢复,优点,仅需还原丢失的文件,将所有数据恢复到发生故障前那一刻的情形,恢复时间即为还原所丢失的文件以及应用所有归档日志文件所花的时间,缺点,必须有自您正用于还原的那个备份之后得到的所有归档日志文件,确定需要恢复哪些文件,查看,V$RECOVER_FILE,以确定需要恢复哪些数据文件。,查看,V$ARCHIVED_LOG,以得到数据库的所有归档重做日志文件的列表。,查看,V$RECOVERY_LOG,以得到进行恢复时所需的所有归档重做日志文件的列表。,用户管理的恢复过程:,RECOVER,命令,恢复装载的数据库:,恢复打开的数据库:,SQL RECOVER DATABASE,SQL RECOVER TABLESPACE users,SQL RECOVER DATAFILE,2 /ORADATA/u03/users01.dbf,或,SQL RECOVER,DATAFILE,2 /ORADATA/u03/users01.dbf,或,在恢复过程中使用归档重做日志文件,要更改归档位置,请使用,ALTER SYSTEM ARCHIVE LOG,. . .,命令。,要自动应用重做日志文件:,在开始介质恢复前,先发出,SET AUTORECOVERY ON,命令。,当提示输入一个归档日志文件时,请输入,auto,。,使用,RECOVER AUTOMATIC,. . .,命令。,使用用户管理的过程将数据文件还原到新的位置,使用操作系统命令将数据文件还原到新的位置。,使用,ALTER DATABASE RENAME FILE,命令将更改记录到控制文件中。,完全恢复方法,恢复关闭的数据库,用于:,系统数据文件,还原段数据文件,整个数据库,恢复打开的数据库,并且数据库最初是打开的(用于恢复丢失的文件),恢复打开的数据库,并且数据库最初是关闭的(用于在发生硬件故障后进行恢复),在没有数据文件备份的情况下恢复数据文件,完全恢复关闭的数据库,恢复关闭的数据库,用于:,系统表空间数据文件,回退段数据文件,整个数据库,关闭该例程,1,关闭的数据库恢复示例,还原数据文件,1,(日志序列,144,),2,打开数据库,4,装载的数据库,恢复的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志,文件,1,145,重做日志,文件,2,关闭的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志,文件,1,145,重做日志,文件,2,144,数据文件,1,146,数据文件,2,146,数据文件,3,146,重做日志,文件,1,145,重做日志,文件,2,3,146,控制文件,3,3,归档日志,文件,144,恢复打开的数据库(数据库最初是打开的),此方法适用于以下情况:,数据库当前已打开,在恢复期间数据库将一直保持打开状态,介质故障不会影响,SYSTEM,表空间,1,打开的数据库恢复示例,2,4,3,将数据文件,2,脱机,还原数据文件,2,(日志序列,144,),将数据文件 2 联机,打开的数据库,归档日志,文件,144,恢复的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志,文件,1,145,重做日志,文件,2,打开的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志,文件,1,145,重做日志,文件,2,146,数据文件,1,144,数据文件,2,146,数据文件,3,146,重做日志文件,1,145,重做日志,文件,2,3,146,控制文件,3,恢复打开的数据库(数据库最初是关闭的),此方法适用于以下情况:,数据库当前已关闭,将在恢复期间打开数据库,介质故障不会影响,SYSTEM,表空间,将数据文件 2 脱机,2,打开的数据库恢复示例,还原数据文件 2,4,将数据文件 2 联机,6,1,装载数据库,3,打开数据库,5,打开数据库,归档日志文件,144,恢复的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志文件,1,145,重做日志文件,2,关闭的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志文件,1,145,重做日志文件,2,146,数据文件,1,144,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志文件,1,145,重做日志文件,2,5,5,在没有备份的情况下恢复数据文件,从未备份过的数据文件丢失了,当文件属于,SYSTEM,表空间时不能使用,如果重新创建了控制文件,则不能使用,在没有备份的情况下重新创建丢失的数据文件,当丢失的数据文件由于从未备份过而无法还原时使用。,对丢失的数据文件的说明仍保留在数据字典和控制文件中。,重新创建该数据文件:,使用另一个文件名重新创建该数据文件:,SQL ALTER DATABASE CREATE DATAFILE ,filename,;,SQL ALTER DATABASE CREATE DATAFILE ,filename,AS ,new file name,;,打开的数据库,在没有备份的情况下进行恢复的示例,将数据文件或表空间联机,4,1,将数据文件或表空间脱机,2,重新创建数据文件,3,归档日志文件,144,恢复的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志文件,1,145,重做日志文件,2,打开的数据库,146,数据文件,1,146,数据文件,2,146,数据文件,3,146,控制文件,146,重做日志文件,1,145,重做日志文件,2,146,数据文件,4,146,数据文件,4,146,数据文件,1,144,数据文件,2,146,数据文件,3,数据文件,4,146,控制文件,146,重做日志文件,1,145,重做日志文件,2,3,3,只读表空间恢复,备份,2,恢复,情况,1,情况,2,情况,3,备份,1,只读,读写,只读,只读,读写,只读表空间的恢复问题,当出现以下情况时,必须为只读表空间考虑一些特殊事项:,重新创建控制文件,重命名数据文件,使用备份的控制文件,丢失控制文件,如果出现以下情况,则可能需要创建控制文件:,所有控制文件由于某个故障而丢失,需要更改数据库的名称,需要更改控制文件中的当前设置,恢复控制文件,在丢失控制文件后进行恢复的方法:,使用当前的控制文件,创建新的控制文件,使用备份的控制文件,
展开阅读全文