Oracle DUPLICATE复制数据库(二)

2014-11-24 09:26:05 · 作者: · 浏览: 5
02.LOG' 20M,
'F:\oracle\product\10.2.0\oradata\orcldup\REDO03.LOG' 20M;
#使用set newname命令重命名数据文件:创建辅助实例;RMAN连接目标数据库和辅助实例;SET NEWNAME
命令设置数据文件路径。DUPLICATE命令复制数据库
RMAN>RUN{
#SET NEW FILENAMES FOR THE DATAFILES
SET NEWNAME FOR DATAFILE 1 TO 'F:\oracle\product\10.2.0\oradata\orcldup\SYSTEM01.DBF';
SET NEWNAME FOR DATAFILE 1 TO 'F:\oracle\product\10.2.0\oradata\orcldup\UNDOTBS01.DBF';
#ISSUE THE DUPLICATE COMMAND
duplicate target database to orcldup
#CREATE AT LEAST TWO ONLINE REDO LOG GROUPS
使用CONFIGURE AUXNAME 命令重命名数据文件
#configure the new desired filenames
configure auxname for datafile 1 to 'F:\oracle\product\10.2.0\oradata\orcldup\SYSTEM01.DBF'
configure auxname for datafile 1 to 'F:\oracle\product\10.2.0\oradata\orcldup\undotbs01.DBF' www.2cto.com
configure auxname命令是在run块外执行的,而且建议在duplicate命令执行玩之后,清楚configure
auxname,这样就不会对未来的类似操作造成影响。
#clear specified auxiliary names for the datafiles
configure auxname for datafile 1 clear;
configure auxname for datafile 2 clear;
三、CATALOG模式本地完整复制目标数据库ORCL到副本数据库ORCLDUP
1.创建辅助实例
a.创建辅助实例的密钥文件
C:/>orapwd file=F:\oracle\product\10.2.0\db_1\database\PWDorcldup.ora password=lyn
entires=30
b.创建OracleService
C:/>oradim -new -sid orcldup -startmode manual
c.配置初始化参数文件
F:\oracle\product\10.2.0\admin>mkdir orcldup
F:\oracle\product\10.2.0\admin\orcldup>mkdir adump bdump cdump pfile udump
NOTE:辅助实例的初始化参数中的BLOCK_SIZE必须与目标数据库相同,如果目标库的参数文件
包括DB_BLOCK_SIZE参数,你必须指定辅助实例中该参数的值与目标库相同,如果目标DB中没有,
辅助实例也不必指定。如果duplicate db与target db在同一台机器上,Duplicate数据库的DB_NAME
不能与目标数据库相同。如果Duplicate数据库与目标数据库不爱同一台机器,需要注意各项初始化
参数中的路径,必须确认该路径对于Duplicate数据库有效。
初始化参数文件init.ora的内容如下:
DB_NAME='orcldup'
control_files='F:\oracle\product\10.2.0\oradata\orcldup\control01.ctl','F:\oracle\product\10.2.0\oradata\orcldup\control02.ctl','F:\oracle\product\10.2.0\oradata\orcldup\control03.ctl'
shared_pool_size=200000000
db_block_size=8192 www.2cto.com
db_file_name_convert=('F:\oracle\product\10.2.0\oradata\orcl','F:\oracle\product\10.2.0\oradata\orcldup')
log_file_name_convert=('F:\oracle\product\10.2.0\oradata\orcl','F:\oracle\product\10.2.0\oradata\orcldup')
audit_file_dest='F:\oracle\product\10.2.0\admin\orcldup\adump'
background_dump_dest='F:\oracle\product\10.2.0\admin\orcldup\bdump'
compatible='10.2.0.3.0'
core_dump_dest='F:\oracle\product\10.2.0\admin\orcldup\cdump'
user_dump_dest='F:\oracle\product\10.2.0\admin\orcldup\udump'
根据初始化参数文件inti.ora创建spfile
C:/>set oracle_sid=orcldup
C:/>sqlplus / as sysdba
SQL>create spfile from pfile='F:\oracle\product\10.2.0\db_1\database\init.ora';
SQL>startup nomount
d.配置监听和网络服务名
修改listener.ora文件,添加如下内容
(SID_DESC =
(GLOBAL_DBNAME = orcldup)
(ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
(SID_NAME = orcldup)
)
修改tnsnames.ora文件,添加如下内容
ORCLDUP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.29.38)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCLDUP)
)
)
重启监听 C:/>LSNRCTL RELOAD
2.启动目标数据库到MOUNT或OPEN模式
C:/>sqlplus / as sys