控制文件的备份与恢复(RMAN工具)
数据库版本
SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production PL/SQL Release 11.2.0.1.0 - Production CORE 11.2.0.1.0 Production TNS for 32-bit Windows: Version 11.2.0.1.0 - Production NLSRTL Version 11.2.0.1.0 - Production C:\Documents and Settings\Administrator>rman target / catalog rm_user/rm_user
恢复管理器: Release 11.2.0.1.0 - Production on 星期日 8月 11 16:00:49 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
连接到目标数据库: ORCL (DBID=1318810635)
连接到恢复目录数据库
查看rman 配置
RMAN> show all; db_unique_name 为 ORCL 的数据库的 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:\rmanbackup\controlfile\%F'; CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'd:\backup\%d_%s.bak'; CONFIGURE MAXSETSIZE TO UNLIMITED; # default CONFIGURE ENCRYPTION FOR DATABASE OFF; # default CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'E:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\SNCFORCL.ORA'; # default
说明控制文件的备份策略为自动备份;那么就先任意备份一个数据文件(本次就用备份此数据文件时自动备份的控制文件)
RMAN> backup datafile 7;
启动 backup 于 11-8月 -13
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00007 名称=E:\RMAN.DBF
通道 ORA_DISK_1: 正在启动段 1 于 11-8月 -13
通道 ORA_DISK_1: 已完成段 1 于 11-8月 -13
段句柄=D:\BACKUP\ORCL_167.BAK 标记=TAG20130811T152451 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:03
完成 backup 于 11-8月 -13
启动 Control File and SPFILE Autobackup 于 11-8月 -13
段 handle=F:\RMANBACKUP\CONTROLFILE\C-1318810635-20130811-00comment=NONE
完成 Control File and SPFILE Autobackup 于 11-8月 -13
RMAN> shutdown immediate;
数据库已关闭
数据库已卸装
Oracle 实例已关闭
手动删除所有控制文件;
以下是恢复步骤;
RMAN> startup nomount;
数据库已经启动
RMAN> restore controlfile from autobackup; 启动 restore 于 11-8月 -13 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: restore 命令 (在 08/11/2013 15:28:47 上) 失败 RMAN-06004: 恢复目录数据库发生 ORACLE 错误: ORA-03114: 未连接到 ORACLE
说明关闭数据库之后已经断开了与数据库的链接;
RMAN> exit
恢复管理器完成。
由于数据库启动不了,所以恢复目录用不了,那么就只连接到目标数据库;
C:\Documents and Settings\Administrator>rman target /
恢复管理器: Release 11.2.0.1.0 - Production on 星期日 8月 11 15:30:05 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
连接到目标数据库: ORCL (未装载)
RMAN> startup nomount;