RMAN数据库恢复之控制文件和参数文件恢复

摘要:
选择*FROMV$CONTROLFILE;APPADMINISTRATORFLASH_ RECOVERY_ AREAORCLCONTROL02.CTLNO163845942,删除控制文件SQL>3.将数据库启动到NOMOUNT状态RMAN>

一、控制文件的恢复
1、查询控制文件的路径

SQL> SELECT * FROM V$CONTROLFILE;
STATUS NAME IS_RECOVERY_DEST_FILE BLOCK_SIZE FILE_SIZE_BLKS
------- -------------------------------------------------------------- --------------------- ---------- --------------
D:APPADMINISTRATORORADATAORCLCONTROL01.CTL NO 16384 594
D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLCONTROL02.CTL NO 16384 594

2、删除控制文件

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> host del D:APPADMINISTRATORORADATAORCLCONTROL01.CTL

SQL> startup
ORACLE 例程已经启动。

Total System Global Area 647204864 bytes
Fixed Size 2178536 bytes
Variable Size 478151192 bytes
Database Buffers 159383552 bytes
Redo Buffers 7491584 bytes
ORA-00205: ……

SQL> shutdown immediate;
ORA-01507: 
ORACLE 例程已经关闭。

3、启动数据库到NOMOUNT状态

RMAN> SET DBID=1392118573;
RMAN> startup nomount;
ORACLE 例程已经启动。

Total System Global Area 647204864 bytes
Fixed Size 2178536 bytes
Variable Size 478151192 bytes
Database Buffers 159383552 bytes
Redo Buffers 7491584 bytes

4、RESTORE控制文件

RMAN> RESTORE CONTROLFILE FROM AUTOBACKUP; --控制文件会被恢复到初始化参数:CONTROL_FILES指定的路径下。

启动 restore21-12月-14
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=10 设备类型=DISK

恢复区目标: D:appAdministratorflash_recovery_area
用于搜索的数据库名 (或数据库的唯一名称): ORCL
通道 ORA_DISK_1: 在恢复区中找到 AUTOBACKUP D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLAUTOBACKUP2014_12_21O1_MF_S_866919295_B9F9R0BL_.BKP
由于未设置 DBID 而未尝试使用格式 "%F" 搜索 AUTOBACKUP
通道 ORA_DISK_1: 正在从 AUTOBACKUP D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLAUTOBACKUP2014_12_21O1_MF_S_866919295_B9F9R0BL_.BKP 还原控制文件
通道 ORA_DISK_1: 从 AUTOBACKUP 还原控制文件已完成
输出文件名=D:APPADMINISTRATORORADATAORCLCONTROL01.CTL
输出文件名=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLCONTROL02.CTL
完成 restore21-12月-14

5、MOUNT-RECOVER-OPEN数据库

RMAN> ALTER DATABASE MOUNT;

数据库已装载
释放的通道: ORA_DISK_1

RMAN> RECOVER DATABASE;

启动 recover 于 21-12月-14
启动 implicit crosscheck backup21-12月-14
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=10 设备类型=DISK
已交叉检验的 7 对象
完成 implicit crosscheck backup21-12月-14

启动 implicit crosscheck copy 于 21-12月-14
使用通道 ORA_DISK_1
完成 implicit crosscheck copy 于 21-12月-14

搜索恢复区中的所有文件
正在编制文件目录...
目录编制完毕

已列入目录的文件的列表
=======================
文件名: D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLAUTOBACKUP2014_12_21O1_MF_S_866919295_B9F9R0BL_.BKP

使用通道 ORA_DISK_1

正在开始介质的恢复

线程 1 序列 22 的归档日志已作为文件 D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2014_12_21O1_MF_1_22_B9DR7DS3_.ARC 存
线程 1 序列 23 的归档日志已作为文件 D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2014_12_21O1_MF_1_23_B9DZJWGJ_.ARC 存
线程 1 序列 24 的归档日志已作为文件 D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2014_12_21O1_MF_1_24_B9F6WMP8_.ARC 存
线程 1 序列 25 的归档日志已作为文件 D:APPADMINISTRATORORADATAORCLREDO03.LOG 存在于磁盘上
归档日志文件名=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2014_12_21O1_MF_1_22_B9DR7DS3_.ARC 线程=1 序列=22
归档日志文件名=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2014_12_21O1_MF_1_23_B9DZJWGJ_.ARC 线程=1 序列=23
归档日志文件名=D:APPADMINISTRATORFLASH_RECOVERY_AREAORCLARCHIVELOG2014_12_21O1_MF_1_24_B9F6WMP8_.ARC 线程=1 序列=24
归档日志文件名=D:APPADMINISTRATORORADATAORCLREDO03.LOG 线程=1 序列=25
介质恢复完成, 用时: 00:00:04
完成 recover 于 21-12月-14

RMAN> ALTER DATABASE OPEN RESETLOGS;
数据库已打开

----------------------------------------------------------------
说明:
1、由于控制文件丢失,只能启动数据库到NOMOUNT状态。不过在启动数据库之前,必须首先通过SET设定DBID。关于DBID的查询可通过V$DATABASE视图查询;或者是RMAN的备份日志;自动备份的文件名中包含有DBID;RMAN连接到目标数据库时也会显示DBID。
2、如果是在NOCATALOG模式下,RMAN创建的备份信息都将保存在目标数据库的控制文件中,所以一旦控制文件丢失,不仅目标数据库崩溃,连RMAN的备份信息也全丢失。如果有备份的控制文件,还可进行恢复,没有的话,只能通过写脚本的方式重写控制文件。
3、由于是通过备份的控制文件恢复,因此打开时必须指定RESETLOGS;
4、如果在执行备份之前修,修改过自动备份的默认路径,那么在执行RESTORE CONTROLFILE FROM AUTOBACKUP会提示找不到备份文件。此时需要重新设置一下自动备份路径,或者手动复制自动备份的控制文件到当前的默认的路径下。
在NOCATALOG模式下修改控制文件自动备份的保存路径时,使用SET命令:
RMAN> SET AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '之前修改过的路径';
然后执行RESTORE命令,从自动备份中恢复控制文件即可。
RMAN> RESTORE CONTROLFILE FROM AUTOBACKUP;
5、从指定备份集中恢复控制文件
RMAN> RESTORE CONTROLFILE FROM '备份集路径'; --也可以加上TO参数,将控制文件恢复到指定路径下。

二、恢复服务器端初始化参数文件SPFILE
可能过BACKUP SPFILE命令手动备份初始化参数文件。不过一般RMAN在备份控制文件时,会自动备份SPFILE;
恢复参数文件与恢复控制文件相似:
执行恢复参数文件命令:
RESTORE SPFILE FROM AUTOBACKUP;
SPFILE文件的修改:
由于SPFILE文件是二进制文件,无法直接编辑,如果要修改,可先通过SPFILE创建PFILE(客户端初始化参数文件),PFILE可直接用记事本打开编辑。再通过PFILE创建SPFILE即可。

SQL> SHOW PARAMETER SPFILE;
NAME TYPE VALUE
------- ----------- ------------------------------
spfile string D:APPADMINISTRATORPRODUCT11.2.0DBHOME_1DATABASESPFILEORCL.ORA

SQL> create pfile = 'D:APPADMINISTRATORPRODUCT11.2.0DBHOME_1DATABASEPFILEORCL.ORA' from spfile;--后也可加上绝对路径。from spfile='……';

文件已创建。

SQL> create spfile from pfile= 'D:APPADMINISTRATORPRODUCT11.2.0DBHOME_1DATABASEPFILEORCL.ORA'; --从PFILE文件创建SPFILE文件。

免责声明:文章转载自《RMAN数据库恢复之控制文件和参数文件恢复》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇基于Qt的A*算法可视化分析SAP HANA 创建属性视图下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

HadoopDB:混合分布式系统

HadoopDB 是一个 Mapreduce 和传统关系型数据库的结合方案,以充分利用 RDBMS 的性能和 Hadoop 的容错、分布特性。2009 年被 Yale 大学教授 Abadi 提出,继而商业化为 Hadapt,据称从 VC 那儿拉到了 10M 刀投资。 本文是对 HadoopDB 论文的总结。其中不免掺杂些自己的不成熟想法,更详细的内容,还...

android的项目文件介绍

1.res目录存放Android的各种资源文件,比如layout存放布局文件main.xml,values存放各种xml格式的资源文件,字符串资源strings.xml,颜色资源文件:colors.xml;尺寸资源文件:dimens.xml.drawlable-ldpi,drawlable-mdpi,drawlable-hdpi则分别用于存放小、中、大三种...

Mysql学习总结(36)——Mysql查询优化

从事前端开发的都知道,页面显示的数据一定要及时的呈现,否则会影响用户体现.那么导致页面加载数据慢或者显示滞后的原因又是什么呢? 拿自己之前做项目经历给大家讲讲吧,之前做后台,当时的项目实时性都非常高,前端页面实时显示要求非常高 ,慢1秒显示都会导致用户的投诉,最后没办法,通过本地(磁盘)缓存跟数据表分割来解决这一问题. 原因分析 主要原因1: 后台数据库中...

WSL使用小结:从ArchLinux到Manjaro

 1.前言   上一篇介绍了Windows 10下配置WSL环境,通过ALWSL脚本替换为ArchLinux的过程。这一篇介绍根据ArchLinux官网的说明,在WSL下安装ArchLinux,并切换到发行版Manjaro的过程。   先上截图:X Server使用的是MobaXterm,其中:Windows 10任务栏以上部分是Manjaro界面,四个窗...

shell脚本操作mysql数据库—创建数据库,在该数据库中创建表(插入,查询,更新,删除操作也可以做)

#!/bin/bash HOSTNAME="192.168.1.224" #数据库Server信息PORT="3306"USERNAME="root"PASSWORD="123456" DBNAME="test_db_name" #要创建的数据库的库名称TABLENAME="test_table_name" #要创建的数据库的表的名称 MYSQL_CMD=...

JAVA入门到精通-第64讲-sql server备份恢复

  邮件服务器备份:   c 创建  查询  更新  删除  /  增删改查;   分离:把数据库aaa暂时离开数据库,可以分离,附加到另外地方去; .mdf  和  .ldf 这两个文件   所有任务---分离数据库     附加数据库:   ---备份和恢复 备份数据库不会影响原数据库的使用;   备份数据库会形成bac...