RMAN备份与恢复—将数据文件或表空间还原到新位置
来源:互联网 发布:淘宝披肩外套 编辑:程序博客网 时间:2024/05/01 03:00
1、将数据文件还原到新位置。当磁盘发生故障时,才会把数据未见恢复到其他位置。
首先删除数据文件,模拟磁盘故障,丢失数据文件。
[sql] view plaincopyprint?
- SQL> conn /as sysdba
- 已连接。
- SQL> ! rm -rf /u01/app/oracle/oradata/orcl/tb1.dbf
- SQL> conn u1/u1
- 已连接。
- SQL> select * from t;
- select * from t
- *
- 第 1 行出现错误:
- ORA-01116: 打开数据库文件 5 时出错
- ORA-01110: 数据文件 5: '/u01/app/oracle/oradata/orcl/tb1.dbf'
- ORA-27041: 无法打开文件
- Linux Error: 2: No such file or directory
- Additional information: 3
然后恢复
[sql] view plaincopyprint?
- RMAN> run {
- 2> sql "alter database datafile 5 offline";
- 3> set newname for datafile 5 to '/u01/app/oracle/datafile/tb1.dbf';
- 4> restore datafile 5;
- 5> switch datafile 5;
- 6> recover datafile 5;
- 7> sql "alter database datafile 5 online"; }
- sql 语句: alter database datafile 5 offline
- 正在执行命令: SET NEWNAME
- 启动 restore 于 12-10月-11
- 分配的通道: ORA_DISK_1
- 通道 ORA_DISK_1: sid=142 devtype=DISK
- 通道 ORA_DISK_1: 正在开始恢复数据文件备份集
- 通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
- 正将数据文件00005还原到/u01/app/oracle/datafile/tb1.dbf
- 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_nnndf_TAG20111012T144251_79bfqccl_.bkp
- 通道 ORA_DISK_1: 已还原备份片段 1
- 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_nnndf_TAG20111012T144251_79bfqccl_.bkp 标记 = TAG20111012T144251
- 通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
- 完成 restore 于 12-10月-11
- 数据文件 5 已转换成数据文件副本
- 输入数据文件副本 recid=7 stamp=764352437 文件名=/u01/app/oracle/datafile/tb1.dbf
- 启动 recover 于 12-10月-11
- 使用通道 ORA_DISK_1
- 正在开始介质的恢复
- 通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复
- 通道 ORA_DISK_1: 正在恢复存档日志
- 存档日志线程 =1 序列=10
- 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_annnn_TAG20111012T144328_79bfrkcf_.bkp
- 通道 ORA_DISK_1: 已还原备份片段 1
- 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_annnn_TAG20111012T144328_79bfrkcf_.bkp 标记 = TAG20111012T144328
- 通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
- 存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_12/o1_mf_1_10_79bloq8c_.arc 线程 =1 序列 =10
- 通道 default: 正在删除存档日志
- 存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_12/o1_mf_1_10_79bloq8c_.arc 记录 ID=11 时间戳 =764352439
- 介质恢复完成, 用时: 00:00:01
- 完成 recover 于 12-10月-11
- sql 语句: alter database datafile 5 online
检查恢复结果
[sql] view plaincopyprint?
- SQL> conn u1/u1
- 已连接。
- SQL> select * from t;
- ID VALUE
- ---------- ------------------------------
- 1 a
- SQL> conn /as sysdba
- 已连接。
- SQL> select file_name from dba_data_files;
- FILE_NAME
- --------------------------------------------------
- /u01/app/oracle/oradata/orcl/users01.dbf
- /u01/app/oracle/oradata/orcl/sysaux01.dbf
- /u01/app/oracle/oradata/orcl/undotbs01.dbf
- /u01/app/oracle/oradata/orcl/system01.dbf
- /u01/app/oracle/datafile/tb1.dbf
2、将表空间还原到新位置。
首先删除数据文件,模拟磁盘故障,丢失数据文件。(这次我打算将数据文件恢复到原地方。)
[sql] view plaincopyprint?
- SQL> ! rm -rf /u01/app/oracle/datafile/tb1.dbf
- SQL> conn u1/u1
- 已连接。
- SQL> insert into t values(2,'b');
- insert into t values(2,'b')
- *
- 第 1 行出现错误:
- ORA-01116: 打开数据库文件 5 时出错
- ORA-01110: 数据文件 5: '/u01/app/oracle/datafile/tb1.dbf'
- ORA-27041: 无法打开文件
- Linux Error: 2: No such file or directory
- Additional information: 3
恢复
- RMAN> run {
- 2> sql "alter tablespace tb1 offline immediate";
- 3> set newname for datafile '/u01/app/oracle/datafile/tb1.dbf' to '/u01/app/oracle/oradata/orcl/tb1.dbf';
- 4> restore tablespace tb1;
- 5> switch datafile all;
- 6> recover tablespace tb1;
- 7> sql "alter tablespace tb1 online"; }
- sql 语句: alter tablespace tb1 offline immediate
- 正在执行命令: SET NEWNAME
- 启动 restore 于 12-10月-11
- 使用通道 ORA_DISK_1
- 通道 ORA_DISK_1: 正在开始恢复数据文件备份集
- 通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
- 正将数据文件00005还原到/u01/app/oracle/oradata/orcl/tb1.dbf
- 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_nnndf_TAG20111012T144251_79bfqccl_.bkp
- 通道 ORA_DISK_1: 已还原备份片段 1
- 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_nnndf_TAG20111012T144251_79bfqccl_.bkp 标记 = TAG20111012T144251
- 通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
- 完成 restore 于 12-10月-11
- 数据文件 5 已转换成数据文件副本
- 输入数据文件副本 recid=9 stamp=764352980 文件名=/u01/app/oracle/oradata/orcl/tb1.dbf
- 启动 recover 于 12-10月-11
- 使用通道 ORA_DISK_1
- 正在开始介质的恢复
- 通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复
- 通道 ORA_DISK_1: 正在恢复存档日志
- 存档日志线程 =1 序列=10
- 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_annnn_TAG20111012T144328_79bfrkcf_.bkp
- 通道 ORA_DISK_1: 已还原备份片段 1
- 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_annnn_TAG20111012T144328_79bfrkcf_.bkp 标记 = TAG20111012T144328
- 通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
- 存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_12/o1_mf_1_10_79bm6o60_.arc 线程 =1 序列 =10
- 通道 default: 正在删除存档日志
- 存档日志文件名 =/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_10_12/o1_mf_1_10_79bm6o60_.arc 记录 ID=12 时间戳 =764352981
- 介质恢复完成, 用时: 00:00:03
- 完成 recover 于 12-10月-11
- sql 语句: alter tablespace tb1 online
验证恢复结果
- SQL> conn u1/u1
- 已连接。
- SQL> insert into t values(2,'b');
- 已创建 1 行。
- SQL> commit;
- 提交完成。
- SQL> select * from t;
- ID VALUE
- ---------- ------------------------------
- 1 a
- 2 b
0 0
- RMAN备份与恢复—将数据文件或表空间还原到新位置
- RMAN备份与恢复(5)——将数据文件或表空间还原到新位置!
- Rman恢复将数据文件恢复到新位置
- RMAN备份与恢复(2)——恢复有备份的表空间和数据文件!
- RMAN备份与恢复—恢复有备份的表空间和数据文件
- RMAN备份与恢复(2)恢复有备份的表空间和数据文件
- 备份与恢复系列 九 丢失表空间数据文件的还原与恢复
- RMAN备份与恢复—恢复无备份的数据文件
- ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件
- rman恢复-数据文件与表空间的恢复
- rman恢复-数据文件与表空间的恢复
- 核心数据文件备份与恢复(system表空间数据文件)
- RMAN备份与恢复(4)——恢复无备份的数据文件!
- 手工完全恢复(将数据文件恢复到新的位置)
- RMAN的备份与恢复(5)-数据文件的恢复
- RMAN的备份与恢复-数据文件的恢复
- rman备份恢复表空间&用户管理的表空间备份与恢复
- RMAN备份与恢复之UNDO表空间丢失
- linux 卸载文件
- 最小生成树计数模版
- web如何执行window下的exe文件
- 无废话WCF入门教程五[WCF的通信模式]
- <!DOCTYPE> 标签的含义以及是否可以省略
- RMAN备份与恢复—将数据文件或表空间还原到新位置
- iOS 本地通知
- 配置ETags(下)
- Vector Quantization (VQ) 向量量子化是什么?
- SAP ABAP编程 OTF转换成PDF
- afinal.FinalBitmap错误
- Android 分享一个简单有趣的动画效果
- objective-c-风格规范篇
- at org.jivesoftware.smackx.muc.MultiUserChat.create(MultiUserChat.java:353)