关于使用RMAN进行clone数据库一
2024-07-21 02:39:57
供稿:网友
备份数据库 RMAN> run { 2> allocate channel t1 type disk FORMAT='F:/bakup/full_%u'; 3> allocate channel t2 type disk FORMAT='F:/bakup/full_%u'; 4> backup current controlfile; 5> backup database format 'F:/bakup/full_%U.BAK'; 6> release channel t1; 7> release channel t2; 8> } 分配的通道: t1 通道 t1: sid=11 devtype=DISK 分配的通道: t2 通道 t2: sid=12 devtype=DISK 启动 backup 于 16-10月-05 通道 t1: 正在启动 full 数据文件备份集 通道 t1: 正在指定备份集中的数据文件 备份集中包括当前控制文件 通道 t1: 正在启动段 1 于 16-10月-05 通道 t1: 已完成段 1 于 16-10月-05 段 handle=F:/BAKUP/FULL_03H1AU2L comment=NONE 通道 t1: 备份集已完成, 经过时间:00:00:01 完成 backup 于 16-10月-05 启动 backup 于 16-10月-05 通道 t1: 正在启动 full 数据文件备份集 通道 t1: 正在指定备份集中的数据文件 输入数据文件 fno=00001 name=E:/Oracle/ORADATA/NJTEST/SYSTEM01.DBF 输入数据文件 fno=00003 name=E:/ORACLE/ORADATA/NJTEST/EXAMPLE01.DBF 输入数据文件 fno=00002 name=E:/ORACLE/ORADATA/NJTEST/UNDOTBS01.DBF 输入数据文件 fno=00008 name=E:/ORACLE/ORADATA/NJTEST/APP0R3K.DBF 输入数据文件 fno=00005 name=E:/ORACLE/ORADATA/NJTEST/TOOLS01.DBF 通道 t1: 正在启动段 1 于 16-10月-05 通道 t2: 正在启动 full 数据文件备份集 通道 t2: 正在指定备份集中的数据文件 输入数据文件 fno=00006 name=E:/ORACLE/ORADATA/NJTEST/USERS01.DBF 输入数据文件 fno=00004 name=E:/ORACLE/ORADATA/NJTEST/INDX01.DBF 输入数据文件 fno=00007 name=E:/ORACLE/ORADATA/NJTEST/USER02.ORA 输入数据文件 fno=00009 name=E:/ORACLE/ORADATA/NJTEST/APP0R1K.ORA 通道 t2: 正在启动段 1 于 16-10月-05 通道 t2: 已完成段 1 于 16-10月-05 段 handle=F:/BAKUP/FULL_05H1AU2O_1_1.BAK comment=NONE 通道 t2: 备份集已完成, 经过时间:00:01:27 通道 t1: 已完成段 1 于 16-10月-05 段 handle=F:/BAKUP/FULL_04H1AU2N_1_1.BAK comment=NONE 通道 t1: 备份集已完成, 经过时间:00:01:43 完成 backup 于 16-10月-05 启动 Control File and SPFILE Autobackup 于 16-10月-05 段 handle=D:/ORACLE/ORA92/DATABASE/C-754165290-20051016-00 comment=NONE
完成 Control File and SPFILE Autobackup 于 16-10月-05 释放的通道: t1 释放的通道: t2 在克隆前需要先复制参数文件修改,并启动到nomount状态。在WINDOWS下面还需要创建对应的服务及配置监听文件。tnsnames.ora文件 --克隆数据库: RMAN> RMAN> connect auxiliary sys/sys1@clone allocate auxiliary channel t2 type disk; run {allocate auxiliary channel t1 type disk; allocate auxiliary channel t2 type disk; --由于新数据库文件目录可能和现有文件目录不一致,故需要修改。 set newname for datafile 1 to 'I:/Oracle/Test/oradata/test/SYSTEM01.DBF'; set newname for datafile 2 to 'I:/Oracle/Test/oradata/test/UNDOTBS01.DBF'; set newname for datafile 3 to 'I:/Oracle/Test/oradata/test/EXAMPLE01.DBF'; set newname for datafile 4 to 'I:/Oracle/Test/oradata/test/INDX01.DBF'; set newname for datafile 5 to 'I:/Oracle/Test/oradata/test/TOOLS01.DBF'; set newname for datafile 6 to 'I:/Oracle/Test/oradata/test/USERS01.DBF'; set newname for datafile 7 to 'I:/Oracle/Test/oradata/test/USER02.DBF'; set newname for datafile 8 to 'I:/Oracle/Test/oradata/test/APP0R3K.DBF'; set newname for datafile 9 to 'I:/Oracle/Test/oradata/test/APP0R1K.DBF'; DUPLICATE TARGET DATABASE TO NJTEST(原来的数据库名称) LOGFILE GROUP 1 ('I:/Oracle/Test/oradata/test/REDO01.DBF') SIZE 10M, GROUP 2 ('I:/Oracle/Test/oradata/test/REDO02.DBF') SIZE 10M, GROUP 3 ('I:/Oracle/Test/oradata/test/REDO03.DBF') SIZE 10M; } run {allocate auxiliary channel t1 type disk; allocate auxiliary channel t2 type disk; set newname for datafile 1 to 'I:/Oracle/Test/oradata/test/SYSTEM01.DBF'; set newname for datafile 2 to 'I:/Oracle/Test/oradata/test/UNDOTBS01.DBF'; set newname for datafile 3 to 'I:/Oracle/Test/oradata/test/EXAMPLE01.DBF'; set newname for datafile 4 to 'I:/Oracle/Test/oradata/test/INDX01.DBF'; set newname for datafile 5 to 'I:/Oracle/Test/oradata/test/TOOLS01.DBF'; set newname for datafile 6 to 'I:/Oracle/Test/oradata/test/USERS01.DBF'; set newname for datafile 7 to 'I:/Oracle/Test/oradata/test/USER02.DBF'; set newname for datafile 8 to 'I:/Oracle/Test/oradata/test/APP0R3K.DBF'; set newname for datafile 9 to 'I:/Oracle/Test/oradata/test/APP0R1K.DBF'; DUPLICATE TARGET DATABASE TO CLTEST LOGFILE
GROUP 1 ('I:/Oracle/Test/oradata/test/REDO01.DBF') SIZE 10M, GROUP 2 ('I:/Oracle/Test/oradata/test/REDO02.DBF') SIZE 10M, GROUP 3 ('I:/Oracle/Test/oradata/test/REDO03.DBF') SIZE 10M; } RMAN> run { 2> allocate channel t1 type disk FORMAT='F:/bakup/rman/full_%u'; 3> allocate channel t2 type disk FORMAT='F:/bakup/rman/full_%u'; 4> backup current controlfile; 5> backup database; 6> release channel t1; 7> release channel t2; 8> } 分配的通道: t1 通道 t1: sid=11 devtype=DISK 分配的通道: t2 通道 t2: sid=12 devtype=DISK 启动 backup 于 16-10月-05 通道 t1: 正在启动 full 数据文件备份集 通道 t1: 正在指定备份集中的数据文件 备份集中包括当前控制文件 通道 t1: 正在启动段 1 于 16-10月-05 通道 t1: 已完成段 1 于 16-10月-05 段 handle=F:/BAKUP/RMAN/FULL_07H1AU9N comment=NONE 通道 t1: 备份集已完成, 经过时间:00:00:02 完成 backup 于 16-10月-05 启动 backup 于 16-10月-05 通道 t1: 正在启动 full 数据文件备份集 通道 t1: 正在指定备份集中的数据文件 输入数据文件 fno=00001 name=E:/ORACLE/ORADATA/NJTEST/SYSTEM01.DBF 输入数据文件 fno=00003 name=E:/ORACLE/ORADATA/NJTEST/EXAMPLE01.DBF 输入数据文件 fno=00002 name=E:/ORACLE/ORADATA/NJTEST/UNDOTBS01.DBF 输入数据文件 fno=00008 name=E:/ORACLE/ORADATA/NJTEST/APP0R3K.DBF 输入数据文件 fno=00005 name=E:/ORACLE/ORADATA/NJTEST/TOOLS01.DBF 通道 t1: 正在启动段 1 于 16-10月-05 通道 t2: 正在启动 full 数据文件备份集 通道 t2: 正在指定备份集中的数据文件 输入数据文件 fno=00006 name=E:/ORACLE/ORADATA/NJTEST/USERS01.DBF 输入数据文件 fno=00004 name=E:/ORACLE/ORADATA/NJTEST/INDX01.DBF 输入数据文件 fno=00007 name=E:/ORACLE/ORADATA/NJTEST/USER02.ORA 输入数据文件 fno=00009 name=E:/ORACLE/ORADATA/NJTEST/APP0R1K.ORA 通道 t2: 正在启动段 1 于 16-10月-05 通道 t2: 已完成段 1 于 16-10月-05 段 handle=F:/BAKUP/RMAN/FULL_09H1AU9Q comment=NONE 通道 t2: 备份集已完成, 经过时间:00:01:28 通道 t1: 已完成段 1 于 16-10月-05 段 handle=F:/BAKUP/RMAN/FULL_08H1AU9Q comment=NONE 通道 t1: 备份集已完成, 经过时间:00:01:35 完成 backup 于 16-10月-05 启动 Control File and SPFILE Autobackup 于 16-10月-05 段 handle=D:/ORACLE/ORA92/DATABASE/C-754165290-20051016-01 comment=NONE 完成 Control File and SPFILE Autobackup 于 16-10月-05
释放的通道: t1 释放的通道: t2 RMAN> 恢复: oradim -new -sid CLTEST -PFILE I:/Oracle/Test/admin/pfile/test.ORA -INTPWD ADMIN D:/oracle/ora92/bin/orapwd.exe file=D:/oracle/ora92/database/PWDtest.ora passWord=ADMIN Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved. RMAN> connect target / 连接到目标数据库: NJTEST (DBID=754165290) RMAN> connect auxiliary sys/admin@cltest 已连接到备用数据库: CLTEST (未安装) RMAN> run 2> {allocate auxiliary channel t1 type disk; 3> allocate auxiliary channel t2 type disk; 4> set newname for datafile 1 to 'I:/Oracle/Test/oradata/test/SYSTEM01.DBF'; 5> set newname for datafile 2 to 'I:/Oracle/Test/oradata/test/UNDOTBS01.DBF'; 6> set newname for datafile 3 to 'I:/Oracle/Test/oradata/test/EXAMPLE01.DBF'; 7> set newname for datafile 4 to 'I:/Oracle/Test/oradata/test/INDX01.DBF'; 8> set newname for datafile 5 to 'I:/Oracle/Test/oradata/test/TOOLS01.DBF'; 9> set newname for datafile 6 to 'I:/Oracle/Test/oradata/test/USERS01.DBF'; 10> set newname for datafile 7 to 'I:/Oracle/Test/oradata/test/USER02.DBF'; 11> set newname for datafile 8 to 'I:/Oracle/Test/oradata/test/APP0R3K.DBF'; 12> set newname for datafile 9 to 'I:/Oracle/Test/oradata/test/APP0R1K.DBF'; 13> DUPLICATE TARGET DATABASE TO CLTEST 14> LOGFILE 15> GROUP 1 ('I:/Oracle/Test/oradata/test/REDO01.DBF') SIZE 10M, 16> GROUP 2 ('I:/Oracle/Test/oradata/test/REDO02.DBF') SIZE 10M, 17> GROUP 3 ('I:/Oracle/Test/oradata/test/REDO03.DBF') SIZE 10M; 18> } 正在使用目标数据库控制文件替代恢复目录 分配的通道: t1 通道 t1: sid=12 devtype=DISK 分配的通道: t2 通道 t2: sid=13 devtype=DISK 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 启动 Duplicate Db 于 16-10月-05 正在打印存储的脚本: Memory Script
{ set newname for datafile 1 to "I:/ORACLE/TEST/ORADATA/TEST/SYSTEM01.DBF"; set newname for datafile 2 to "I:/ORACLE/TEST/ORADATA/TEST/UNDOTBS01.DBF"; set newname for datafile 3 to "I:/ORACLE/TEST/ORADATA/TEST/EXAMPLE01.DBF"; set newname for datafile 4 to "I:/ORACLE/TEST/ORADATA/TEST/INDX01.DBF"; set newname for datafile 5 to "I:/ORACLE/TEST/ORADATA/TEST/TOOLS01.DBF"; set newname for datafile 6 to