1,用rman做一个数据库的全备份
2,新创建一个辅助的instance,将instance startup nomount
3,根据数据库的rman备份来复制产生一个新库[@more@] 下面是我做的测试例子,具体还是看看
Oracle9i Recovery Manager User's Guide
Release 2 (9.2)
Part Number A96566-01
6 RMAN Concepts II: Restore, Recovery, and Duplication
C:>rman target / auxiliary sys/test@test
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: WORLD (DBID=516573805)
已连接到备用数据库: test (未安装)
RMAN> run {
2> allocate auxiliary channel ch1 type disk;
3> duplicate target database to 'test'
4> logfile group 1 ('c:oracleoradata est edo01.log') size 100k,
5> group 2 ('c:oracleoradata est edo02.log') size 100k;
6> release channel ch1;
7> }
正在使用目标数据库控制文件替代恢复目录
分配的通道: ch1
通道 ch1: sid=12 devtype=DISK
启动 Duplicate Db 于 25-8月 -05
正在打印存储的脚本: Memory Script
{
set until scn 2593883;
set newname for datafile 1 to
"C:ORACLEORADATATESTSYSTEM01.DBF";
set newname for datafile 2 to
"C:ORACLEORADATATESTUNDOTBS01.DBF";
set newname for datafile 3 to
"C:ORACLEORADATATESTCWMLITE01.DBF";
set newname for datafile 4 to
"C:ORACLEORADATATESTDRSYS01.DBF";
set newname for datafile 5 to
"C:ORACLEORADATATESTEXAMPLE01.DBF";
set newname for datafile 6 to
"C:ORACLEORADATATESTINDX01.DBF";
set newname for datafile 7 to
"C:ORACLEORADATATESTODM01.DBF";
set newname for datafile 8 to
"C:ORACLEORADATATESTTOOLS01.DBF";
set newname for datafile 9 to
"C:ORACLEORADATATESTUSERS01.DBF";
set newname for datafile 10 to
"C:ORACLEORADATATESTXDB01.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
启动 restore 于 25-8月 -05
通道 ch1: 正在开始恢复数据文件备份集
通道 ch1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到C:ORACLEORADATATESTSYSTEM01.DBF
正将数据文件00002恢复到C:ORACLEORADATATESTUNDOTBS01.DBF
正将数据文件00003恢复到C:ORACLEORADATATESTCWMLITE01.DBF
正将数据文件00004恢复到C:ORACLEORADATATESTDRSYS01.DBF
正将数据文件00005恢复到C:ORACLEORADATATESTEXAMPLE01.DBF
正将数据文件00006恢复到C:ORACLEORADATATESTINDX01.DBF
正将数据文件00007恢复到C:ORACLEORADATATESTODM01.DBF
正将数据文件00008恢复到C:ORACLEORADATATESTTOOLS01.DBF
正将数据文件00009恢复到C:ORACLEORADATATESTUSERS01.DBF
正将数据文件00010恢复到C:ORACLEORADATATESTXDB01.DBF
通道 ch1: 已恢复备份段 1
段 handle=C:ORACLEORA92DATABASE2GSTTOQ_1_1 tag=TAG20050824T225002 params=N
LL
通道 ch1: 恢复完成
完成 restore 于 25-8月 -05
sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "test" RESETLOGS ARCHIVELOG
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'c:oracleoradata est edo01.log' ) SIZE 102400 ,
GROUP 2 ( 'c:oracleoradata est edo02.log' ) SIZE 102400
DATAFILE
'C:ORACLEORADATATESTSYSTEM01.DBF'
CHARACTER SET ZHS16GBK
正在打印存储的脚本: Memory Script
{
switch clone datafile all;
}
正在执行脚本: Memory Script
数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=1 stamp=567248609 文件名=C:ORACLEORADATATESTUNDOTBS0
.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=2 stamp=567248609 文件名=C:ORACLEORADATATESTCWMLITE0
.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=3 stamp=567248609 文件名=C:ORACLEORADATATESTDRSYS01.
BF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=4 stamp=567248610 文件名=C:ORACLEORADATATESTEXAMPLE0
.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=5 stamp=567248610 文件名=C:ORACLEORADATATESTINDX01.D
F
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=6 stamp=567248610 文件名=C:ORACLEORADATATESTODM01.DB
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=7 stamp=567248610 文件名=C:ORACLEORADATATESTTOOLS01.
BF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=8 stamp=567248610 文件名=C:ORACLEORADATATESTUSERS01.
BF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=9 stamp=567248610 文件名=C:ORACLEORADATATESTXDB01.DB
正在打印存储的脚本: Memory Script
{
set until scn 2593883;
recover
clone database
delete archivelog
;
}
正在执行脚本: Memory Script
正在执行命令: SET until clause
启动 recover 于 25-8月 -05
正在开始介质的恢复
存档日志线程 1 序列 25 已作为文件 C:ORACLEORA92RDBMSARC00025.001 存在于磁盘
上
存档日志线程 1 序列 26 已作为文件 C:ORACLEORA92RDBMSARC00026.001 存在于磁盘
上
存档日志线程 1 序列 27 已作为文件 C:ORACLEORA92RDBMSARC00027.001 存在于磁盘
上
存档日志文件名 =C:ORACLEORA92RDBMSARC00025.001 线程 =1 序列 =25
存档日志文件名 =C:ORACLEORA92RDBMSARC00026.001 线程 =1 序列 =26
存档日志文件名 =C:ORACLEORA92RDBMSARC00027.001 线程 =1 序列 =27
完成介质的恢复
完成 recover 于 25-8月 -05
正在打印存储的脚本: Memory Script
{
shutdown clone;
startup clone nomount ;
}
正在执行脚本: Memory Script
数据库已卸载
Oracle 例程已关闭
已连接到备用数据库 (未启动)
Oracle 例程已启动
系统全局区域总计 105978600 字节
Fixed Size 453352 字节
Variable Size 83886080 字节
Database Buffers 20971520 字节
Redo Buffers 667648 字节
sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "test" RESETLOGS ARCHIVELOG
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'c:oracleoradata est edo01.log' ) SIZE 102400 ,
GROUP 2 ( 'c:oracleoradata est edo02.log' ) SIZE 102400
DATAFILE
'C:ORACLEORADATATESTSYSTEM01.DBF'
CHARACTER SET ZHS16GBK
正在打印存储的脚本: Memory Script
{
catalog clone datafilecopy "C:ORACLEORADATATESTUNDOTBS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTCWMLITE01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTDRSYS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTEXAMPLE01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTINDX01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTODM01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTTOOLS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTUSERS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTXDB01.DBF";
switch clone datafile all;
}
正在执行脚本: Memory Script
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTUNDOTBS01.DBF recid=1 stamp=567248
43
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTCWMLITE01.DBF recid=2 stamp=567248
43
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTDRSYS01.DBF recid=3 stamp=56724864
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTEXAMPLE01.DBF recid=4 stamp=567248
43
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTINDX01.DBF recid=5 stamp=567248644
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTODM01.DBF recid=6 stamp=567248644
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTTOOLS01.DBF recid=7 stamp=56724864
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTUSERS01.DBF recid=8 stamp=56724864
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTXDB01.DBF recid=9 stamp=567248645
数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=1 stamp=567248643 文件名=C:ORACLEORADATATESTUNDOTBS0
.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=2 stamp=567248643 文件名=C:ORACLEORADATATESTCWMLITE0
.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=3 stamp=567248643 文件名=C:ORACLEORADATATESTDRSYS01.
BF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=4 stamp=567248643 文件名=C:ORACLEORADATATESTEXAMPLE0
.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=5 stamp=567248644 文件名=C:ORACLEORADATATESTINDX01.D
F
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=6 stamp=567248644 文件名=C:ORACLEORADATATESTODM01.DB
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=7 stamp=567248644 文件名=C:ORACLEORADATATESTTOOLS01.
BF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=8 stamp=567248644 文件名=C:ORACLEORADATATESTUSERS01.
BF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=9 stamp=567248645 文件名=C:ORACLEORADATATESTXDB01.DB
正在打印存储的脚本: Memory Script
{
Alter clone database open resetlogs;
}
正在执行脚本: Memory Script
数据库已打开
完成 Duplicate Db 于 25-8月 -05
2,新创建一个辅助的instance,将instance startup nomount
3,根据数据库的rman备份来复制产生一个新库[@more@] 下面是我做的测试例子,具体还是看看
Oracle9i Recovery Manager User's Guide
Release 2 (9.2)
Part Number A96566-01
6 RMAN Concepts II: Restore, Recovery, and Duplication
C:>rman target / auxiliary sys/test@test
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: WORLD (DBID=516573805)
已连接到备用数据库: test (未安装)
RMAN> run {
2> allocate auxiliary channel ch1 type disk;
3> duplicate target database to 'test'
4> logfile group 1 ('c:oracleoradata est edo01.log') size 100k,
5> group 2 ('c:oracleoradata est edo02.log') size 100k;
6> release channel ch1;
7> }
正在使用目标数据库控制文件替代恢复目录
分配的通道: ch1
通道 ch1: sid=12 devtype=DISK
启动 Duplicate Db 于 25-8月 -05
正在打印存储的脚本: Memory Script
{
set until scn 2593883;
set newname for datafile 1 to
"C:ORACLEORADATATESTSYSTEM01.DBF";
set newname for datafile 2 to
"C:ORACLEORADATATESTUNDOTBS01.DBF";
set newname for datafile 3 to
"C:ORACLEORADATATESTCWMLITE01.DBF";
set newname for datafile 4 to
"C:ORACLEORADATATESTDRSYS01.DBF";
set newname for datafile 5 to
"C:ORACLEORADATATESTEXAMPLE01.DBF";
set newname for datafile 6 to
"C:ORACLEORADATATESTINDX01.DBF";
set newname for datafile 7 to
"C:ORACLEORADATATESTODM01.DBF";
set newname for datafile 8 to
"C:ORACLEORADATATESTTOOLS01.DBF";
set newname for datafile 9 to
"C:ORACLEORADATATESTUSERS01.DBF";
set newname for datafile 10 to
"C:ORACLEORADATATESTXDB01.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
启动 restore 于 25-8月 -05
通道 ch1: 正在开始恢复数据文件备份集
通道 ch1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到C:ORACLEORADATATESTSYSTEM01.DBF
正将数据文件00002恢复到C:ORACLEORADATATESTUNDOTBS01.DBF
正将数据文件00003恢复到C:ORACLEORADATATESTCWMLITE01.DBF
正将数据文件00004恢复到C:ORACLEORADATATESTDRSYS01.DBF
正将数据文件00005恢复到C:ORACLEORADATATESTEXAMPLE01.DBF
正将数据文件00006恢复到C:ORACLEORADATATESTINDX01.DBF
正将数据文件00007恢复到C:ORACLEORADATATESTODM01.DBF
正将数据文件00008恢复到C:ORACLEORADATATESTTOOLS01.DBF
正将数据文件00009恢复到C:ORACLEORADATATESTUSERS01.DBF
正将数据文件00010恢复到C:ORACLEORADATATESTXDB01.DBF
通道 ch1: 已恢复备份段 1
段 handle=C:ORACLEORA92DATABASE2GSTTOQ_1_1 tag=TAG20050824T225002 params=N
LL
通道 ch1: 恢复完成
完成 restore 于 25-8月 -05
sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "test" RESETLOGS ARCHIVELOG
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'c:oracleoradata est edo01.log' ) SIZE 102400 ,
GROUP 2 ( 'c:oracleoradata est edo02.log' ) SIZE 102400
DATAFILE
'C:ORACLEORADATATESTSYSTEM01.DBF'
CHARACTER SET ZHS16GBK
正在打印存储的脚本: Memory Script
{
switch clone datafile all;
}
正在执行脚本: Memory Script
数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=1 stamp=567248609 文件名=C:ORACLEORADATATESTUNDOTBS0
.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=2 stamp=567248609 文件名=C:ORACLEORADATATESTCWMLITE0
.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=3 stamp=567248609 文件名=C:ORACLEORADATATESTDRSYS01.
BF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=4 stamp=567248610 文件名=C:ORACLEORADATATESTEXAMPLE0
.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=5 stamp=567248610 文件名=C:ORACLEORADATATESTINDX01.D
F
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=6 stamp=567248610 文件名=C:ORACLEORADATATESTODM01.DB
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=7 stamp=567248610 文件名=C:ORACLEORADATATESTTOOLS01.
BF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=8 stamp=567248610 文件名=C:ORACLEORADATATESTUSERS01.
BF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=9 stamp=567248610 文件名=C:ORACLEORADATATESTXDB01.DB
正在打印存储的脚本: Memory Script
{
set until scn 2593883;
recover
clone database
delete archivelog
;
}
正在执行脚本: Memory Script
正在执行命令: SET until clause
启动 recover 于 25-8月 -05
正在开始介质的恢复
存档日志线程 1 序列 25 已作为文件 C:ORACLEORA92RDBMSARC00025.001 存在于磁盘
上
存档日志线程 1 序列 26 已作为文件 C:ORACLEORA92RDBMSARC00026.001 存在于磁盘
上
存档日志线程 1 序列 27 已作为文件 C:ORACLEORA92RDBMSARC00027.001 存在于磁盘
上
存档日志文件名 =C:ORACLEORA92RDBMSARC00025.001 线程 =1 序列 =25
存档日志文件名 =C:ORACLEORA92RDBMSARC00026.001 线程 =1 序列 =26
存档日志文件名 =C:ORACLEORA92RDBMSARC00027.001 线程 =1 序列 =27
完成介质的恢复
完成 recover 于 25-8月 -05
正在打印存储的脚本: Memory Script
{
shutdown clone;
startup clone nomount ;
}
正在执行脚本: Memory Script
数据库已卸载
Oracle 例程已关闭
已连接到备用数据库 (未启动)
Oracle 例程已启动
系统全局区域总计 105978600 字节
Fixed Size 453352 字节
Variable Size 83886080 字节
Database Buffers 20971520 字节
Redo Buffers 667648 字节
sql 语句: CREATE CONTROLFILE REUSE SET DATABASE "test" RESETLOGS ARCHIVELOG
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 226
LOGFILE
GROUP 1 ( 'c:oracleoradata est edo01.log' ) SIZE 102400 ,
GROUP 2 ( 'c:oracleoradata est edo02.log' ) SIZE 102400
DATAFILE
'C:ORACLEORADATATESTSYSTEM01.DBF'
CHARACTER SET ZHS16GBK
正在打印存储的脚本: Memory Script
{
catalog clone datafilecopy "C:ORACLEORADATATESTUNDOTBS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTCWMLITE01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTDRSYS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTEXAMPLE01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTINDX01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTODM01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTTOOLS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTUSERS01.DBF";
catalog clone datafilecopy "C:ORACLEORADATATESTXDB01.DBF";
switch clone datafile all;
}
正在执行脚本: Memory Script
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTUNDOTBS01.DBF recid=1 stamp=567248
43
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTCWMLITE01.DBF recid=2 stamp=567248
43
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTDRSYS01.DBF recid=3 stamp=56724864
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTEXAMPLE01.DBF recid=4 stamp=567248
43
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTINDX01.DBF recid=5 stamp=567248644
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTODM01.DBF recid=6 stamp=567248644
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTTOOLS01.DBF recid=7 stamp=56724864
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTUSERS01.DBF recid=8 stamp=56724864
已将数据文件副本列入目录
数据文件副本 filename=C:ORACLEORADATATESTXDB01.DBF recid=9 stamp=567248645
数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=1 stamp=567248643 文件名=C:ORACLEORADATATESTUNDOTBS0
.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=2 stamp=567248643 文件名=C:ORACLEORADATATESTCWMLITE0
.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=3 stamp=567248643 文件名=C:ORACLEORADATATESTDRSYS01.
BF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=4 stamp=567248643 文件名=C:ORACLEORADATATESTEXAMPLE0
.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=5 stamp=567248644 文件名=C:ORACLEORADATATESTINDX01.D
F
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=6 stamp=567248644 文件名=C:ORACLEORADATATESTODM01.DB
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=7 stamp=567248644 文件名=C:ORACLEORADATATESTTOOLS01.
BF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=8 stamp=567248644 文件名=C:ORACLEORADATATESTUSERS01.
BF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=9 stamp=567248645 文件名=C:ORACLEORADATATESTXDB01.DB
正在打印存储的脚本: Memory Script
{
Alter clone database open resetlogs;
}
正在执行脚本: Memory Script
数据库已打开
完成 Duplicate Db 于 25-8月 -05
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/594892/viewspace-966473/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/594892/viewspace-966473/