数据库

img lunar2000

RMAN恢复案例——丢失spfile的恢复

发表于2004/10/8 13:36:00  2674人阅读

分类: oracle

1.1. 丢失spfile的恢复

大前提:已经配置了数据库控制文件的自动备份,并且已经有可靠的备份:

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP on;

 

新的 RMAN 配置参数:

CONFIGURE CONTROLFILE AUTOBACKUP ON;

已成功存储新的 RMAN 配置参数

正在启动全部恢复目录的 resync

完成全部 resync

 

RMAN>

 

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'D:/RMANTEST/%F';

 

新的 RMAN 配置参数:

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'D:/RMANTEST/%F';

已成功存储新的 RMAN 配置参数

正在启动全部恢复目录的 resync

完成全部 resync

 

RMAN>

 

RMAN> show all;

 

RMAN 配置参数为:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK;

CONFIGURE CONTROLFILE AUTOBACKUP ON;

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'D:/RMANTEST/%F';

CONFIGURE DEVICE TYPE DISK 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 SNAPSHOT CONTROLFILE NAME TO 'D:/ORACLE92/DATABASE/SNCFTEST1.ORA'; # default

 

RMAN>

 

RMAN> run{

2> backup database

3> tag 'full_db_20041007'

4> format 'd:/rmantest/full_dbtest_yyyymmdd%_u%.bak'

5> include current controlfile;

6> backup archivelog all

7> tag 'arch_bak'

8> format 'd:/rmantest/arch_yyyymmdd%_u%.bak'

9> delete input;}

 

启动 backup 07-10-04

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=13 devtype=DISK

通道 ORA_DISK_1: 正在启动 full 数据文件备份集

通道 ORA_DISK_1: 正在指定备份集中的数据文件

备份集中包括当前控制文件

输入数据文件 fno=00001 name=D:/ORACLE92/TEST1/SYSTEM01.DBF

输入数据文件 fno=00002 name=D:/ORACLE92/TEST1/UNDOTBS01.DBF

输入数据文件 fno=00006 name=D:/ORACLE92/TEST1/RMAN01.DBF

输入数据文件 fno=00003 name=D:/ORACLE92/TEST1/INDX01.DBF

输入数据文件 fno=00005 name=D:/ORACLE92/TEST1/USERS01.DBF

输入数据文件 fno=00004 name=D:/ORACLE92/TEST1/TOOLS01.DBF

通道 ORA_DISK_1: 正在启动段 1 07-10-04

通道 ORA_DISK_1: 已完成段 1 07-10-04

handle=D:/RMANTEST/FULL_DBTEST_YYYYMMDD%_U%.BAK comment=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:06

完成 backup 07-10-04

 

启动 backup 07-10-04

当前日志已存档

使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在启动存档日志备份集

通道 ORA_DISK_1: 正在指定备份集中的存档日志

输入存档日志线程 =1 序列 =15 记录 ID=20 时间戳=538928248

通道 ORA_DISK_1: 正在启动段 1 07-10-04

通道 ORA_DISK_1: 已完成段 1 07-10-04

handle=D:/RMANTEST/ARCH_YYYYMMDD%_U%.BAK comment=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02

通道 ORA_DISK_1: 正在删除存档日志

存档日志文件名 =D:/ORACLE92/ADMIN/TEST1/ARCH/ARC00015.001 记录 ID=20 时间戳 =538928248

完成 backup 07-10-04

 

启动 Control File and SPFILE Autobackup 07-10-04

handle=D:/RMANTEST/C-910599446-20041007-00 comment=NONE

完成 Control File and SPFILE Autobackup 07-10-04

 

RMAN>

 

 

 

 

1.1.1.    将当前spfile挪到其他位置来模拟spfile丢失

RMAN> host;

 

Microsoft Windows XP [版本 5.1.2600]

(C) 版权所有 1985-2001 Microsoft Corp.

 

C:/>move D:/oracle92/database/SPFILETEST1.ORA D:/oracle92/database/bak/SPFILETEST1.ORA

 

C:/>dir D:/oracle92/database/SPFILETEST1.ORA

 驱动器 D 中的卷没有标签。

 卷的序列号是 644D-03D9

 

 D:/oracle92/database 的目录

 

找不到文件

 

C:/>dir D:/oracle92/database/bak/SPFILETEST1.ORA

 驱动器 D 中的卷没有标签。

 卷的序列号是 644D-03D9

 

 D:/oracle92/database/bak 的目录

 

2004-10-04  14:06             2,560 SPFILETEST1.ORA

               1 个文件          2,560 字节

               0 个目录 10,708,807,680 可用字节

 

C:/>exit

主机命令完成

 

RMAN>

 

1.1.2.    设置ORACLE_SID

C:/>set ORACLE_SID=TEST1

 

C:/>ECHO ORACLE_SID

ORACLE_SID

 

C:/>

 

1.1.3.    登陆RMAN

C:/>rman

 

恢复管理器: 版本9.2.0.1.0 - Production

 

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

 

RMAN> connect target lunar/lunar@test1

 

已连接到目标数据库 (未启动)

 

RMAN> connect catalog rman/rman@rman

 

连接到恢复目录数据库

 

RMAN>

 

1.1.4.    RMAN中设置DBID

使RMAN知道需要查找哪一个数据库的spfile

(必须在数据关闭的情况下设置DBID

RMAN> set DBID=910599446

 

正在执行命令: SET DBID

 

RMAN>

 

1.1.5.    将数据库启动到nomount状态

RMAN> startup nomount;

 

启动失败: ORA-01078: failure in processing system parameters

LRM-00109: N^7(4r?*2NJ}ND<~ 'D:/ORACLE92/DATABASE/INITTEST1.ORA'

 

正在尝试在没有参数文件的情况下启动 Oracle 例程...

Oracle 例程已启动

 

系统全局区域总计      97589952 字节

 

Fixed Size                      453312 字节

Variable Size                 46137344 字节

Database Buffers              50331648 字节

Redo Buffers                    667648 字节

 

RMAN>

 

1.1.6.    从自动备份中还原参数文件

RMAN> show all;

 

RMAN 配置参数为:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK;

CONFIGURE CONTROLFILE AUTOBACKUP ON;

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'D:/RMANTEST/%F';

CONFIGURE DEVICE TYPE DISK 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

 

RMAN> restore spfile from autobackup;

 

启动 restore 07-10-04

 

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=9 devtype=DISK

通道 ORA_DISK_1: 寻找以下日期的自动备份: 20041007

通道 ORA_DISK_1: 已找到的自动备份: D:/RMANTEST/c-910599446-20041007-00

通道 ORA_DISK_1: 从自动备份复原 SPFILE 已完成

完成 restore 07-10-04

 

RMAN> host;

 

 

恢复管理器完成。

 

C:/>dir D:/oracle92/database/SPFILETEST1.ORA

 驱动器 D 中的卷没有标签。

 卷的序列号是 644D-03D9

 

 D:/oracle92/database 的目录

 

2004-10-07  14:31             2,560 SPFILETEST1.ORA

               1 个文件          2,560 字节

               0 个目录 10,528,374,784 可用字节

 

C:/> exit

 

恢复管理器: 版本9.2.0.1.0 - Production

 

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

 

连接到目标数据库: TEST1(未安装)

连接到恢复目录数据库

 

RMAN>

 

1.1.7.    Shutdown immediate关闭数据库

RMAN> shutdown immediate;

 

Oracle 例程已关闭

 

RMAN>

 

1.1.8.    重新启动数据库

RMAN> set DBID=910599446

 

正在执行命令: SET DBID

 

RMAN> startup

 

已连接到目标数据库 (未启动)

Oracle 例程已启动

数据库已加载

数据库已打开

 

系统全局区域总计     101784276 字节

 

Fixed Size                      453332 字节

Variable Size                 75497472 字节

Database Buffers              25165824 字节

Redo Buffers                    667648 字节

 

RMAN>

阅读全文
0 0

相关文章推荐

img
取 消
img