用rman copy current controlfile实现控制文件路径改变的迁移
有时候,我们为了把控制文件放到裸设备上,或者存储更换,需要把控制文件迁移到新的存储上,可以用rman backupcontrolfile和rman restore controlfile的方法,,下面介绍rman copy current controlfile 的方法,很简单
1.把数据库启动到mount状态
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
D:\CONTROL01.CTL
D:\CONTROL02.CTL --需要把这个控制文件迁移到D:\oracle\oradata\test目录下
D:\CONTROL03.CTL
SQL>
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area 335544320 bytes
Fixed Size 1248864 bytes
Variable Size 306184608 bytes
Database Buffers 25165824 bytes
Redo Buffers 2945024 bytes
数据库装载完毕
2.用rman copy current controlfile
C:\Documents and Settings\yibin>rman target /
恢复管理器: Release 10.2.0.1.0 - Production on 星期一 5月 11 23:21:40 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接到目标数据库: TEST (DBID=1983526595, 未打开)
RMAN> copy current controlfile to 'D:\oracle\oradata\test\CONTROL01.CTL';
启动 backup 于 11-5月 -09
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=158 devtype=DISK
通道 ORA_DISK_1: 启动数据文件副本
复制当前控制文件
输出文件名 = D:\ORACLE\ORADATA\TEST\CONTROL01.CTL 标记 = TAG20090511T232259 reci
d = 5 时间戳 = 686618580
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
完成 backup 于 11-5月 -09
RMAN> copy current controlfile to 'D:\oracle\oradata\test\CONTROL02.CTL';
启动 backup 于 11-5月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动数据文件副本
复制当前控制文件
输出文件名 = D:\ORACLE\ORADATA\TEST\CONTROL02.CTL 标记 = TAG20090511T232305 reci
d = 6 时间戳 = 686618586
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
完成 backup 于 11-5月 -09
RMAN> copy current controlfile to 'D:\oracle\oradata\test\CONTROL03.CTL';
启动 backup 于 11-5月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动数据文件副本
复制当前控制文件
输出文件名 = D:\ORACLE\ORADATA\TEST\CONTROL03.CTL 标记 = TAG20090511T232312 reci
d = 7 时间戳 = 686618592
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
完成 backup 于 11-5月 -09
RMAN> EXIT
恢复管理器完成。
C:\Documents and Settings\yibin>sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 5月 11 23:23:26 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
编辑pfile文件参数,指向controlfile 参数为新的路径
SQL> create spfile from pfile;
文件已创建。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 335544320 bytes
Fixed Size 1248864 bytes
Variable Size 306184608 bytes
Database Buffers 25165824 bytes
Redo Buffers 2945024 bytes
数据库装载完毕。
SQL> alter database open resetlogs;
数据库已更改。
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
D:\ORACLE\ORADATA\TEST\CONTROL01.CTL
D:\ORACLE\ORADATA\TEST\CONTROL02.CTL
D:\ORACLE\ORADATA\TEST\CONTROL03.CTL
SQL>