oracle恢复没有备份的数据文件.pdf
ORACLE数据库如何恢复

ORACLE数据库如何恢复(邝俊标)ORACLE数据库备份与恢复与ORACLE的结构密切相关,大家先弄清ORACLE 物理结构有哪些?逻辑结构是有哪些?它们的作用是什么?弄明白这些以后,具体怎么备份、怎么恢复就需要了解下ORACLE本身是怎么管理数据库的有那些相关的ORACLE系统表?ORACLE的后台进程是怎么管理的?最后就要知道相关的ORACLE命令、语法,根据系统提示错误灵活处理了。
ORACLE 恢复主要有下面的几种问题:一、数据文件丢失恢复:二、OS备份下的基于时间的恢复三、损坏联机日志的恢复四、损坏当前联机日志恢复五损坏控制文件的恢复六、损坏回滚数据文件的恢复七、损坏临时数据文件的恢复一、数据文件丢失恢复:1、查看报警文件或动态视图v$recover_fileSQL>select * from v$recover_file;2、脱机数据文件SQL> alter database datafile 'file#' offline drop;3、打开数据库,拷贝备份回来(restore),恢复(recover)该数据文件,并联机SQL> alter database open;4、拷贝备份从备份处copy d:\databak\ users01.dbf d:\oracle\oradata\orcl;5、恢复该数据文件SQL> recover datafile 'file#';SQL> recover database; (多个数据文件丢失,恢复整个数据库)6、恢复成功,联机该数据文件SQL> alter database datafile 'file#' online;说明:1) 采用热备份,需要运行在归档模式下,可以实现数据库的完全恢复,也就是说,从备份后到数据库崩溃时的数据都不会丢失。
2) 可以采用全备份数据库的方式备份,对于特殊情况,也可以只备份特定的数据文件,如只备份用户表空间(一般情况下对于某些写特别频繁的数据文件,可以单独加大备份频率)3) 如果在恢复过程中,发现损坏的是多个数据文件,即可以采用一个一个数据文件的恢复方法(第5步中需要对数据文件一一脱机,第6步中需要对数据文件分别恢复),也可以采用整个数据库的恢复方法。
oracle非完整备份灾难恢复

Oracle非完整备份灾难恢复背景信息:oracle数据库故障,系统管理员误操作,删掉了所有文件。
具体情况是:删掉了所有应用程序、重要数据文件、所有控制文件。
造成全厂办公系统瘫痪,所有数据丢失。
数据库原来是归档模式,用RMAN (Recovery Manager) 备份数据,采用nocatalog备份模式,即RMAN 使用控制文件。
我们采用的备份方式:(1)首先,每天用RMAN对数据库进行全备份;(2)其次,每天用RMAN对归档日志进行全备份,备份完成后,删除日志;(3)最后,采用数据库AUTOBACKUP 方式对控制文件进行备份。
如果一切备份正常,则我们首先恢复控制文件,然后做数据库全库和LOG日志的物理恢复,最后进行逻辑恢复,在两小时内即可将数据库恢复正常,办公系统恢复正常。
到现场后,发现每天用RMAN做的全库和LOG日志备份正常,但是,数据库控制文件的备份最新的是2006年9月20日,这是由于2006年9月20日系统更改口令,造成控制文件AUTOBACKUP失败,始终没有更新。
幸运的是,我们每一次RMAN full 备份是包括了控制文件在内。
我们采用了非常规方法首先恢复了控制文件。
具体步骤如下:一、恢复步骤1、验证原始库备份是否正常2、采用NetWorker User方式恢复oracle应用程序和相应目录文件;3、非常规方法恢复controlfiles ;4、startup mount 数据库;5、restore数据文件(物理恢复);6、restore LOG日志文件(物理恢复);7、recover database 逻辑恢复数据库;8、open 数据库;9、备份数据库。
二、操作指导1、验证备份:(略);2、通过NetWorker User 图形界面恢复oracle应用程序和相应目录文件:(略);3、非常规方法恢复controlfiles:sqlplus /nologSQL>connect / as sysdbaSQL>startup force nomount;SQL> DECLARE2 devtype varchar2(256);3 done boolean;4 BEGIN5devtype:=sys.dbms_backup_restore.deviceAllocate(type=>'sbt_tape',ident= >'T1');6 sys.dbms_backup_restore.restoreSetDatafile;7 sys.dbms_backup_restore.restoreControlfileTo (cfname=>'e:\oracle\oradata\Control01.ctl');8sys.dbms_backup_restore.restoreBackupPiece(done=>done,handle=>'test_120 8_1_5oi67e10', params=>null);9 sys.dbms_backup_restore.deviceDeallocate;10 END;11 /PL/SQL procedure successfully completed.控制文件恢复完成,将控制文件拷贝到相应位置,并以此生成三个控制文件。
ORACLE数据文件损坏,另类恢复方法。

ORACLE数据文件损坏,另类恢复方法。
Sam 9/23/2012 *注:此方法不能代替常规恢复场景:数据文件没有备份,也没有创建以来的所有日志,但有近期的日志(故障发生以来)SQL> host rm /u01/app/oracle/orcl/users01.dbf模拟数据文件users01.dbf丢了,此时千万不要停库!!!!!!1、找dbw 进程,查看其进程号[oracle@DBServer /]$ ps -ef|grepora_dbworacle 4656 1 0 09:53 ? 00:01:36 ora_dbw0_orcl2、到进程目录的fd 下找到删除文件[oracle@DBServer /]$ cd /proc/4656/fd[oracle@DBServerfd]$ ls -ltotal 0lr-x------ 1 oracle oinstall 64 Sep 23 16:54 0 -> /dev/nulll-wx------ 1 oracle oinstall 64 Sep 23 16:54 1 -> /dev/nulll-wx------ 1 oracle oinstall 64 Sep 23 16:54 10 ->/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4551.trcl-wx------ 1 oracle oinstall 64 Sep 23 16:54 11 ->/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4551.trmlr-x------ 1 oracle oinstall 64 Sep 23 16:54 12 ->/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/mesg/oraus. msblr-x------ 1 oracle oinstall 64 Sep 23 16:54 13 -> /dev/zerolr-x------ 1 oracle oinstall 64 Sep 23 16:54 14 -> /proc/4656/fd lr-x------ 1 oracle oinstall 64 Sep 23 16:54 15 -> /dev/zero lrwx------ 1 oracle oinstall 64 Sep 23 16:54 16 ->/u01/app/oracle/product/11.2.0/dbhome_1/dbs/hc_orcl.dat lrwx------ 1 oracle oinstall 64 Sep 23 16:54 17 ->/u01/app/oracle/product/11.2.0/dbhome_1/dbs/lkORCLlrwx------ 1 oracle oinstall 64 Sep 23 16:54 18 ->/u01/app/oracle/orcl/control01.ctllrwx------ 1 oracle oinstall 64 Sep 23 16:54 19 ->/u01/app/oracle/flash_recovery_area/orcl/control02.ctll-wx------ 1 oracle oinstall 64 Sep 23 16:54 2 -> /dev/nulllrwx------ 1 oracle oinstall 64 Sep 23 16:54 20 ->/u01/app/oracle/orcl/system01.dbflrwx------ 1 oracle oinstall 64 Sep 23 16:54 21 ->/u01/app/oracle/orcl/sysaux01.dbflrwx------ 1 oracle oinstall 64 Sep 23 16:54 22 ->/u01/app/oracle/orcl/undotbs01.dbflrwx------ 1 oracle oinstall 64 Sep 2316:54 23 -> /u01/app/oracle/orcl/users01.dbf (deleted)lrwx------ 1 oracle oinstall 64 Sep 23 16:54 24 ->/u01/app/oracle/orcl/temp01.dbflr-x------ 1 oracle oinstall 64 Sep 23 16:54 25 ->/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/mesg/oraus. msblrwx------ 1 oracle oinstall 64 Sep 23 16:54 26 ->/oradata/perfstat01.dbfl-wx------ 1 oracle oinstall 64 Sep 23 16:54 3 ->/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/log/orcl_ora _4551.trclr-x------ 1 oracle oinstall 64 Sep 23 16:54 4 -> /dev/nulllr-x------ 1 oracle oinstall 64 Sep 23 16:54 5 -> /dev/nulllr-x------ 1 oracle oinstall 64 Sep 23 16:54 6 -> /dev/nulllrwx------ 1 oracle oinstall 64 Sep 23 16:54 7 ->/u01/app/oracle/product/11.2.0/dbhome_1/dbs/hc_orcl.dat lrwx------ 1 oracle oinstall 64 Sep 2316:54 8 -> /u01/app/oracle/product/11.2.0/dbhome_1/dbs/lkins torcl (deleted)lr-x------ 1 oracle oinstall 64 Sep 23 16:54 9 -> /proc/4656/fd3、把在进程目录中的删除文件复制到原有位置(restore) [oracle@DBServerfd]$cp 23 /u01/app/oracle/orcl/users01.dbf4、恢复.(Recover)SQL> alter database datafile '/u01/app/oracle/orcl/users01.dbf' offline;SQL> recover datafile '/u01/app/oracle/orcl/users01.dbf'; Media recovery complete.SQL> alter database datafile '/u01/app/oracle/orcl/users01.dbf' online;完成恢复。
Oracle零数据丢失恢复方案ZDLRA介绍

Oracle零数据丢失恢复方案ZDLRA介绍零丢失数据恢复一体机技术概览日程目前业务对数据保护的需求与面临的挑战数据恢复一体机: 基于完全不同的技术基础数据恢复一体机配置概况客户与分析师的好评总结与答疑12 3 4 5数据库保护相关的关键目标业务部门目标–任何情况下都不会丢失关键业务数据–数据保护不会影响业务处理I.T. 部门目标–确保数据库级别的可恢复性–以集中式的服务方式来保护全部数据库目前已有的备份解决方案无法实现这些目标已有的备份一体机没有为数据库做任何针对性优化数据库的数据被作为需要周期性拷贝的普通文件数据对待每天都需要备份窗口备份对生产系统的性能有巨大影响,备份窗口内系统不能全负荷工作数据被暴露在丢失的风险之下可能会丢失最后一次备份之后的所有数据变化许多彼此独立的系统需要管理只能通过添加独立的备份一体机数量的方式扩展数据库可恢复性不佳虽然保存了大量文件的拷贝,但是数据库的保护状态是未知的恢复一体机为业务和IT 提供独有的优点:最小化备份对业务的影响生产系统只需要送出变化数据. 所有备份和磁带相关的处理都可以有效减负消除数据丢失风险实时重做日志传送为时刻进行的交易提供即时的保护云规模保护能力用支持海量扩展的备份服务为全数据中心的大量数据库非常方便地提供保护确保数据库的可恢复性为数据库提供端到端的可靠性,可见性与全面控制–而不只是管理大量离散文件零丢失数据恢复一体机概述增量推送被保护数据库只需要访问和送出变化的数据最小化对生产系统的影响 ?实时重做日志传输为进行中的交易提供即时保护被保护的多个数据库为数据中心的所有数据库提供保护PB 级数据管理能力支持全部平台的10.2 到12c Oracle 数据库不需要昂贵的备份代理客户端增量存储只在磁盘上存储验证和压缩过的数据库变化数据 ?自动组合增量数据提供任意时间点的快速回复?构建于Exadata 架构的扩展性和可靠性 ?基于企业管理器提供端到端的管理和控制恢复一体机复制数据到远端的恢复一体机磁带备份卸载恢复一体机为业务和IT 提供独有的优点:最小化备份对业务的影响生产系统只需要送出变化数据. 所有备份和磁带相关的处理都可以有效减负消除数据丢失风险实时重做日志传送为时刻进行的交易提供即时的保护云规模保护能力用支持海量扩展的备份服务为全数据中心的大量数据库非常方便地提供保护确保数据库的可恢复性为数据库提供端到端的可靠性,可见性与全面控制–而不只是管理大量离散文件为所有数据库提供类似Data Guard 的保护能力基于简单数据拷贝的通用备份一体机 ?每天进行一次备份数据损失风险: 上次备份之后所有的交易数据零丢失数据恢复一体机通过Data Guard 提供的内存缓冲区实时连续日志传输机制来保护实时进行的交易数据被保护的多个数据库数据损失本来就是不好的.往往会变得更加严重..它会在数据库之间产生巨量的数据一致性及其后续问题磁带库单向数据传递双向数据传递枢纽方式远端数据中心本地数据中心针对站点级故障提供数据保护的部署方式恢复一体机之间支持远程数据同步,可以为站点失效或灾难提供公保护支持自动从本地或远程的恢复一体机直接恢复数据针对人为错误或误操作的保护能力独立的磁带归档机制可选的低成本磁带归档机制在以下意外情况下确保数据不被破坏: –黑客,内部人员或病毒软件发起的数据破坏–意外导致的数据删除(磁带作为长期归档机制)–主要数据保护系统功能异常内置独立的磁带归档机制: 只需要外接带库就可以实现–卸载磁带备份对生产系统的压力–不需要在生产系统部署大量昂贵的戒指管理软件的代理程序–磁带驱动器可以在不拖慢生产系统的情况下全天有效运行–内含Oracle Secure Backup 软件, 也可以使用其他第三方磁带管理软件支持绝大部分主流磁带库16Gb FC从数据接收开始完成校验 ?周期性进行数据重新校验 ?恢复数据时先校验再恢复接收数据时和提供恢复时都会校验数据, 同时会对磁盘上的数据周期性进行校验数据向磁带机传出和从磁带机恢复时都会进行校验磁带归档远端复制一体机生产一体机针对数据损坏的保护能力恢复一体机充分理解数据库数据的格式并且会对数据进行端到端校验恢复一体机为业务和IT 提供独有的优点:最小化备份对业务的影响生产系统只需要送出变化数据. 所有备份和磁带相关的处理都可以有效减负消除数据丢失风险实时重做日志传送为时刻进行的交易提供即时的保护云规模保护能力用支持海量扩展的备份服务为全数据中心的大量数据库非常方便地提供保护确保数据库的可恢复性为数据库提供端到端的可靠性,可见性与全面控制–而不只是管理大量离散文件全增量架构不再需要重复运行全量备份: 针对数据库优化的永远增量的备份方式增量推送增量推送在源端完成数据去重 ?快速增量备份- 永远不需要读取重复的数据块 - 从来不发送重复的数据块消除为提交过的交易备份Undo 数据块的需求 ?消除不必要的未使用数据块访问和备份管理备份数据的增量存储 ?只存储变化数据 ?在数据块级实现压缩只向复制节点传输增量变化数据被保护数据库压缩的增量存储显著节省数据库的 I/O 开销以及网络传输开销变化数据不再需要重复的全量备份,只传输变化数据灾备系统有效利用存储空间的“虚拟”全备份当完成初始的全量备份后, 后续的增量备份按天生成的虚拟数据库全备份展现为增量备份时间点的物理全备份,内部以指针的方式组织数据虚拟备份典型情况下可以提供 10 倍的存储有效性以可能的最小存储空间开销来使长期保存备份数据得以实现提供数据库保护的“时间机器” 机制增量存储被保护的数据库们第N 天增量第1天的虚拟全备第N 天的虚拟全备第1天增量第0天全备不再需要重复进行全备份: 永远增量架构快速回复到任意时间点不需要生产服务器消耗时间和资源来合并就得备份集直接恢复任意一个虚拟全备所有被虚拟全备引用到的数据块都保证高效读取消除传统方式恢复全备然后合并多个增量给生产系统带来的处理压力基于底层的 Exadata 硬件架构提供高性能与高扩展性增量存储被保护的数据库们RESTORE DATABASE TO DAY ‘N’第0天全备第1天增量第N 天增量第‘N’ 天的全备最小化备份影响: 有效提升生产系统性能卸载备份数据处理, 消除昂贵的备份代理程序, 降低网络负载如今的数据库服务器备份时性能下降磁盘 / 磁带 / 去重各种备份代理程序备份相关操作:合并, 压缩, 校验, 删除,全量备份,磁带备份卸载备份负载后性能得以显著提升有恢复一体机配合工作的数据库服务器Disk / Tape / DedupeBackup Agents Backup Operations: Merge, Compress, Validate, Delete, Full/Tape Backups增量推送恢复一体机为业务和IT 提供独有的优点:最小化备份对业务的影响生产系统只需要送出变化数据. 所有备份和磁带相关的处理都可以有效减负消除数据丢失风险实时重做日志传送为时刻进行的交易提供即时的保护云规模保护能力用支持海量扩展的备份服务为全数据中心的大量数据库非常方便地提供保护确保数据库的可恢复性为数据库提供端到端的可靠性,可见性与全面控制–而不只是管理大量离散文件3四分五裂的备份数据缺乏有效的责任管理如今现状: 四分五裂的备份流程有效管理备份与数据增长: 企业 IT 的第一大隐忧1数据库集合明确定义的Oracle 数据块格式RMAN 备份集没有意义的比特流2媒体服务器恢复一体机: 端到端保护并提供可见性基于策略的管理机制: 针对特定应用的数据保护1针对应用的数据保护策略明确定义的Oracle 数据块格式RMAN 备份集端到端进行Oracle 数据块校验2数据恢复一体机3与 EM Cloud Control 整合的管理界面。
Oracle数据库数据发生丢失后的恢复方法

将 会丢 失 。因此 , 讨论不 完全恢 复 。 不
2 1 恢 复 过 程 .
al 数据 库数据 发 生 丢失 后 的恢 复方 法 , 供 同 仁 c e 谨
参考。
O al 数据库的恢复过程分两 步进行 , rc e 首先将 把 存放在重做 日志 文件中的所 有重 做运行 到数 据文件 , 之后对重做 中所有提 交的事 务进行 回滚 , 这样所有 数 据就恢复到发 生 灾难那 一 时刻 了。数 据 库 的恢复 只 能在 发 生 故 障 之 前 的 某 一 个 时 刻 。例 如 : 一 个 有 20// 0 1 1 1的数据 库备 份 , 2 0 / / 数 据库 中数 据 当 015 1 发生混 乱 , 望 将 数 据 库恢 复 到 2 0 / / 0时 的 状 希 0143 态, 只能先恢 复 2 O / / O l 1 1的数据库备 份 , 然后在 其运
环境 。随着 Wid ws系统 的广 泛应 用 , rce . 7 no O al 1 5 已 经 成 为 过 去 时 , 于 Wid ws的 Orc 8、 基 no al i e
2 恢 复
数 据库 的恢复 可分为两 大类 : 一是完 全恢复 ; 二
是 不完全 恢复 。
完 全恢 复 指 将数 据恢 复 到发 生 故 障 的时 间点 , 不丢失 任何数 据 。不完全 恢复指 将数据 恢 复到发生
维普资讯
第2 期
铁
法
科
技
20 年1月 06 2
O al数据库数据发生丢失后的恢复方法 rc e
晓南矿 关明杰
摘 要 本文详 细介绍 了 Orc 数 据库发 生 灾难 性数 据丢 失后 的恢 复 方法 , al e 重点讲 述 了用 户操 作 失败 与存储 设备 失败 时数据库 管理员完全 恢复 的办 法。 关键 词 oa l 数据 库 备 份 恢 复 日志 文件 rce O al 数 据库环境 己成 为世界上 最流行 的数据 rc e 库平 台之一 , 占有 7 以上 的 数 据库 市 场 份 额 , O 并 法, 数据 库必须 处于 打开状态 , 而且 如果 数据库不 是
Oracle数据库备份和恢复操作手册

Oracle数据库备份和恢复操作手册1ORACLE数据库数据备份和恢复操作手册1.1.ORACLE参数设置进入CMD操作界面,使用sqlplus连接数据库,图例 1 数据库连接操作连接语法:sqlplus system/Oracle2013@orcl参数说明备注sqlplus 语法命令system 数据库管理员用户名Oracle2013 system用户密码orcl 数据库连接标示符数据库安装目录的tnsnames.ora文件中可以找到Oracle11G目录:C:\app\Administrator\product\11.2.0\dbho me_1\NETWORK\ADMIN图例 2 环境变量设置1.2.数据备份备份脚本:expdp system/Oracle2013@orcl directory=file_path dumpfile=ARADMIN.dat logfile=ARADMIN.log schemas=ARADMIN参数说明备注expdp 语法命令system 数据库管理员用户名Oracle2013 system用户密码orcl 数据库连接标示符数据库安装目录的tnsnames.ora文件中可以找到Oracle11G目录:C:\app\Administrator\product\11.2.0\dbho me_1\NETWORK\ADMINdirectory 文件目录名称导出数据库文件的存放目录dumpfile 数据库文件名称导出数据库文件的文件名logfile 数据库日志文件名称导出数据库的日志文件名称schemas 数据库用户图例 3 数据库备份操作成功导出。
图例 4 成功导出1.3.数据恢复1.3.1.删除ARADMIN用户1.连接数据库sqlplus system/Oracle2013@orcl图例 5 连接数据库2.删除目标数据库中的ARADMIN用户drop user ARADMIN cascade;图例 6 成功删除目标数据库中的ARADMIN用户1.3.2.重新创建ARADMIN用户1.连接数据库sqlplus system/Oracle2013@orcl图例7 连接数据库2.创建ARADMIN用户create user ARAdmin identified by AR#Admin# default tablespace ARSYSTEM temporary tablespace ARTMPSPC quota unlimited on arsystem;图例8创建ARADMIN用户3.赋予数据库权限grant alter session,create cluster,create database link,create sequence,create session,create synonym,create table,create view,create procedure,createtrigger,query rewrite to ARAdmin;图例9 赋予数据库权限1.3.3.数据库导入导入命令:impdp system/Oracle2013@orcl directory=file_path dumpfile=ARADMIN20130606.DAT logfile= ARADMIN20130614.log schemas=ARADMIN图例10 数据库导入导入完成1.4.EXP/IMP与EXPDP/IMPDP 对比1.0.1运行位置不同1.0.2EXP/IMP不同模式原理:exp/imp 默认会是传统路径,这种模式下,是用SELECT 加数据查询出来,然后写入buffer cache,在将这些记录写入evaluate buffer. 最后传到Export客户端,在写入dump文件。
Oracle备份恢复操作说明

Oracle备份恢复操作说明配置要求在使用爱数备份存储柜进行备份和恢复 Oracle 数据库、表空间、控制文件和归档日志等数据之前,应检验每个要保护的 Oracle SID(数据库)是否满足下列条件:∙使用爱数备份存储柜的用户应被分配了一个可用来登录到Oracle 数据库的Oracle 用户帐户。
∙Oracle Server 的数据库日志模式设置为ARCHIVELOG。
∙Oracle Server 的自动归档在Oracle 参数初始化文件中是启用的(该文件的默认名称为Init(SID).ora,其中SID 是实例名称)。
∙在Oracle Server 上有一个Oracle 在其中生成Archived Logfiles 的目录。
创建 Oracle 用户账户必须存在具有适当数据库权限的用户帐户爱数备份存储柜才能访问 Oracle 数据库。
您可以使用具有所需权限的现有用户帐户,或者创建具有所需权限的新用户帐户。
若要创建专门用于爱数备份存储柜的 Oracle 用户帐户,请使用 Oracle 服务器管理器应用程序并从提示符处输入以下命令:create user USERNAME identified by PASSWORD;grant dba to USERNAME;请确保用分配的登录用户名替换 USERNAME,用适当的密码替换 PASSWORD。
输入以上所有命令之后,分配的用户将具有保护数据库所需的适当权限。
注意:确保您是作为DBA 连接。
检验归档日志模式在备份 Oracle 数据库之前,必须将每个数据库的 Oracle 数据库日志模式设置为ARCHIVELOG,并且必须启用每个数据库的自动归档设置。
必须启用 ARCHIVELOG,爱数备份存储柜中的 Oracle 备份模块才能在运行备份操作前将每个表空间置于备份模式。
检验数据库日志是否处于 ARCHIVELOG 模式以及是否启用了“自动归档”的具体步骤如下:∙从服务器管理器的命令提示符处键入以下命令:archive log list;您应该看到: Database Log Mode ARCHIVE LOGAutomatic Archival ENABLED如果有任一参数没有正确设置,请关闭数据库,然后正确设置它。
oracle恢复没有备份的数据文件

25、恢复没有备份的数据文件在数据文件崩溃之前没有任何备份的情况下,要恢复这个文件通常要符合如下条件:●所需恢复的数据文件不属于系统表空间或还原/回滚段表空间。
●由于介质损坏或用户错误操作导致数据文件的丢失,但是这个文件从来就没有备份过。
●在创建本次丢失的数据文件之前数据库处于归档模式下。
●从这个数据文件创建以来所有的归档日志文件都完整无损。
步骤:1、如果数据库是在打开状态,使用数据字典dba_data_files获取要恢复的数据文件所对应的表空间及它所对应的状态。
SQL>select tablespace_name,table_name,status from dba_data_file;2、如果数据库处在联机状态,使用数据库字典dba_tablespace获取要恢复的表空间信息,通过表空间V$database获取要恢复的数据文件是否处在联机状态。
3、如果表空间处于联机状态,要先将表空间脱机状态,也可以将数据文件设为脱机,打开数据库。
如果数据已经关闭,启动到mount状态将数据文件脱机,再打开数据库。
(1)如果数据库处于打开状态SQL>alter database datafile ‘c:\test.dbf’ offline;(2)如果数据库处于关闭状态SQL>startup mount;SQL>alter database datafile ‘c:\test.dbf’ offline;SQL>alter database open;4、使用v$recover_file查看数据文件的恢复状态5、在数据库打开状态下,使用alter database create datafile重建数据文件结构。
SQL>alter database create datafile ‘c:\test.dbf’ as‘c:\test.dbf’;6、再次使用v$recover_file查看数据文件的恢复状态7、使用:recover tablespace “表空间”,也可以使用recover datafile “数据文件”把数据从归档日志文件盒重做日志文件重新写入已经修复的数据文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
25、恢复没有备份的数据文件
在数据文件崩溃之前没有任何备份的情况下,要恢复这个文件通常要符合如下条件:
●所需恢复的数据文件不属于系统表空间或还原/回滚段表空间。
●由于介质损坏或用户错误操作导致数据文件的丢失,但是这个文件从来就没有备份过。
●在创建本次丢失的数据文件之前数据库处于归档模式下。
●从这个数据文件创建以来所有的归档日志文件都完整无损。
步骤:
1、如果数据库是在打开状态,使用数据字典dba_data_files获取要恢复的数据文件所对应
的表空间及它所对应的状态。
SQL>select tablespace_name,table_name,status from dba_data_file;
2、如果数据库处在联机状态,使用数据库字典dba_tablespace获取要恢复的表空间信息,
通过表空间V$database获取要恢复的数据文件是否处在联机状态。
3、如果表空间处于联机状态,要先将表空间脱机状态,也可以将数据文件设为脱机,打开
数据库。
如果数据已经关闭,启动到mount状态将数据文件脱机,再打开数据库。
(1)如果数据库处于打开状态
\test.dbf’ offline;
SQL>alter database datafile ‘c:
(2)如果数据库处于关闭状态
SQL>startup mount;
test.dbf’ offline;
SQL>alter database datafile ‘c:
SQL>alter database open;
4、使用v$recover_file查看数据文件的恢复状态
5、在数据库打开状态下,使用alter database create datafile重建数据文件结构。
‘c:test.dbf’;
SQL>alter database create datafile ‘c:
test.dbf’ as
6、再次使用v$recover_file查看数据文件的恢复状态
表空间”,也可以使用recover datafile “
数据文件”
7、使用:recover tablespace “
把数据从归档日志文件盒重做日志文件重新写入已经修复的数据文件。
test.dbf’;
SQL>recover datafile ‘c:
8、当恢复完成后使用alter tablespace 或alter database命令将表空间或数据文件重新设
置为联机状态
test.dbf’ online;
SQL>alter database dataf ile ‘c:
至此数据文件恢复完成。
9、查看恢复的情况。