重装操作系统后,如何恢复数据库? 9i是装在D盘的,重装操作系统后,又重装了9i请问如何将原来的数据库恢复回来? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 9i原是装在D盘的,重装操作系统C盘后,又重装了9i请问如何将原来的数据库恢复回来?(原来D盘的9i还在,现在重新覆盖安装了一次) 9i原是装在D盘的,重装操作系统C盘后,又重装了9i请问如何将原来的数据库恢复回来?(原来D盘的9i还在,现在重新覆盖安装了一次) 转贴:1、连接目标数据库,对目标数据库做全库备份D:\ORACLE\BIN>rman恢复管理器: 版本9.2.0.5.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.RMAN> connect catalog rman/rman@187连接到恢复目录数据库RMAN> connect target /连接到目标数据库: ENCORE (DBID=3146513770)RMAN> run2> {allocate channel d1 type disk maxpiecesize = 500m;3> backup full database4> format 'E:\rmanbak\db_%d_%s_%p_%t';5> release channel d1;6> }分配的通道: d1通道 d1: sid=16 devtype=DISK启动 backup 于 2004-06-28 21:03:31通道 d1: 正在启动 full 数据文件备份集通道 d1: 正在指定备份集中的数据文件在备份集中包含当前的 SPFILE备份集中包括当前控制文件输入数据文件 fno=00001 name=D:\ORACLE\ORADATA\ENCORE\SYSTEM01.DBF输入数据文件 fno=00002 name=D:\ORACLE\ORADATA\ENCORE\UNDOTBS01.DBF输入数据文件 fno=00005 name=D:\ORACLE\ORADATA\ENCORE\EXAMPLE01.DBF输入数据文件 fno=00008 name=D:\ORACLE\ORADATA\ENCORE\TOOLS01.DBF输入数据文件 fno=00010 name=D:\ORACLE\ORADATA\ENCORE\XDB01.DBF输入数据文件 fno=00006 name=D:\ORACLE\ORADATA\ENCORE\INDX01.DBF输入数据文件 fno=00009 name=D:\ORACLE\ORADATA\ENCORE\USERS01.DBF输入数据文件 fno=00003 name=D:\ORACLE\ORADATA\ENCORE\CWMLITE01.DBF输入数据文件 fno=00004 name=D:\ORACLE\ORADATA\ENCORE\DRSYS01.DBF输入数据文件 fno=00007 name=D:\ORACLE\ORADATA\ENCORE\ODM01.DBF通道 d1: 正在启动段 1 于 2004-06-28 21:03:37通道 d1: 已完成段 1 于 2004-06-28 21:05:02段 handle=E:\RMANBAK\DB_ENCORE_1_1_530053412 comment=NONE通道 d1: 正在启动段 2 于 2004-06-28 21:05:02通道 d1: 已完成段 2 于 2004-06-28 21:06:07段 handle=E:\RMANBAK\DB_ENCORE_1_2_530053412 comment=NONE通道 d1: 备份集已完成, 经过时间:00:02:35完成 backup 于 2004-06-28 21:06:07释放的通道: d1RMAN>2、备份目标数据库的参数文件SQL> create pfile from spfile;文件已创建SQL>3、--将目标数据库的参数文件(第2步创建)拷贝到克隆机器上,修改相应的参数(主要是实例名和数据库名,和bdump、udump、cdump 等后台进程的跟踪文件存放的路径,本文中,克隆数据库的实例名为 CLONE,数据库名为 CLONE_DB),然后在克隆机器上创建实例D:\oracle\bin>oradim -new -sid clone -PFILE D:\ORACLE\database\INITCLONE.ORA -INTPWD SYS1D:\oracle\bin>4、--修改克隆数据库的监听器,增加对克隆数据库的监听(第3段)SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = D:\ORACLE)(PROGRAM = extproc))(SID_DESC =(GLOBAL_DBNAME = ORACLE)(ORACLE_HOME = D:\ORACLE)(SID_NAME = ORACLE92))(SID_DESC =(GLOBAL_DBNAME = clone_db)(ORACLE_HOME = D:\ORACLE)(SID_NAME = clone)))5、修改RMAN机器上的TNSNAMES.ORA文件,增加此连接串,保证RMAN使用此连接串能够连接到克隆数据库的实例CLONE =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.194)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = CLONE_DB)))5、将目标数据库的备份集拷贝到克隆数据库机器的同一位置,并启动克隆数据库(nomount 状态)6、由于第1步骤中没有备份日志,在使用RMAN> run2> {allocate auxiliary channel d1 type disk;3> set newname for datafile 1 to 'F:\CLONE\data\SYSTEM01.DBF';脚本克隆数据库时,出现 NO BACKUP COPY 之类的错误,之后补充备份目标数据库的日志,RMAN> run2> {allocate channel d1 type disk maxpiecesize = 500m;3> backup archivelog all4> format 'E:\rmanbak\log_%d_%s_%p_%t';5> release channel d1;6> }分配的通道: d1通道 d1: sid=11 devtype=DISK启动 backup 于 2004-06-28 21:42:18当前日志已存档通道 d1: 正在启动存档日志备份集通道 d1: 正在指定备份集中的存档日志输入存档日志线程 =1 序列 =107 记录 ID=107 时间戳=528371132输入存档日志线程 =1 序列 =108 记录 ID=108 时间戳=530053839输入存档日志线程 =1 序列 =109 记录 ID=109 时间戳=530054855输入存档日志线程 =1 序列 =110 记录 ID=110 时间戳=530055437输入存档日志线程 =1 序列 =111 记录 ID=111 时间戳=530055540输入存档日志线程 =1 序列 =112 记录 ID=112 时间戳=530055739通道 d1: 正在启动段 1 于 2004-06-28 21:42:23通道 d1: 已完成段 1 于 2004-06-28 21:42:26段 handle=E:\RMANBAK\LOG_ENCORE_2_1_530055742 comment=NONE通道 d1: 备份集已完成, 经过时间:00:00:04完成 backup 于 2004-06-28 21:42:26释放的通道: d17、将日志备份集拷贝到克隆机器的同一目录后,回到RMAN处,连接辅助(克隆)数据库,执行脚本,剩下的RMAN自己会做RMAN> connect auxiliary sys/sys1@clone已连接到备用数据库: CLONE_DB (未安装)RMAN> run2> {allocate auxiliary channel d1 type disk;3> set newname for datafile 1 to 'F:\CLONE\data\SYSTEM01.DBF';4> set newname for datafile 2 to 'F:\CLONE\data\UNDOTBS01.DBF';5> set newname for datafile 3 to 'F:\CLONE\data\CWMLITE01.DBF';6> set newname for datafile 4 to 'F:\CLONE\data\DRSYS01.DBF';7> set newname for datafile 5 to 'F:\CLONE\data\EXAMPLE01.DBF';8> set newname for datafile 6 to 'F:\CLONE\data\INDX01.DBF';9> set newname for datafile 7 to 'F:\CLONE\data\ODM01.DBF';10> set newname for datafile 8 to 'F:\CLONE\data\TOOLS01.DBF';11> set newname for datafile 9 to 'F:\CLONE\data\USERS01.DBF';12> set newname for datafile 10 to 'F:\CLONE\data\XDB01.DBF';13> DUPLICATE TARGET DATABASE TO CLONE_DB14> LOGFILE15> GROUP 1 ('F:\clone\data\REDO01.DBF') SIZE 10M,16> GROUP 2 ('F:\clone\data\REDO02.DBF') SIZE 10M,17> GROUP 3 ('F:\clone\data\REDO03.DBF') SIZE 10M;18> }分配的通道: d1通道 d1: sid=8 devtype=DISK正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME启动 Duplicate Db 于 2004-06-28 21:43:51正在打印存储的脚本: Memory Script{set until scn 261688166;set newname for datafile 1 to"F:\CLONE\DATA\SYSTEM01.DBF";set newname for datafile 2 to"F:\CLONE\DATA\UNDOTBS01.DBF";set newname for datafile 3 to"F:\CLONE\DATA\CWMLITE01.DBF";set newname for datafile 4 to"F:\CLONE\DATA\DRSYS01.DBF";set newname for datafile 5 to"F:\CLONE\DATA\EXAMPLE01.DBF";set newname for datafile 6 to"F:\CLONE\DATA\INDX01.DBF";set newname for datafile 7 to"F:\CLONE\DATA\ODM01.DBF";set newname for datafile 8 to"F:\CLONE\DATA\TOOLS01.DBF";set newname for datafile 9 to"F:\CLONE\DATA\USERS01.DBF";set newname for datafile 10 to"F:\CLONE\DATA\XDB01.DBF";restorecheck readonlyclone database;}正在执行脚本: Memory Script正在执行命令: SET until clause正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME 启动 restore 于 2004-06-28 21:43:54通道 d1: 正在开始恢复数据文件备份集通道 d1: 正在指定从备份集恢复的数据文件正将数据文件00001恢复到F:\CLONE\DATA\SYSTEM01.DBF正将数据文件00002恢复到F:\CLONE\DATA\UNDOTBS01.DBF正将数据文件00003恢复到F:\CLONE\DATA\CWMLITE01.DBF正将数据文件00004恢复到F:\CLONE\DATA\DRSYS01.DBF正将数据文件00005恢复到F:\CLONE\DATA\EXAMPLE01.DBF正将数据文件00006恢复到F:\CLONE\DATA\INDX01.DBF正将数据文件00007恢复到F:\CLONE\DATA\ODM01.DBF正将数据文件00008恢复到F:\CLONE\DATA\TOOLS01.DBF正将数据文件00009恢复到F:\CLONE\DATA\USERS01.DBF正将数据文件00010恢复到F:\CLONE\DATA\XDB01.DBF通道 d1: 已恢复备份段 1段 handle=E:\RMANBAK\DB_ENCORE_1_1_530053412 tag=TAG20040628T210331 params=NULL通道 d1: 已恢复备份段 2段 handle=E:\RMANBAK\DB_ENCORE_1_2_530053412 tag=TAG20040628T210331 params=NULL通道 d1: 恢复完成完成 restore 于 2004-06-28 21:46:35sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "CLONE_DB" RESETLOGS ARCHIVELOGMAXLOGFILES 50MAXLOGMEMBERS 5MAXDATAFILES 100MAXINSTANCES 1MAXLOGHISTORY 226LOGFILEGROUP 1 ( 'F:\clone\data\REDO01.DBF' ) SIZE 10485760 ,GROUP 2 ( 'F:\clone\data\REDO02.DBF' ) SIZE 10485760 ,GROUP 3 ( 'F:\clone\data\REDO03.DBF' ) SIZE 10485760DATAFILE'F:\CLONE\DATA\SYSTEM01.DBF'CHARACTER SET ZHS16GBK正在打印存储的脚本: Memory Script{switch clone datafile all;}正在执行脚本: Memory Script数据文件 2 已转换成数据文件副本输入数据文件副本 recid=1 stamp=530056505 文件名=F:\CLONE\DATA\UNDOTBS01.DBF数据文件 3 已转换成数据文件副本输入数据文件副本 recid=2 stamp=530056505 文件名=F:\CLONE\DATA\CWMLITE01.DBF数据文件 4 已转换成数据文件副本输入数据文件副本 recid=3 stamp=530056505 文件名=F:\CLONE\DATA\DRSYS01.DBF数据文件 5 已转换成数据文件副本输入数据文件副本 recid=4 stamp=530056505 文件名=F:\CLONE\DATA\EXAMPLE01.DBF数据文件 6 已转换成数据文件副本输入数据文件副本 recid=5 stamp=530056505 文件名=F:\CLONE\DATA\INDX01.DBF数据文件 7 已转换成数据文件副本输入数据文件副本 recid=6 stamp=530056505 文件名=F:\CLONE\DATA\ODM01.DBF数据文件 8 已转换成数据文件副本输入数据文件副本 recid=7 stamp=530056505 文件名=F:\CLONE\DATA\TOOLS01.DBF数据文件 9 已转换成数据文件副本输入数据文件副本 recid=8 stamp=530056505 文件名=F:\CLONE\DATA\USERS01.DBF数据文件 10 已转换成数据文件副本输入数据文件副本 recid=9 stamp=530056505 文件名=F:\CLONE\DATA\XDB01.DBF正在打印存储的脚本: Memory Script{set until scn 261688166;recoverclone databasedelete archivelog;}正在执行脚本: Memory Script正在执行命令: SET until clause启动 recover 于 2004-06-28 21:46:37正在开始介质的恢复通道 d1: 正在启动到默认目标的存档日志恢复通道 d1: 正在恢复存档日志存档日志线程 =1 序列=108通道 d1: 正在恢复存档日志存档日志线程 =1 序列=109通道 d1: 正在恢复存档日志存档日志线程 =1 序列=110通道 d1: 正在恢复存档日志存档日志线程 =1 序列=111通道 d1: 正在恢复存档日志存档日志线程 =1 序列=112通道 d1: 已恢复备份段 1段 handle=E:\RMANBAK\LOG_ENCORE_2_1_530055742 tag=TAG20040628T214221 params=NULL通道 d1: 恢复完成存档日志文件名 =F:\CLONE\LOG\ARC00108.001 线程 =1 序列 =108通道 clone_default: 正在删除存档日志存档日志文件名 =F:\CLONE\LOG\ARC00108.001 记录 ID=3 时间戳 =530056510存档日志文件名 =F:\CLONE\LOG\ARC00109.001 线程 =1 序列 =109通道 clone_default: 正在删除存档日志存档日志文件名 =F:\CLONE\LOG\ARC00109.001 记录 ID=4 时间戳 =530056510存档日志文件名 =F:\CLONE\LOG\ARC00110.001 线程 =1 序列 =110通道 clone_default: 正在删除存档日志存档日志文件名 =F:\CLONE\LOG\ARC00110.001 记录 ID=5 时间戳 =530056510存档日志文件名 =F:\CLONE\LOG\ARC00111.001 线程 =1 序列 =111通道 clone_default: 正在删除存档日志存档日志文件名 =F:\CLONE\LOG\ARC00111.001 记录 ID=2 时间戳 =530056510存档日志文件名 =F:\CLONE\LOG\ARC00112.001 线程 =1 序列 =112通道 clone_default: 正在删除存档日志存档日志文件名 =F:\CLONE\LOG\ARC00112.001 记录 ID=1 时间戳 =530056510完成介质的恢复完成 recover 于 2004-06-28 21:46:47正在打印存储的脚本: Memory Script{shutdown clone;startup clone nomount ;}正在执行脚本: Memory Script数据库已卸载Oracle 例程已关闭 已连接到备用数据库 (未启动)Oracle 例程已启动系统全局区域总计 319889436 字节Fixed Size 454684 字节Variable Size 109051904 字节Database Buffers 209715200 字节Redo Buffers 667648 字节sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "CLONE_DB" RESETLOGS ARCHIVELOGMAXLOGFILES 50MAXLOGMEMBERS 5MAXDATAFILES 100MAXINSTANCES 1MAXLOGHISTORY 226LOGFILEGROUP 1 ( 'F:\clone\data\REDO01.DBF' ) SIZE 10485760 ,GROUP 2 ( 'F:\clone\data\REDO02.DBF' ) SIZE 10485760 ,GROUP 3 ( 'F:\clone\data\REDO03.DBF' ) SIZE 10485760DATAFILE'F:\CLONE\DATA\SYSTEM01.DBF'CHARACTER SET ZHS16GBK正在打印存储的脚本: Memory Script{catalog clone datafilecopy "F:\CLONE\DATA\UNDOTBS01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\CWMLITE01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\DRSYS01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\EXAMPLE01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\INDX01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\ODM01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\TOOLS01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\USERS01.DBF";catalog clone datafilecopy "F:\CLONE\DATA\XDB01.DBF";switch clone datafile all;}正在执行脚本: Memory Script已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\UNDOTBS01.DBF recid=1 stamp=530056530已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\CWMLITE01.DBF recid=2 stamp=530056530已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\DRSYS01.DBF recid=3 stamp=530056531已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\EXAMPLE01.DBF recid=4 stamp=530056531已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\INDX01.DBF recid=5 stamp=530056531已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\ODM01.DBF recid=6 stamp=530056531已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\TOOLS01.DBF recid=7 stamp=530056532已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\USERS01.DBF recid=8 stamp=530056532已将数据文件副本列入目录数据文件副本 filename=F:\CLONE\DATA\XDB01.DBF recid=9 stamp=530056532数据文件 2 已转换成数据文件副本输入数据文件副本 recid=1 stamp=530056530 文件名=F:\CLONE\DATA\UNDOTBS01.DBF数据文件 3 已转换成数据文件副本输入数据文件副本 recid=2 stamp=530056530 文件名=F:\CLONE\DATA\CWMLITE01.DBF数据文件 4 已转换成数据文件副本输入数据文件副本 recid=3 stamp=530056531 文件名=F:\CLONE\DATA\DRSYS01.DBF数据文件 5 已转换成数据文件副本输入数据文件副本 recid=4 stamp=530056531 文件名=F:\CLONE\DATA\EXAMPLE01.DBF数据文件 6 已转换成数据文件副本输入数据文件副本 recid=5 stamp=530056531 文件名=F:\CLONE\DATA\INDX01.DBF数据文件 7 已转换成数据文件副本输入数据文件副本 recid=6 stamp=530056531 文件名=F:\CLONE\DATA\ODM01.DBF数据文件 8 已转换成数据文件副本输入数据文件副本 recid=7 stamp=530056532 文件名=F:\CLONE\DATA\TOOLS01.DBF数据文件 9 已转换成数据文件副本输入数据文件副本 recid=8 stamp=530056532 文件名=F:\CLONE\DATA\USERS01.DBF数据文件 10 已转换成数据文件副本输入数据文件副本 recid=9 stamp=530056532 文件名=F:\CLONE\DATA\XDB01.DBF正在打印存储的脚本: Memory Script{Alter clone database open resetlogs;}正在执行脚本: Memory Script数据库已打开RMAN>--执行此步骤需要注意:避免连接克隆数据库,否则,RMAN将无法正常关闭克隆数据库(shutdown clone),剩下的步骤无法继续执行。8、测试克隆数据库D:\oracle\bin>sqlplusSQL*Plus: Release 9.2.0.5.0 - Production on Mon Jun 28 22:01:46 2004Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.Enter user-name: sys/sys1@clone as sysdbaConnected to:Oracle9i Enterprise Edition Release 9.2.0.5.0 - ProductionWith the Partitioning, Oracle Label Security, OLAP and Oracle Data Mining optionsJServer Release 9.2.0.5.0 - ProductionSQL> select status from v$instance;STATUS------------OPENSQL> archive log list;Database log mode Archive ModeAutomatic archival EnabledArchive destination F:\CLONE\logOldest online log sequence 0Next log sequence to archive 1Current log sequence 1SQL> oracle 查询问题 函数返回的游标,能否直接select显示? 我想在Oracle中存大量的汉字,应该用什么字段?请教 。。 求助一条查询语句!万分感谢!! 求助:导入导出数据库疑惑 基本概念问题 sql loader导数据时如何添加序号? oracle8怎样建十个以上的用户,解决后散分!! Oracle8i问题(100分) 谁有proc中动态方法4的例子 Oracle10g使用SQL*PLUS的问题(Oracle新手) 两台电脑间如何时时备份?
请问如何将原来的数据库恢复回来?(原来D盘的9i还在,现在重新覆盖安装了一次)
请问如何将原来的数据库恢复回来?(原来D盘的9i还在,现在重新覆盖安装了一次)
1、连接目标数据库,对目标数据库做全库备份D:\ORACLE\BIN>rman恢复管理器: 版本9.2.0.5.0 - ProductionCopyright (c) 1995, 2002, Oracle Corporation. All rights reserved.RMAN> connect catalog rman/rman@187连接到恢复目录数据库RMAN> connect target /连接到目标数据库: ENCORE (DBID=3146513770)
RMAN> run
2> {allocate channel d1 type disk maxpiecesize = 500m;
3> backup full database
4> format 'E:\rmanbak\db_%d_%s_%p_%t';
5> release channel d1;
6> }分配的通道: d1
通道 d1: sid=16 devtype=DISK启动 backup 于 2004-06-28 21:03:31
通道 d1: 正在启动 full 数据文件备份集
通道 d1: 正在指定备份集中的数据文件
在备份集中包含当前的 SPFILE
备份集中包括当前控制文件
输入数据文件 fno=00001 name=D:\ORACLE\ORADATA\ENCORE\SYSTEM01.DBF
输入数据文件 fno=00002 name=D:\ORACLE\ORADATA\ENCORE\UNDOTBS01.DBF
输入数据文件 fno=00005 name=D:\ORACLE\ORADATA\ENCORE\EXAMPLE01.DBF
输入数据文件 fno=00008 name=D:\ORACLE\ORADATA\ENCORE\TOOLS01.DBF
输入数据文件 fno=00010 name=D:\ORACLE\ORADATA\ENCORE\XDB01.DBF
输入数据文件 fno=00006 name=D:\ORACLE\ORADATA\ENCORE\INDX01.DBF
输入数据文件 fno=00009 name=D:\ORACLE\ORADATA\ENCORE\USERS01.DBF
输入数据文件 fno=00003 name=D:\ORACLE\ORADATA\ENCORE\CWMLITE01.DBF
输入数据文件 fno=00004 name=D:\ORACLE\ORADATA\ENCORE\DRSYS01.DBF
输入数据文件 fno=00007 name=D:\ORACLE\ORADATA\ENCORE\ODM01.DBF
通道 d1: 正在启动段 1 于 2004-06-28 21:03:37
通道 d1: 已完成段 1 于 2004-06-28 21:05:02
段 handle=E:\RMANBAK\DB_ENCORE_1_1_530053412 comment=NONE
通道 d1: 正在启动段 2 于 2004-06-28 21:05:02
通道 d1: 已完成段 2 于 2004-06-28 21:06:07
段 handle=E:\RMANBAK\DB_ENCORE_1_2_530053412 comment=NONE
通道 d1: 备份集已完成, 经过时间:00:02:35
完成 backup 于 2004-06-28 21:06:07释放的通道: d1RMAN>2、备份目标数据库的参数文件SQL> create pfile from spfile;文件已创建SQL>3、--将目标数据库的参数文件(第2步创建)拷贝到克隆机器上,修改相应的参数(主要是实例名和
数据库名,和bdump、udump、cdump 等后台进程的跟踪文件存放的路径,本文中,克隆数据库
的实例名为 CLONE,数据库名为 CLONE_DB),然后在克隆机器上创建实例D:\oracle\bin>oradim -new -sid clone -PFILE D:\ORACLE\database\INITCLONE.ORA -INTPWD SYS1D:\oracle\bin>
4、--修改克隆数据库的监听器,增加对克隆数据库的监听(第3段)SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\ORACLE)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORACLE)
(ORACLE_HOME = D:\ORACLE)
(SID_NAME = ORACLE92)
)
(SID_DESC =
(GLOBAL_DBNAME = clone_db)
(ORACLE_HOME = D:\ORACLE)
(SID_NAME = clone)
)
)5、修改RMAN机器上的TNSNAMES.ORA文件,增加此连接串,保证RMAN使用此连接串能够连接到
克隆数据库的实例CLONE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.194)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = CLONE_DB)
)
)5、将目标数据库的备份集拷贝到克隆数据库机器的同一位置,并启动克隆数据库(nomount 状态)6、由于第1步骤中没有备份日志,在使用RMAN> run
2> {allocate auxiliary channel d1 type disk;
3> set newname for datafile 1 to 'F:\CLONE\data\SYSTEM01.DBF';脚本克隆数据库时,出现 NO BACKUP COPY 之类的错误,
之后补充备份目标数据库的日志,RMAN> run
2> {allocate channel d1 type disk maxpiecesize = 500m;
3> backup archivelog all
4> format 'E:\rmanbak\log_%d_%s_%p_%t';
5> release channel d1;
6> }分配的通道: d1
通道 d1: sid=11 devtype=DISK启动 backup 于 2004-06-28 21:42:18
当前日志已存档
通道 d1: 正在启动存档日志备份集
通道 d1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =107 记录 ID=107 时间戳=528371132
输入存档日志线程 =1 序列 =108 记录 ID=108 时间戳=530053839
输入存档日志线程 =1 序列 =109 记录 ID=109 时间戳=530054855
输入存档日志线程 =1 序列 =110 记录 ID=110 时间戳=530055437
输入存档日志线程 =1 序列 =111 记录 ID=111 时间戳=530055540
输入存档日志线程 =1 序列 =112 记录 ID=112 时间戳=530055739
通道 d1: 正在启动段 1 于 2004-06-28 21:42:23
通道 d1: 已完成段 1 于 2004-06-28 21:42:26
段 handle=E:\RMANBAK\LOG_ENCORE_2_1_530055742 comment=NONE
通道 d1: 备份集已完成, 经过时间:00:00:04
完成 backup 于 2004-06-28 21:42:26释放的通道: d1
7、将日志备份集拷贝到克隆机器的同一目录后,回到RMAN处,连接辅助(克隆)数据库,
执行脚本,剩下的RMAN自己会做
RMAN> connect auxiliary sys/sys1@clone已连接到备用数据库: CLONE_DB (未安装)RMAN> run
2> {allocate auxiliary channel d1 type disk;
3> set newname for datafile 1 to 'F:\CLONE\data\SYSTEM01.DBF';
4> set newname for datafile 2 to 'F:\CLONE\data\UNDOTBS01.DBF';
5> set newname for datafile 3 to 'F:\CLONE\data\CWMLITE01.DBF';
6> set newname for datafile 4 to 'F:\CLONE\data\DRSYS01.DBF';
7> set newname for datafile 5 to 'F:\CLONE\data\EXAMPLE01.DBF';
8> set newname for datafile 6 to 'F:\CLONE\data\INDX01.DBF';
9> set newname for datafile 7 to 'F:\CLONE\data\ODM01.DBF';
10> set newname for datafile 8 to 'F:\CLONE\data\TOOLS01.DBF';
11> set newname for datafile 9 to 'F:\CLONE\data\USERS01.DBF';
12> set newname for datafile 10 to 'F:\CLONE\data\XDB01.DBF';
13> DUPLICATE TARGET DATABASE TO CLONE_DB
14> LOGFILE
15> GROUP 1 ('F:\clone\data\REDO01.DBF') SIZE 10M,
16> GROUP 2 ('F:\clone\data\REDO02.DBF') SIZE 10M,
17> GROUP 3 ('F:\clone\data\REDO03.DBF') SIZE 10M;
18> }分配的通道: d1
通道 d1: sid=8 devtype=DISK正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME启动 Duplicate Db 于 2004-06-28 21:43:51正在打印存储的脚本: Memory Script
{
set until scn 261688166;
set newname for datafile 1 to
"F:\CLONE\DATA\SYSTEM01.DBF";
set newname for datafile 2 to
"F:\CLONE\DATA\UNDOTBS01.DBF";
set newname for datafile 3 to
"F:\CLONE\DATA\CWMLITE01.DBF";
set newname for datafile 4 to
"F:\CLONE\DATA\DRSYS01.DBF";
set newname for datafile 5 to
"F:\CLONE\DATA\EXAMPLE01.DBF";
set newname for datafile 6 to
"F:\CLONE\DATA\INDX01.DBF";
set newname for datafile 7 to
"F:\CLONE\DATA\ODM01.DBF";
set newname for datafile 8 to
"F:\CLONE\DATA\TOOLS01.DBF";
set newname for datafile 9 to
"F:\CLONE\DATA\USERS01.DBF";
set newname for datafile 10 to
"F:\CLONE\DATA\XDB01.DBF";
restore
check readonly
clone database
;
}
正在执行脚本: Memory Script正在执行命令: SET until clause正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME正在执行命令: SET NEWNAME
通道 d1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到F:\CLONE\DATA\SYSTEM01.DBF
正将数据文件00002恢复到F:\CLONE\DATA\UNDOTBS01.DBF
正将数据文件00003恢复到F:\CLONE\DATA\CWMLITE01.DBF
正将数据文件00004恢复到F:\CLONE\DATA\DRSYS01.DBF
正将数据文件00005恢复到F:\CLONE\DATA\EXAMPLE01.DBF
正将数据文件00006恢复到F:\CLONE\DATA\INDX01.DBF
正将数据文件00007恢复到F:\CLONE\DATA\ODM01.DBF
正将数据文件00008恢复到F:\CLONE\DATA\TOOLS01.DBF
正将数据文件00009恢复到F:\CLONE\DATA\USERS01.DBF
正将数据文件00010恢复到F:\CLONE\DATA\XDB01.DBF
通道 d1: 已恢复备份段 1
段 handle=E:\RMANBAK\DB_ENCORE_1_1_530053412 tag=TAG20040628T210331 params=NULL
通道 d1: 已恢复备份段 2
段 handle=E:\RMANBAK\DB_ENCORE_1_2_530053412 tag=TAG20040628T210331 params=NULL
通道 d1: 恢复完成
完成 restore 于 2004-06-28 21:46:35
sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "CLONE_DB" RESETLOGS ARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'F:\clone\data\REDO01.DBF' ) SIZE 10485760 ,
GROUP 2 ( 'F:\clone\data\REDO02.DBF' ) SIZE 10485760 ,
GROUP 3 ( 'F:\clone\data\REDO03.DBF' ) SIZE 10485760
DATAFILE
'F:\CLONE\DATA\SYSTEM01.DBF'
CHARACTER SET ZHS16GBK
正在打印存储的脚本: Memory Script
{
switch clone datafile all;
}
正在执行脚本: Memory Script数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=1 stamp=530056505 文件名=F:\CLONE\DATA\UNDOTBS01.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=2 stamp=530056505 文件名=F:\CLONE\DATA\CWMLITE01.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=3 stamp=530056505 文件名=F:\CLONE\DATA\DRSYS01.DBF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=4 stamp=530056505 文件名=F:\CLONE\DATA\EXAMPLE01.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=5 stamp=530056505 文件名=F:\CLONE\DATA\INDX01.DBF
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=6 stamp=530056505 文件名=F:\CLONE\DATA\ODM01.DBF
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=7 stamp=530056505 文件名=F:\CLONE\DATA\TOOLS01.DBF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=8 stamp=530056505 文件名=F:\CLONE\DATA\USERS01.DBF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=9 stamp=530056505 文件名=F:\CLONE\DATA\XDB01.DBF正在打印存储的脚本: Memory Script
{
set until scn 261688166;
recover
clone database
delete archivelog
;
}
正在执行脚本: Memory Script正在执行命令: SET until clause启动 recover 于 2004-06-28 21:46:37正在开始介质的恢复通道 d1: 正在启动到默认目标的存档日志恢复
通道 d1: 正在恢复存档日志
存档日志线程 =1 序列=108
通道 d1: 正在恢复存档日志
存档日志线程 =1 序列=109
通道 d1: 正在恢复存档日志
存档日志线程 =1 序列=110
通道 d1: 正在恢复存档日志
存档日志线程 =1 序列=111
通道 d1: 正在恢复存档日志
存档日志线程 =1 序列=112
通道 d1: 已恢复备份段 1
段 handle=E:\RMANBAK\LOG_ENCORE_2_1_530055742 tag=TAG20040628T214221 params=NULL
通道 d1: 恢复完成
存档日志文件名 =F:\CLONE\LOG\ARC00108.001 线程 =1 序列 =108
通道 clone_default: 正在删除存档日志
存档日志文件名 =F:\CLONE\LOG\ARC00108.001 记录 ID=3 时间戳 =530056510
存档日志文件名 =F:\CLONE\LOG\ARC00109.001 线程 =1 序列 =109
通道 clone_default: 正在删除存档日志
存档日志文件名 =F:\CLONE\LOG\ARC00109.001 记录 ID=4 时间戳 =530056510
存档日志文件名 =F:\CLONE\LOG\ARC00110.001 线程 =1 序列 =110
通道 clone_default: 正在删除存档日志
存档日志文件名 =F:\CLONE\LOG\ARC00110.001 记录 ID=5 时间戳 =530056510
存档日志文件名 =F:\CLONE\LOG\ARC00111.001 线程 =1 序列 =111
通道 clone_default: 正在删除存档日志
存档日志文件名 =F:\CLONE\LOG\ARC00111.001 记录 ID=2 时间戳 =530056510
存档日志文件名 =F:\CLONE\LOG\ARC00112.001 线程 =1 序列 =112
通道 clone_default: 正在删除存档日志
存档日志文件名 =F:\CLONE\LOG\ARC00112.001 记录 ID=1 时间戳 =530056510
完成介质的恢复
完成 recover 于 2004-06-28 21:46:47正在打印存储的脚本: Memory Script
{
shutdown clone;
startup clone nomount ;
}
正在执行脚本: Memory Script数据库已卸载
Oracle 例程已关闭
已连接到备用数据库 (未启动)
Oracle 例程已启动系统全局区域总计 319889436 字节Fixed Size 454684 字节
Variable Size 109051904 字节
Database Buffers 209715200 字节
Redo Buffers 667648 字节
sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "CLONE_DB" RESETLOGS ARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'F:\clone\data\REDO01.DBF' ) SIZE 10485760 ,
GROUP 2 ( 'F:\clone\data\REDO02.DBF' ) SIZE 10485760 ,
GROUP 3 ( 'F:\clone\data\REDO03.DBF' ) SIZE 10485760
DATAFILE
'F:\CLONE\DATA\SYSTEM01.DBF'
CHARACTER SET ZHS16GBK
正在打印存储的脚本: Memory Script
{
catalog clone datafilecopy "F:\CLONE\DATA\UNDOTBS01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\CWMLITE01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\DRSYS01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\EXAMPLE01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\INDX01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\ODM01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\TOOLS01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\USERS01.DBF";
catalog clone datafilecopy "F:\CLONE\DATA\XDB01.DBF";
switch clone datafile all;
}
正在执行脚本: Memory Script已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\UNDOTBS01.DBF recid=1 stamp=530056530已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\CWMLITE01.DBF recid=2 stamp=530056530已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\DRSYS01.DBF recid=3 stamp=530056531已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\EXAMPLE01.DBF recid=4 stamp=530056531已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\INDX01.DBF recid=5 stamp=530056531已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\ODM01.DBF recid=6 stamp=530056531已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\TOOLS01.DBF recid=7 stamp=530056532已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\USERS01.DBF recid=8 stamp=530056532已将数据文件副本列入目录
数据文件副本 filename=F:\CLONE\DATA\XDB01.DBF recid=9 stamp=530056532数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=1 stamp=530056530 文件名=F:\CLONE\DATA\UNDOTBS01.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=2 stamp=530056530 文件名=F:\CLONE\DATA\CWMLITE01.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=3 stamp=530056531 文件名=F:\CLONE\DATA\DRSYS01.DBF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=4 stamp=530056531 文件名=F:\CLONE\DATA\EXAMPLE01.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=5 stamp=530056531 文件名=F:\CLONE\DATA\INDX01.DBF
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=6 stamp=530056531 文件名=F:\CLONE\DATA\ODM01.DBF
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=7 stamp=530056532 文件名=F:\CLONE\DATA\TOOLS01.DBF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=8 stamp=530056532 文件名=F:\CLONE\DATA\USERS01.DBF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=9 stamp=530056532 文件名=F:\CLONE\DATA\XDB01.DBF正在打印存储的脚本: Memory Script
{
Alter clone database open resetlogs;
}
正在执行脚本: Memory Script数据库已打开RMAN>--执行此步骤需要注意:避免连接克隆数据库,否则,RMAN将无法正常关闭克隆数据库
(shutdown clone),剩下的步骤无法继续执行。8、测试克隆数据库D:\oracle\bin>sqlplusSQL*Plus: Release 9.2.0.5.0 - Production on Mon Jun 28 22:01:46 2004Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.Enter user-name: sys/sys1@clone as sysdbaConnected to:
Oracle9i Enterprise Edition Release 9.2.0.5.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Oracle Data Mining options
JServer Release 9.2.0.5.0 - ProductionSQL> select status from v$instance;STATUS
------------
OPENSQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination F:\CLONE\log
Oldest online log sequence 0
Next log sequence to archive 1
Current log sequence 1
SQL>