首页 > 代码库 > RMAN数据库恢复之恢复表空间和数据文件
RMAN数据库恢复之恢复表空间和数据文件
执行表空间或数据文件恢复时,数据库既可以是MOUNT状态,也可以是OPEN状态。
1、恢复表空间
在执行恢复之前,如果被操作的表空间未处理OFFLINE状态,必须首先通过ALTER TABLESPACE…OFFLINE语句将其置为脱机。然后再RESTORE-->RECOVER--->ONLINE即可。
RMAN> SQL ‘ALTER TABLESPACE USERS OFFLINE IMMEDIATE‘;在恢复目录中注册的数据库的新原型正在启动全部恢复目录的 resync完成全部 resyncsql 语句: ALTER TABLESPACE USERS OFFLINE IMMEDIATERMAN> RESTORE TABLESPACE USERS;启动 restore 于 21-12月-14分配的通道: ORA_DISK_1通道 ORA_DISK_1: SID=172 设备类型=DISK创建数据文件, 文件号 = 7 名称 = D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS02.DBF通道 ORA_DISK_1: 正在开始还原数据文件备份集通道 ORA_DISK_1: 正在指定从备份集还原的数据文件通道 ORA_DISK_1: 将数据文件 00004 还原到 D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF通道 ORA_DISK_1: 正在读取备份片段 D:\RMAN_BAK\FUL_BAK_20141221通道 ORA_DISK_1: 段句柄 = D:\RMAN_BAK\FUL_BAK_20141221 标记 = TAG20141221T134059通道 ORA_DISK_1: 已还原备份片段 1通道 ORA_DISK_1: 还原完成, 用时: 00:00:04完成 restore 于 21-12月-14RMAN> RECOVER TABLESPACE USERS;启动 recover 于 21-12月-14使用通道 ORA_DISK_1正在开始介质的恢复线程 1 序列 22 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 存在于磁盘上线程 1 序列 23 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 存在于磁盘上线程 1 序列 24 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 存在于磁盘上线程 1 序列 25 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 存在于磁盘上归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 线程=1 序列=22归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 线程=1 序列=23归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 线程=1 序列=24归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 线程=1 序列=25介质恢复完成, 用时: 00:00:04完成 recover 于 21-12月-14RMAN> SQL ‘ALTER TABLESPACE USERS ONLINE‘;sql 语句: ALTER TABLESPACE USERS ONLINE
2、恢复数据文件
恢复表空间其实就是恢复其所对应的数据文件。一个表空间可能对应多个数据文件。因此恢复文件操作与恢复表空间类似。
将数据文件置为OFFLINE,再RESTORE,再RECOVER,然后ONLINE即可。
SQL> SELECT FILE#,STATUS,NAME FROM V$DATAFILE;FILE# STATUS NAME---------- ------- ------------------------------------------------1 SYSTEM D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF2 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF3 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF4 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF5 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF6 ONLINE D:\RMAN_CATALOG\RMANTBS01.DBF7 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS02.DBF7 rows selected=============================oracle数据库告警日志文件路径:D:\app\Administrator\diag\rdbms\orcl\orcl\trace=========================恢复数据文件D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF。RMAN> SQL ‘ALTER DATABASE DATAFILE 4 OFFLINE‘;sql 语句: ALTER DATABASE DATAFILE 4 OFFLINERMAN> RESTORE DATAFILE 4;启动 restore 于 22-12月-14使用通道 ORA_DISK_1通道 ORA_DISK_1: 正在开始还原数据文件备份集通道 ORA_DISK_1: 正在指定从备份集还原的数据文件通道 ORA_DISK_1: 将数据文件 00004 还原到 D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF通道 ORA_DISK_1: 正在读取备份片段 D:\RMAN_BAK\FUL_BAK_20141221通道 ORA_DISK_1: 段句柄 = D:\RMAN_BAK\FUL_BAK_20141221 标记 = TAG20141221T134059通道 ORA_DISK_1: 已还原备份片段 1通道 ORA_DISK_1: 还原完成, 用时: 00:00:02完成 restore 于 22-12月-14RMAN> RECOVER DATAFILE 4;启动 recover 于 22-12月-14使用通道 ORA_DISK_1正在开始介质的恢复线程 1 序列 22 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 存在于磁盘上线程 1 序列 23 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 存在于磁盘上线程 1 序列 24 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 存在于磁盘上线程 1 序列 25 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 存在于磁盘上线程 1 序列 1 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_1_B9FWSYH4_.ARC 存在于磁盘上线程 1 序列 2 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_2_B9FXKQ7X_.ARC 存在于磁盘上线程 1 序列 3 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_3_B9FXPFMP_.ARC 存在于磁盘上线程 1 序列 4 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_4_B9JDBDJ6_.ARC 存在于磁盘上线程 1 序列 5 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_5_B9JDBC8L_.ARC 存在于磁盘上线程 1 序列 6 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_6_B9JDBCNC_.ARC 存在于磁盘上线程 1 序列 7 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_7_B9JDBD18_.ARC 存在于磁盘上归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 线程=1 序列=22归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 线程=1 序列=23归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 线程=1 序列=24归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 线程=1 序列=25归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_1_B9FWSYH4_.ARC 线程=1 序列=1归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_2_B9FXKQ7X_.ARC 线程=1 序列=2归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_3_B9FXPFMP_.ARC 线程=1 序列=3归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_4_B9JDBDJ6_.ARC 线程=1 序列=4归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_5_B9JDBC8L_.ARC 线程=1 序列=5归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_6_B9JDBCNC_.ARC 线程=1 序列=6归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_7_B9JDBD18_.ARC 线程=1 序列=7介质恢复完成, 用时: 00:00:05完成 recover 于 22-12月-14RMAN> SQL ‘ALTER DATABASE DATAFILE 4 ONLINE‘;sql 语句: ALTER DATABASE DATAFILE 4 ONLINE
=============================
说明:执行RESTORE/RECOVER操作指定数据文件时,既可以直接指定数据文件的详细路径,也可以以数据文件序号代替。
如果由于磁盘损坏导致数据文件无法访问,恢复时可能需要恢复到其它路径,此时必须给数据文件指定新的路径:
RMAN> RUN{SET NEWNAME FOR DATAFILE 4 TO ‘E:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF‘;RESTORE DATAFILE 4;SWITCH DATAFILE 4;RECOVER DATAFILE 4;}
RMAN数据库恢复之恢复表空间和数据文件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。