Oracle RMAN物理备份技术之恢复案例三
2008-12-16 13:04:26 来源:WEB开发网恢复案例三:恢复控制文件
全部控制文件丢失,需要从备份的控制文件恢复。恢复了控制文件后必须要进行RECOVER恢复然后用RESETLOGS参数打开数据库,我们也可以把控制文件恢复到其他位置(不是在参数文件中给出的控制文件位置)。本例假定没有使用恢复目录,我们将在以后介绍带有恢复目的RMAN备份如何恢复控制文件。如果没有恢复目录,用RMAN只能在NOMOUNT状态从备份中进行控制文件的恢复。
从自动备份控制文件恢复:
RMAN> configure controlfile autobackup on;
旧的 RMAN 配置参数:
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
新的 RMAN 配置参数:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
已成功存储新的 RMAN 配置参数:
RMAN> show all;
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET PARALLELISM 1;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:ORACLEPRODUCT10.2.0DB_1DATABASE
SNCFROME.ORA'; # default
RMAN> backup database;
启动 backup 于 24-1月 -07
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=143 devtype=DISK
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00002 name=F:ORACLEORADATAROMEUNDOTBS01.DBF
输入数据文件 fno=00001 name=D:ORACLEPRODUCT10.2.0ORADATAROMESYSTEM01.DBF
输入数据文件 fno=00003 name=D:ORACLEPRODUCT10.2.0ORADATAROMESYSAUX01.DBF
输入数据文件 fno=00004 name=D:ORACLEPRODUCT10.2.0ORADATAROMEUSERS01.DBF
输入数据文件 fno=00005 name=E:ORACLEORADATAROMETEST.DBF
通道 ORA_DISK_1: 正在启动段 1 于 24-1月 -07
通道 ORA_DISK_1: 已完成段 1 于 24-1月 -07
段句柄=D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAROMEBACKUPSET2007_01_24
O1_MF_NNNDF_TAG20070124T091006_2VFDHGYR_.BKP 标记=TAG20070124T091006 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:25
完成 backup 于 24-1月 -07
启动 Control File and SPFILE Autobackup 于 24-1月 -07段
handle=D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAROMEAUTOBACKUP2007_
01_24O1_MF_S_612695432_2VFDJ95V_.BKP comment=NONE
完成 Control File and SPFILE Autobackup 于 24-1月 -07
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
删除所有的控制文件。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size 1288340 bytes
Variable Size 104859500 bytes
Database Buffers 54525952 bytes
Redo Buffers 7098368 bytes
ORA-00205: ?????????, ??????, ???????
SQL> shutdown immediate
ORA-01507: ??????
ORACLE 例程已经关闭。
SQL> startup nomount
ORACLE 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size 1288340 bytes
Variable Size 104859500 bytes
Database Buffers 54525952 bytes
Redo Buffers 7098368 bytes
RMAN> SET DBID 252956976;
正在执行命令: SET DBID
RMAN> restore controlfile from autobackup;
启动 restore 于 24-1月 -07
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=155 devtype=DISK
恢复区域目标: d:oracleproduct10.2.0flash_recovery_area
用于搜索的数据库名 (或数据库的唯一名称): ROME
通道 ORA_DISK_1: 在恢复区域中找到自动备份
通道 ORA_DISK_1: 已找到的自动备份:
D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREA
ROMEAUTOBACKUP2007_01_24O1_MF_S_612695432_2VFDJ95V_.BKP
通道 ORA_DISK_1: 从自动备份复原控制文件已完成
输出文件名=D:ORACLEPRODUCT10.2.0ORADATAROMECONTROL01.CTL
输出文件名=F:ORACLEORADATAROMECONTROL02.CTL
输出文件名=E:ORACLEORADATAROMECONTROL03.CTL
完成 restore 于 24-1月 -07
RMAN> sql 'alter database mount';
sql 语句: alter database mount
释放的通道: ORA_DISK_1
RMAN> recover database;
启动 recover 于 24-1月 -07
启动 implicit crosscheck backup 于 24-1月 -07
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=155 devtype=DISK
已交叉检验的 21 对象
完成 implicit crosscheck backup 于 24-1月 -07
启动 implicit crosscheck copy 于 24-1月 -07
使用通道 ORA_DISK_1
已交叉检验的 1 对象
完成 implicit crosscheck copy 于 24-1月 -07
搜索恢复区域中的所有文件
正在编制文件目录...
目录编制完毕
已列入目录的文件的列表
=======================
文件名: D:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAROMEAUTOBACKUP2007_01_
24O1_MF_S_612714183_2VFYT8Y8_.BKP
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 1 已作为文件 D:ORACLEPRODUCT10.2.0ORADATAROMEREDO02A.L
OG 存在于磁盘上
存档日志文件名 =D:ORACLEPRODUCT10.2.0ORADATAROMEREDO02A.LOG 线程 =1 序列 =
1
介质恢复完成, 用时: 00:00:03
完成 recover 于 24-1月 -07
RMAN> sql 'alter database open resetlogs';
sql 语句: alter database open resetlogs
- ››oracle 恢复误删除的表和误更新的表
- ››Oracle分页查询排序数据重复问题
- ››Oracle创建dblink报错:ORA-01017、ORA-02063解决
- ››Oracle 提高SQL执行效率的方法
- ››Oracle 动态查询,EXECUTE IMMEDIATE select into...
- ››Oracle 11g必须开启的服务及服务详细介绍
- ››oracle性能34条优化技巧
- ››oracle数据库生成随机数的函数
- ››Oracle 数据库表空间容量调整脚本
- ››oracle单库彻底删除干净的方法
- ››Oracle创建表空间、创建用户以及授权、查看权限
- ››oracle 中 UPDATE nowait 的使用方法
更多精彩
赞助商链接