oracle恢复实验
ORACLE数据库恢复演练报告资料

Oracle数据库异机恢复测试报告北京宝利信通有限公司2009年11月目录一.测试背景 (3)二.测试概况 (3)●时间、地点 (3)●测试主要目的 (3)●主要工作内容 (3)三.测试环境 (3)3.1测试主机环境 (3)3.2测试系统结构图 (4)四.测试步骤及结果 (4)4.1 恢复环境准备 (4)4.2 建立CommVault 8.0备份服务器 (4)4.4安装Oracle 10.0.2.0 for AIX和HPUX数据库 (24)4.4.1 硬件环境 (24)4.4.2 软件环境 (24)4.4.3 软件安装 (24)4.5安装Commvault Media agent ,oracle ida for AIX 和HP-UX (25)4.6使用磁带进行Oracle数据库的全库恢复 (38)4.6.1对核心数据库(AIX)进行恢复 (38)➢数据库的物理恢复(restore) (38)➢数据库的逻辑恢复 (47)➢打开数据库(open) (47)4.6.2对财务数据库(HP-UX)进行恢复 (48)➢数据库的物理恢复(restore) (48)➢数据库的逻辑恢复(recover) (55)➢打开数据库(open) (55)4.7数据库恢复后的校验 (56)➢数据库基本参数检查 (56)➢应用数据检查 (58)一.测试背景XX公司核心数据库采用AIX系统和ORACLE10G数据库;ERP数据库系统采用HP-UX 系统和ORACLE10G数据库,采用CommVault备份软件,结合LANfree备份方式将Oracle数据备份到ADIC Scalar i500磁带库中.此次测试模拟CommVault备份服务器、数据库主机发生灾难后的数据恢复全过程, 为灾难恢复提供经验二.测试概况●时间、地点2009年11月16日~11月25日,XX公司●测试主要目的验证CommVault备份软件在主机发生灾难后的可恢复性验证使用CommVault 软件备份到磁带上的数据的有效性。
NBU异机恢复Oracle操作步骤

NBU异机恢复Oracle操作步骤NBU 异机恢复Oracle操作步骤Hehuyi_In 于 2020-05-15 22:36:22 发布 1507 收藏 5分类专栏: Oracle 备份还原版权Oracle同时被 2 个专栏收录206 篇⽂章4 订阅订阅专栏备份还原31 篇⽂章0 订阅订阅专栏⼀、准备⼯作1. DBA恢复服务器安装与原库相同版本的数据库软件、NBU客户端双向开通到NBU备份服务器的1556、13724、13720、13782、13790端⼝的防⽕墙策略(应该只要1556和13724,但为避免还原时出现其他异常,建议都开)/etc/hosts⽂件添加NBU备份服务器主机名及原库主机名,ping 主机名测试能否解析成功确保恢复服务器磁盘空间⾜够2. NBU管理员/etc/hosts⽂件添加待恢复服务器主机名,ping 主机名测试能否解析成功,若不成功可使⽤bpclntcmd -clear_host_cache清除nbu端dns缓存配置恢复授权,确保备份机器和还原机器都在列表中,且允许还原Host Properties->Mater server->Client Attributes若是异机恢复,需在NBU给备份机器和恢复机器增加异机恢复的权限cd /usr/openv/netbackup/db/altnamestouch 主机名检查异机恢复参数NBUInstallPath/NetBackup/bin/admincmd/bpgetconfig | grep "DISALLOW_CLIENT"#输出DISALLOW_CLIENT_LIST_RESTORE = NODISALLOW_CLIENT_RESTORE = NO#若如上两个参数为YES,则表⽰禁⽌进⾏异机恢复,需要将两个参数改成NO,为保证参数⽣效,建议修改后重启主服务器上的NBU服务NBUInstallPath/NetBackup/bin/bp.kill_allNBUInstallPath/NetBackup/bin/bp.start_all⼆、数据恢复以下均在待恢复服务器操作1. 检查备份⽂件情况/usr/openv/netbackup/bin/bplist -C iZwz94g9fehswlnzd19jv2Z -t 4 -b -l -R /# -C后跟备份库主机名;-t后跟还原类型,4是oracle标志;-b指列出备份⽂件的⽇期和时间;-l指列出备份⽂件的详细信息;-R以递归的⽅式显⽰⼦⽬录。
实验4 Oracle数据库备份与恢复实验[1]
![实验4 Oracle数据库备份与恢复实验[1]](https://img.taocdn.com/s3/m/49e9641bc5da50e2524d7fc1.png)
实验6 Oracle数据库备份与恢复实验一、实验目的理解数据库备份工作的重要性,将备份与恢复策略的理论和实践相结合,能根据实际情况确定备份和恢复策略。
熟练掌握逻辑备份和恢复工具。
二、实验要求1.逻辑备份工具表方式备份以实验3中创建的用户登录利用Oracle提供的逻辑备份工具EXP,选择表方式备份实验3中创建的模式对象2.逻辑备份工具用户方式备份以实验3中创建的用户登录利用Oracle提供的逻辑备份工具EXP,选择用户方式备份实验3中创建的模式对象3.逻辑备份工具数据库方式备份以SYSTEM用户登录利用Oracle提供的逻辑备份工具EXP,选择全库方式备份数据库4.逻辑恢复工具进行恢复以SYSTEM用户登录利用Oracle提供的逻辑恢复工具IMP,将前面1、2、3中选择的不同备份方式备份的文件,进行相应的数据库恢复5.备份向导进行联机热备份配置企业管理器的集成方式管理OMS 配置进行联机热备份的环境利用备份向导将实验2中创建的表空间联机热备份6.备份向导进行联机热恢复利用备份向导将5中联机热备份出的文件进行联机热恢复三、实验学时安排课堂内1学时完成二中所列1、2、3、4四项内容,其余各项内容均在课外自行上机练习完成。
四、实验内容与步骤任务1:逻辑备份工具EXP表方式备份选择【开始】/【程序】/【附件】/【命令提示符】选项,执行exp命令,在用户名后输入实验3中创建的用户名/口令@连接描述符并执行,数据库连接成功后出现如图6-1所示界面。
在该界面根据提示信息输入相应参数,将开始逻辑备份过程。
这里选择以表方式备份数据库。
备份出来的文件保存在指定的路径下(在本例中保存在e:\uwxd1.dmp下)。
图6-1 执行exp.exe 命令以表方式备份任务2:以用户方式备份选择【开始】/【程序】/【附件】/【命令提示符】选项,执行exp命令,在用户名后输入实验3中创建的用户名/口令@连接描述符并执行,数据库连接成功后出现如图6-2所示界面。
oracle11g还原数据库步骤__概述说明以及解释

oracle11g还原数据库步骤概述说明以及解释引言部分的内容可以按照如下方式撰写:1. 引言1.1 概述引言部分将介绍本篇文章的主题,即Oracle 11g数据库还原步骤。
数据库还原是一项至关重要的任务,它可以帮助恢复丢失或损坏的数据,并确保系统的连续性和可靠性。
在本文中,我们将深入探讨Oracle 11g数据库还原的步骤和过程,以及执行还原操作前需要注意的准备工作。
1.2 文章结构在本文中,我们将按照以下顺序来讨论Oracle 11g数据库还原:- 首先,我们将介绍Oracle 11g数据库还原的重要性,阐述为什么必须进行数据库还原操作。
- 其次,我们将概述Oracle 11g数据库还原的步骤,并列出每个步骤的简要说明。
- 第三部分我们将详细描述执行数据库还原操作前所需进行的准备工作。
- 接下来,我们将提供执行数据库还原操作的详细步骤,包括必要时涉及到的命令和工具。
- 最后,我们将讨论完成数据库还原后进行验证和测试的方法与技巧。
1.3 目的本文旨在为读者提供有关Oracle 11g数据库还原的全面指南。
通过学习本文,读者将能够了解数据库还原的重要性、掌握进行数据库还原操作的步骤和技巧,并且能够有效地验证和测试还原后的数据库。
我们希望这篇文章能够帮助读者在数据库还原过程中避免常见错误,并提供相关提示和建议。
2. 正文:2.1 Oracle 11g数据库还原的重要性在数据库管理中,数据的安全性和完整性是至关重要的。
由于各种原因,比如硬件故障、用户误操作或者系统遭受攻击,数据库可能会丢失或损坏。
因此,在这些情况下,数据库还原变得非常重要。
Oracle 11g数据库还原是指恢复已经丢失或被损坏的数据到其先前可用状态的过程。
2.2 Oracle 11g数据库还原的步骤概述数据库还原通常包括以下主要步骤:- 备份介质准备:确定可用的备份介质,并确保其处于良好状态。
- 目标库环境准备:在目标库上创建必需的目录结构,并配置参数以适应还原操作。
Oracle大型数据库实验五重做日志文件、表空间管理操作

Oracle大型数据库实验五重做日志文件、表空间管理操作第一篇:Oracle大型数据库实验五重做日志文件、表空间管理操作集美大学计算机工程学院实验报告课程名称:大型数据库技术指导教师:杨艳华班级:计算12 姓名:实验成绩:上机实践日期:2014.12 上机实践时间:2学时实验项目名称:重做日志文件、表空间管理操作学号:20 实验项目编号:实验五组号:一、实验目的1、理解重做日志文件的基本概念;2、掌握重做日志文件组及其成员的添加、移动、删除等操作;3、掌握归档重做日志的设置;4、理解表空间的基本概念和分类;5、掌握永久表空间的创建和管理操作;6、掌握还原表空间的管理。
二、实验要求1、完成重做日志文件组及其成员文件的管理操作;2、完成归档重做日志的设置;3、完成永久表空间和临时表空间的管理操作;4、完成还原表空间的管理。
三、实验内容(1)查看数据库当前重做日志文件组及成员的设置情况,然后,为数据库添加一组重做日志,组内包含两个成员文件,分别为redo4a.log和redo4b.log,大小分别为5MB。
1(2)为上面新添加的那组重做添加一个日志成员,命名为“redo4c-姓名简拼.log”,实现重做日志的多路存储。
(3)把数据库从非归档模式修改为归档模式,之后创造条件让数据库立即归档,并检查归档是否成功(4)创建永久表空间ν创建一个表空间名为“TB+学号后三位+姓名简拼” ν空间的大小为50M ν表空间包括两个数据文件:表空间名_01.dbf(30M)和表空间名_02.dbf(20M),大小均不能自动扩展ν数据文件均存放在Oracle 的安装根目录下ν区的分配方式为统一大小,192K ν段管理采用自动方式(5)改变上述永久表空间的可用性ν先将表空间脱机ν再进行联机(6)创建一个4K的非标准块表空间,命名为“tbf+学号后三位+姓名简拼”,数据文件存储在”oradataorcl姓名简拼”目录下,大小为(学号后三位*2)M。
使用NetBackup进行oracle备份和恢复

使用NetBackup进行oracle备份和恢复一、环境介绍:这个实验都是在vmware workstation里完成的。
由于NetBackup7只能装在64位的系统上,所以这里采用了64位的rhel5.5系统,以及oracle 10gr2 for linux_x64的软件包。
数据库的数据文件存储在ASM中。
安装rhel、oracle、netbackup这里不提,可以参考网上其他博文。
NetBackup的服务端、客户端以及媒体服务器都在同一台主机上()。
在安装netbackup7过程中,数据库的agent不需要额外再单独安装,安装客户端以及服务器端时默认已经安装了,只需要以oracle身份执行oracle_links将rman和netbackup 结合在一块即可。
以下主要针对备份和恢复做详细描述。
二、备份:在备份之前要创建一个适用于oracle的策略,否则无法进行备份的。
至于如何创建策略,可以参考官方文档。
这里已经创建了一个策略orabak,此策略类型是oracle,如图所示:创建完成后在页面存在一个名为“Default-Application-Backup”的默认日程,可以在日程选项里进行新增、删除、更新日程等操作。
本次试验不进行策略设置,默认日程已经能够满足测试的。
注意:jnbSA程序是netbackup的管理窗口,而jbpSA是客户端进行备份、恢复、归档操作的窗口。
要进行oracle的备份,必须以oracle用户运行jbpSA命令,如图所示:登录成功后会看到如下画面:选中要备份的数据库实例,这里只有db01一个实例,然后点击右下角的Backup按钮,会弹出Netbackup for oracle backup向导画面:点击下一步:这里选择认证方式,有OS认证以及oralce认证,如果是OS认证,则NBU会以oracle身份运行相关命令,因为之前登录的用户就是oracle。
如果是oracle认证,则User Name必须是具有sysdba权限的数据库用户,一般就是sys用户:Net service name可选的。
数据库恢复实例

仅仅丢失一个普通用户数据文件的恢复A(联机恢复)(例如,丢失D:\BACKUPDB\USERS01.DBF)准备工作, 通过下面的工作,如果完全恢复,应该可以看到;insert into test1 values(2);SQL> conn lunar/lunarSQL> select * from tab;TESTBACKUP3 TABLESQL> create table test1 (a number);SQL> insert into test1 values(1);SQL> alter system switch logfile;SQL> commit;SQL> alter system switch logfile;SQL> insert into test1 values(2);SQL> commit;SQL> alter system switch logfile;SQL> conn internalSQL> archive log list数据库日志模式存档模式自动存档启用存档终点d:\BACKUPDB\archive最早的概要信息日志序列3下一个存档日志序列5当前日志序列5shutdown abort关闭例程,模拟数据文件丢失SQL> shutdown abortORACLE 例程已经关闭。
Mount数据库SQL> startup mount数据库装载完毕。
使损坏的数据文件脱机SQL> alter database datafile 'D:\BACKUPDB\USERS01.DBF' offline;打开数据库SQL> alter database open;拷贝刚才热备的数据文件(USERS01.DBF)恢复损坏的数据文件SQL> recover datafile 'D:\BACKUPDB\USERS01.DBF';ORA-00279: ?? 424116 (? 10/20/2002 20:42:04 ??) ???? 1 ????ORA-00289: ??: D:\BACKUPDB\ARCHIVE\BACKUPT001S00001.ARCORA-00280: ?? 424116 ???? 1 ???? # 1 ???指定日志: {<RET>=suggested | filename | AUTO | CANCEL}autoORA-00279: ?? 424125 (? 10/20/2002 20:44:14 ??) ???? 1 ????ORA-00289: ??: D:\BACKUPDB\ARCHIVE\BACKUPT001S00002.ARCORA-00280: ?? 424125 ???? 1 ???? # 2 ???ORA-00278: ??????????? 'D:\BACKUPDB\ARCHIVE\BACKUPT001S00001.ARC' ……………………..已应用的日志。
ORACLE数据库恢复演练报告

Oracle数据库异机恢复测试报告北京宝利信通有限公司2009年11月目录一.测试背景 (3)二.测试概况 (3)●时间、地点 (3)●测试主要目的 (3)●主要工作内容 (3)三.测试环境 (3)3.1测试主机环境 (3)3.2测试系统结构图 (4)四.测试步骤及结果 (4)4.1 恢复环境准备 (4)4.2 建立CommVault 8.0备份服务器 (4)4.4安装Oracle 10.0.2.0 for AIX和HPUX数据库 (24)4.4.1 硬件环境 (24)4.4.2 软件环境 (24)4.4.3 软件安装 (24)4.5安装Commvault Media agent ,oracle ida for AIX 和HP-UX (25)4.6使用磁带进行Oracle数据库的全库恢复 (38)4.6.1对核心数据库(AIX)进行恢复 (38)➢数据库的物理恢复(restore) (38)➢数据库的逻辑恢复 (47)➢打开数据库(open) (47)4.6.2对财务数据库(HP-UX)进行恢复 (48)➢数据库的物理恢复(restore) (48)➢数据库的逻辑恢复(recover) (55)➢打开数据库(open) (55)4.7数据库恢复后的校验 (56)➢数据库基本参数检查 (56)➢应用数据检查 (58)一.测试背景XX公司核心数据库采用AIX系统和ORACLE10G数据库;ERP数据库系统采用HP-UX 系统和ORACLE10G数据库,采用CommVault备份软件,结合LANfree备份方式将Oracle数据备份到ADIC Scalar i500磁带库中.此次测试模拟CommVault备份服务器、数据库主机发生灾难后的数据恢复全过程, 为灾难恢复提供经验二.测试概况●时间、地点2009年11月16日~11月25日,XX公司●测试主要目的验证CommVault备份软件在主机发生灾难后的可恢复性验证使用CommVault 软件备份到磁带上的数据的有效性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
oracle恢复实验啥是冷备份:停止数据库以后做的备份冷备份要点:必须是整体备份没有增量备份策略需要较大的空间冷备份步骤:停止数据库,必须是干净的停止备份文件(数据文件,控制文件,日志文件和其它需要文件)启动数据库冷备份脚本:select 'cp '||name||' /opt/ora10g/backup' from v$datafileunion allselect 'cp '||name||' /opt/ora10g/backup' from v$controlfileunion allselect 'cp '||name||' /opt/ora10g/backup' from v$tempfileunion allselect 'cp '||member||' /opt/ora10g/backup' from v$logfile;2 热备份数据文件alter tablespace tbtest begin backup拷贝相应表空间的文件alter tablespace tbtest end backup下面来看一下BEGIN BACUP和END BACKUP做了什么2.1SQL> select file#,name,checkpoint_change# from v$datafile;FILE# NAME CHECKPOINT_CHANGE#---------- ---------------------------------------- ------------------1 /opt/ora10g/oradata/testdb/system01.dbf 9885092 /opt/ora10g/oradata/testdb/undotbs01.dbf 9885093 /opt/ora10g/oradata/testdb/sysaux01.dbf 9885094 /opt/ora10g/oradata/testdb/users01.dbf 9885095 /opt/ora10g/oradata/testdb/example01.dbf 9885096 /opt/ora10g/oradata/testdb/tbtest001.dbf 988509------初始状态,CHECKPOINT_CHANGE#全部一致-------2.2 对文件6所属表空间进行备份SQL> alter tablespace tbtest begin backup;Tablespace altered.SQL> select file#,name,checkpoint_change# from v$datafile;FILE# NAME CHECKPOINT_CHANGE#---------- ---------------------------------------- ------------------1 /opt/ora10g/oradata/testdb/system01.dbf 9885092 /opt/ora10g/oradata/testdb/undotbs01.dbf 9885093 /opt/ora10g/oradata/testdb/sysaux01.dbf 9885094 /opt/ora10g/oradata/testdb/users01.dbf 9885095 /opt/ora10g/oradata/testdb/example01.dbf 9885096 /opt/ora10g/oradata/testdb/tbtest001.dbf 988701------注意文件6的CHECKPOINT_CHANGE#,BEGIN BACKUP后这个文件单独存盘了,所以CHECKPOINT_CHANGE#是最大的-----SQL> select * from v$backup;FILE# STATUS CHANGE# TIME---------- ------------------ ---------- ---------1 NOT ACTIVE 987886 08-JUL-092 NOT ACTIVE 03 NOT ACTIVE 987909 08-JUL-094 NOT ACTIVE 988393 08-JUL-095 NOT ACTIVE 988425 08-JUL-096 ACTIVE 988701 08-JUL-09------以上显示文件6处于备份活动状态-------2.3 强制产生检查点,让所有文件存盘SQL> alter system checkpoint;System altered.SQL> select file#,name,checkpoint_change# from v$datafile;FILE# NAME CHECKPOINT_CHANGE#---------- ---------------------------------------- ------------------1 /opt/ora10g/oradata/testdb/system01.dbf 9890782 /opt/ora10g/oradata/testdb/undotbs01.dbf 9890783 /opt/ora10g/oradata/testdb/sysaux01.dbf 9890784 /opt/ora10g/oradata/testdb/users01.dbf 9890785 /opt/ora10g/oradata/testdb/example01.dbf 9890786 /opt/ora10g/oradata/testdb/tbtest001.dbf 988701-----观察文件6的CHECKPOINT_CHANGE#,它并没有随着强制检查点而改变。
说明文件头是被冻结了的--------------2.4 拷贝这个文件,注意,此时对此文件的写入是可以正常进行的。
因为文件头中有8个块,而我们只冻结了第一个(和SCN有关的那个块),而剩下的包含EXTENT信息,是时刻在改变的。
所以无法冻结。
2.5 END BACKUPSQL> alter tablespace tbtest end backup;Tablespace altered.SQL> select * from v$backup;FILE# STATUS CHANGE# TIME---------- ------------------ ---------- ---------1 NOT ACTIVE 987886 08-JUL-092 NOT ACTIVE 03 NOT ACTIVE 987909 08-JUL-094 NOT ACTIVE 988393 08-JUL-095 NOT ACTIVE 988425 08-JUL-096 NOT ACTIVE 988701 08-JUL-09-----已经没有文件处在备份状态了------SQL> select file#,name,checkpoint_change# from v$datafile;FILE# NAME CHECKPOINT_CHANGE#---------- ---------------------------------------- ------------------1 /opt/ora10g/oradata/testdb/system01.dbf 9890782 /opt/ora10g/oradata/testdb/undotbs01.dbf 9890783 /opt/ora10g/oradata/testdb/sysaux01.dbf 9890784 /opt/ora10g/oradata/testdb/users01.dbf 9890785 /opt/ora10g/oradata/testdb/example01.dbf 9890786 /opt/ora10g/oradata/testdb/tbtest001.dbf 989078---------CHECKPOINT_CHANGE#已经恢复一致,说明END BACKUP后,数据库会将SCN重新写入以前被冻结的文件-----------3 热备份控制文件3.1 备份控制文件到TRUCE FILE这个咱以前聊过了,所以......略。
哈哈哈哈3.2 备份控制文件到文件SQL> alter database backup controlfile to '/opt/ora10g/backup/control.bak';一条命令而已,不过这两种备份方式是有区别的。
第一种其实就是给你一个重建控制文件的机会,你是可以看到当初控制文件建立时的各项;而第二种方法备份出来的控制文件可是二进制这种形式的。
同志们可看不到里面的实际内容,就算看着你也得认识那写的是啥呀。
4 非系统表空间损坏的恢复4.1SQL> select name,status from v$datafile;NAME STATUS---------------------------------------- -------/opt/ora10g/oradata/testdb/system01.dbf SYSTEM/opt/ora10g/oradata/testdb/undotbs01.dbf ONLINE/opt/ora10g/oradata/testdb/sysaux01.dbf ONLINE/opt/ora10g/oradata/testdb/users01.dbf ONLINE/opt/ora10g/oradata/testdb/example01.dbf ONLINE/opt/ora10g/oradata/testdb/tbtest001.dbf ONLINE-------现在所有的文件都是ONLINE的------4.2 BEGIN BACKUPSQL> alter tablespace tbtest begin backup;SQL> select * from v$backup;FILE# STATUS CHANGE# TIME---------- ------------------ ---------- ---------1 NOT ACTIVE 987886 08-JUL-092 NOT ACTIVE 03 NOT ACTIVE 987909 08-JUL-094 NOT ACTIVE 988393 08-JUL-095 NOT ACTIVE 988425 08-JUL-096 ACTIVE 999084 08-JUL-094.3 操作系统命令备份文件略4.4 END BACKUPSQL> alter tablespace tbtest end backup;SQL> select * from v$backup;FILE# STATUS CHANGE# TIME---------- ------------------ ---------- ---------1 NOT ACTIVE 987886 08-JUL-092 NOT ACTIVE 03 NOT ACTIVE 987909 08-JUL-094 NOT ACTIVE 988393 08-JUL-095 NOT ACTIVE 988425 08-JUL-096 NOT ACTIVE 999084 08-JUL-094.5 修改数据SQL> insert into tbtest0012 values (2,'tbtest02');SQL> insert into tbtest0012 values (3,'tbtest03');SQL> insert into tbtest0012 values (4,'tbtest04');SQL> commit;4.6 修改数据并验证SQL> select * from tbtest001 where id>1;ID NAME---------- --------------------2 tbtest023 tbtest034 tbtest04----以上是修改前的数据----------以下是修改后的数据------SQL> update tbtest001 set name=02 where id=2;1 row updated.SQL> commit;Commit complete.SQL> update tbtest001 set name=03 where id=3;1 row updated.SQL> commit;Commit complete.SQL> update tbtest001 set name=04 where id=4;1 row updated.SQL> commit;Commit complete.SQL> select * from tbtest001 where id>1;ID NAME---------- --------------------2 23 34 44.7 破坏数据文件,并验证SQL> select * from tbtest001;select * from tbtest001*ERROR at line 1:ORA-00376: file 6 cannot be read at this timeORA-01110: data file 6: '/opt/ora10g/oradata/testdb/tbtest001.dbf' ------指定的数据文件已经无法读取------SQL> alter tablespace tbtest online;alter tablespace tbtest online*ERROR at line 1:ORA-01122: database file 6 failed verification checkORA-01110: data file 6: '/opt/ora10g/oradata/testdb/tbtest001.dbf' ORA-01251: Unknown File Header Version read for file number 6 -------尝试将数据文件ONLINE,报错-----------[oracle@oracle testdb]$ cp backup/tbtest001.dbf ./tbtest001.dbf -----恢复数据文件,再次ONLINE-----------SQL> alter tablespace tbtest onlinealter tablespace tbtest online*ERROR at line 1:ORA-01113: file 6 needs media recoveryORA-01110: data file 6: '/opt/ora10g/oradata/testdb/tbtest001.dbf'------提示需要进行介质恢复,说明该文件是数据但头部时间戳和控制文件中时间戳不一致---------SQL> select * from v$recover_fileFILE# ONLINE ONLINE_STA ERROR CHANGE# TIME----- ---------- ---------- ---------- --------- ---------6 OFFLINE OFFLINE 999084 08-JUL-09-----查看需要介质恢复的数据文件的状态-----SQL> select * from v$recovery_log;THREAD# SEQUENCE# TIME ARCHIVE_NAME------- --------- --------- ----------------------------------------1 21 08-JUL-09 /opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_21_558rv1s1_.arc1 22 08-JUL-09 /opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_22_559cq6s1_.arc1 23 08-JUL-09 /opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_23_559cr50l_.arcTHREAD# SEQUENCE# TIME ARCHIVE_NAME------- --------- --------- ----------------------------------------1 24 08-JUL-09 /opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_24_559csk5l_.arc1 25 08-JUL-09 /opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_25_559d1yq8_.arc------查看介质恢复时需要使用的REDO LOG文件-------4.8 进行介质恢复并且联机数据文件SQL> recover datafile 6;ORA-00279: change 999084 generated at 07/08/2009 15:40:08 needed for thread 1ORA-00289: suggestion :/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_21_%u_.arc ORA-00280: change 999084 for thread 1 is in sequence #21Specify log: {<RET>=suggested | filename | AUTO | CANCEL}autoORA-00279: change 1023033 generated at 07/08/2009 17:14:08 needed for thread 1 ORA-00289: suggestion :/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_22_%u_.arc ORA-00280: change 1023033 for thread 1 is in sequence #22ORA-00278: log file'/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_21_558rv1s 1_.arc' no longer needed for this recoveryORA-00279: change 1039123 generated at 07/08/2009 22:36:22 needed for thread 1 ORA-00289: suggestion :/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_23_%u_.arc ORA-00280: change 1039123 for thread 1 is in sequence #23ORA-00278: log file'/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_22_559cq6s 1_.arc' no longer needed for this recoveryORA-00279: change 1039137 generated at 07/08/2009 22:36:52 needed for thread 1 ORA-00289: suggestion :/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_24_%u_.arc ORA-00280: change 1039137 for thread 1 is in sequence #24ORA-00278: log file'/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_23_559cr50 l_.arc' no longer needed for this recoveryORA-00279: change 1039189 generated at 07/08/2009 22:37:37 needed for thread 1 ORA-00289: suggestion :/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_25_%u_.arc ORA-00280: change 1039189 for thread 1 is in sequence #25ORA-00278: log file'/opt/ora10g/flash_recovery_area/TESTDB/archivelog/2009_07_08/o1_mf_1_24_559csk5 l_.arc' no longer needed for this recoveryLog applied.Media recovery complete.------------介质恢复成功,得益于我们的归档日志文件是全的------- SQL> alter tablespace tbtest online;Tablespace altered.------联机表空间----------4.9 查看数据SQL> select * from tbtest001 where id>1;ID NAME---------- --------------------2 23 34 4-----从这里可以看到,数据丝毫没有受到影响-----。