oracle之参数文件探究(六)
件从该文件启动然后在restore,另外一种是启动到默认实例,然后进行restore spfile;
eg:
oracle@oracle:~> more pfile.ora
db_name=ORCL
oracle@oracle:~> rman target /
恢复管理器: Release 11.1.0.6.0 - Production on 星期六 6月 15 17:42:19 2013
Copyright (c) 1982, 2007, Oracle. All rights reserved.
已连接到目标数据库 (未启动)
RMAN> startup nomount pfile='/opt/oracle/pfile.ora'
Oracle 实例已启动
系统全局区域总计 217157632 字节
Fixed Size 2142976 字节
Variable Size 159386880 字节
Database Buffers 50331648 字节
Redo Buffers 5296128 字节
RMAN> restore spfile from autobackup;
启动 restore 于 15-6月 -13
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=98 设备类型=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore 命令 (在 06/15/2013 17:42:59 上) 失败
RMAN-06495: 必须用 SET DBID 命令明确指定 DBID
RMAN> set dbid=1307032085
正在执行命令: SET DBID
RMAN> restore spfile from autobackup;
启动 restore 于 15-6月 -13
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130615
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130614
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130613
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130612
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130611
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130610
通道 ORA_DISK_1: 寻找以下日期的 AUTOBACKUP: 20130609
通道 ORA_DISK_1: 没有找到 7 天之内的 AUTOBACKUP
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: restore 命令 (在 06/15/2013 17:43:29 上) 失败
RMAN-06172: 没有找到 AUTOBACKUP, 或者指定的句柄不是有效副本或片段
RMAN>
RMAN> restore spfile from '/opt/oracle/flash_recovery_area/ORCL/controlfile/c_c-1307032085-20130615-01';
启动 restore 于 15-6月 -13
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在从 AUTOBACKUP /opt/oracle/flash_recovery_area/ORCL/controlfile/c_c-1307032085-20130615-01 还原 spfile
通道 ORA_DISK_1: 从 AUTOBACKUP 还原 SPFILE 已完成
完成 restore 于 15-6月 -13
RMAN>
修复完成。
总结:dbid可以从很多地方获得,如之前rman配置了控制文件自动备份,那么在控制文件名就可以获得,另外开可以dump数据文件进行获得,还可以从v$database中获得。在恢复中如果找不到有效备份集可以手动指定。
当我们修改了参数文件,然后重新启动数据库发现启动不了,那么我们可以手动把spfile转成pfile文件然后在采用覆盖的方式进行启动,如:在pfile中有a=b,然后我们在下边在写入a=c,那么启动的时候后边设置的参数会自动覆盖前面设置的参数。 另外,如果在数据库还没有关闭情况下,version为11g那么可以从member中重建spfile ,the command is:create spfile from member;。
Over!
++++++++++++++++++++++++++++++++++++++++++ (^ω^) +++++++++小海。