使用rman中的duplicate复制数据库
[oracle@hxl01 dbs]$orapwd file=orapworaclbak password=oracle entries=10 force=y
mkdir -p /u01/app/oracle/admin/oracl/bdump
mkdir -p /u01/app/oracle/admin/oracl/cdump
mkdir -p /u01/app/oracle/admin/oracl/dpdump
mkdir -p /u01/app/oracle/admin/oracl/pfile
mkdir -p /u01/app/oracle/admin/oracl/udump
mkdir -p /u01/app/oracle/oradata/oracl
mkdir -p /u01/app/oracle/flash_recovery_area
将在target上创建的pfile(initoracl.ora,具体创建步骤参考3.1)拷贝到Duplicate,修改参数(*.db_name='oraclbak'),其他跟目标库保持一致,然后创建spfile.
Sql>create spfile from pfile='/u01/app/oracle/product/10.2.0/db_1/dbs/initoracl.ora';
Sql>startup nomount;
[oracle@hxl01 dbs]$netca
[oracle@hxl01 dbs]$netmgr
Sql>shutdown immediate;
Sql>startup mount;
Sql>alter database archivelog;
sql>alter system set log_archive_dest_1='LOCATION=/u01/app/oracle/duplicate' scope=both;
sql>alter database open;
Rman>run{
set maxcorrupt for datafile 5 to 20;
allocate channel dup type disk;
backup format '/u01/app/oracle/duplicate/df_t%t_s%s_p%p' database;
sql 'alter system archive log current';
backup format '/u01/app/oracle/duplicate/al_t%t_s%s_p%p' archivelog all delete input;
release channel dup;
}
4.复制数据库
duplicate target database to oraclbak nofilenamecheck
logfile group 1 ('/u01/app/oracle/oradata/oracl/redo1_1.log','/u01/app/oracle/oradata/oracl/redo1_2.log') size 512M,
group 2 ('/u01/app/oracle/oradata/oracl/redo2_1.log','/u01/app/oracle/oradata/oracl/redo2_2.log') size 512M,
group 3 ('/u01/app/oracle/oradata/oracl/redo3_1.log','/u01/app/oracle/oradata/oracl/redo3_2.log') size 512M;
}
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=156 devtype=DISK
contents of Memory Script:
{
set until scn 1556049;
set newname for datafile 1 to
"/u01/app/oracle/oradata/oracl/system01.dbf";
set newname for datafile 2 to
"/u01/app/oracle/oradata/oracl/undotbs01.dbf";
set newname for datafile 3 to
"/u01/app/oracle/oradata/oracl/sysaux01.dbf";
set newname for datafile 4 to
"/u01/app/oracle/oradata/oracl/users01.dbf";
set newname for datafile 5 to
"/u01/app/oracle/oradata/oracl/hxl01.dbf";
restore
check readonly
clone database
;
}
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 13-FEB-12
using channel ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: starting datafile backupset restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/app/oracle/oradata/oracl/system01.dbf
restoring datafile 00002 to /u01/app/oracle/oradata/oracl/undotbs01.dbf
restoring datafile 00003 to /u01/app/oracle/oradata/oracl/sysaux01.dbf
restoring datafile 00004 to /u01/app/oracle/oradata/oracl/users01.dbf
restoring datafile 00005 to /u01/app/oracle/oradata/oracl/hxl01.dbf
channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/duplicate/df_t775114282_s89_p1
channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=/u01/app/oracle/duplicate/df_t775114282_s89_p1 tag=TAG20120213T053120
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:47
Finished restore at 13-FEB-12
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "ORACL" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 ( '/u01/app/oracle/oradata/oracl/redo1_1.log', '/u01/app/oracle/oradata/oracl/redo1_2.log' ) SIZE 512 M ,
GROUP 2 ( '/u01/app/oracle/oradata/oracl/redo2_1.log', '/u01/app/oracle/oradata/oracl/redo2_2.log' ) SIZE 512 M ,
GROUP 3 ( '/u01/app/oracle/oradata/oracl/redo3_1.log', '/u01/app/oracle/oradata/oracl/redo3_2.log' ) SIZE 512 M
DATAFILE
'/u01/app/oracle/oradata/oracl/system01.dbf'
CHARACTER SET AL32UTF8
contents of Memory Script:
{
switch clone datafile all;
}
executing Memory Script
released channel: ORA_AUX_DISK_1
datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=775102986 filename=/u01/app/oracle/oradata/oracl/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=775102987 filename=/u01/app/oracle/oradata/oracl/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=775102987 filename=/u01/app/oracle/oradata/oracl/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=775102987 filename=/u01/app/oracle/oradata/oracl/hxl01.dbf
contents of Memory Script:
{
set until scn 1556049;
recover
clone database
delete archivelog
;
}
executing Memory Script
executing command: SET until clause
Starting recover at 13-FEB-12
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: sid=156 devtype=DISK
starting media recovery
channel ORA_AUX_DISK_1: starting archive log restore to default destination
channel ORA_AUX_DISK_1: restoring archive log
archive log thread=1 sequence=47
channel ORA_AUX_DISK_1: restoring archive log
archive log thread=1 sequence=48
channel ORA_AUX_DISK_1: reading from backup piece /u01/app/oracle/duplicate/al_t775114352_s91_p1
channel ORA_AUX_DISK_1: restored backup piece 1
piece handle=/u01/app/oracle/duplicate/al_t775114352_s91_p1 tag=TAG20120213T053230
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:16
archive log filename=/u01/app/oracle/flash_recovery_area/ORACL/archivelog/2012_02_13/o1_mf_1_47_7mj0wydg_.arc thread=1 sequence=47
channel clone_default: deleting archive log(s)
archive log filename=/u01/app/oracle/flash_recovery_area/ORACL/archivelog/2012_02_13/o1_mf_1_47_7mj0wydg_.arc recid=2 stamp=775103016
archive log filename=/u01/app/oracle/flash_recovery_area/ORACL/archivelog/2012_02_13/o1_mf_1_48_7mj0x0qm_.arc thread=1 sequence=48
channel clone_default: deleting archive log(s)
archive log filename=/u01/app/oracle/flash_recovery_area/ORACL/archivelog/2012_02_13/o1_mf_1_48_7mj0x0qm_.arc recid=1 stamp=775103009
media recovery complete, elapsed time: 00:00:09
Finished recover at 13-FEB-12
contents of Memory Script:
{
shutdown clone;
startup clone nomount ;
}
executing Memory Script
database dismounted
Oracle instance shut down
connected to auxiliary database (not started)
Oracle instance started
Total System Global Area 524288000 bytes
Fixed Size 1220360 bytes
Variable Size 138412280 bytes
Database Buffers 381681664 bytes
Redo Buffers 2973696 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "ORACL" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 ( '/u01/app/oracle/oradata/oracl/redo1_1.log', '/u01/app/oracle/oradata/oracl/redo1_2.log' ) SIZE 512 M ,
GROUP 2 ( '/u01/app/oracle/oradata/oracl/redo2_1.log', '/u01/app/oracle/oradata/oracl/redo2_2.log' ) SIZE 512 M ,
GROUP 3 ( '/u01/app/oracle/oradata/oracl/redo3_1.log', '/u01/app/oracle/oradata/oracl/redo3_2.log' ) SIZE 512 M
DATAFILE
'/u01/app/oracle/oradata/oracl/system01.dbf'
CHARACTER SET AL32UTF8
contents of Memory Script:
{
set newname for tempfile 1 to
"/u01/app/oracle/oradata/oracl/temp01.dbf";
switch clone tempfile all;
catalog clone datafilecopy "/u01/app/oracle/oradata/oracl/undotbs01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/oracl/sysaux01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/oracl/users01.dbf";
catalog clone datafilecopy "/u01/app/oracle/oradata/oracl/hxl01.dbf";
switch clone datafile all;
}
executing Memory Script
executing command: SET NEWNAME
renamed temporary file 1 to /u01/app/oracle/oradata/oracl/temp01.dbf in control file
cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/oracl/undotbs01.dbf recid=1 stamp=775103080
cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/oracl/sysaux01.dbf recid=2 stamp=775103081
cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/oracl/users01.dbf recid=3 stamp=775103083
cataloged datafile copy
datafile copy filename=/u01/app/oracle/oradata/oracl/hxl01.dbf recid=4 stamp=775103084
datafile 2 switched to datafile copy
input datafile copy recid=1 stamp=775103080 filename=/u01/app/oracle/oradata/oracl/undotbs01.dbf
datafile 3 switched to datafile copy
input datafile copy recid=2 stamp=775103081 filename=/u01/app/oracle/oradata/oracl/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy recid=3 stamp=775103083 filename=/u01/app/oracle/oradata/oracl/users01.dbf
datafile 5 switched to datafile copy
input datafile copy recid=4 stamp=775103084 filename=/u01/app/oracle/oradata/oracl/hxl01.dbf
contents of Memory Script:
{
Alter clone database open resetlogs;
}
executing Memory Script
database opened
Finished Duplicate Db at 13-FEB-12
数据库打开后使用sysdba登陆提示ORA-01031: insufficient privileges,找了半天原因是密码文件命名问题, 之前创建密码文件名为orapwdoraclbak,将其修改为orapworaclbak,问题解决,注意在linux下密码文件的命名格式为orapw+sid.
SQL> connect sys/oracle@dup_oracl as sysdba
ERROR:
ORA-01031: insufficient privileges
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 02/14/2012 01:01:41
RMAN-03015: error occurred in stored script Memory Script
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of log thread 1 seq 53 lowscn 1597845 found to restore
SET until sequence 52;
duplicate target database to oraclbak nofilenamecheck
logfile group 1 ('/u01/app/oracle/oradata/oracl/redo1_1.log','/u01/app/oracle/oradata/oracl/redo1_2.log') size 512M,
group 2 ('/u01/app/oracle/oradata/oracl/redo2_1.log','/u01/app/oracle/oradata/oracl/redo2_2.log') size 512M,
group 3 ('/u01/app/oracle/oradata/oracl/redo3_1.log','/u01/app/oracle/oradata/oracl/redo3_2.log') size 512M;
}
使用rman中的duplicate复制数据库的更多相关文章
- 11g 使用rman duplicate复制数据库,创建辅助实例
一,创建所需目录 1)创建审计文件目录 PROD1@dbrac1 /dsg/oracle11$ cd $ORACLE_BASE/admin PROD1@dbrac1 /u01/app/oracle/a ...
- Oracle 11gR2使用RMAN duplicate复制数据库
11g的RMAN duplicate 个人感觉比10g的先进了很多,10g需在rman备份的基础上进行复制,使用RMAN duplicate创建一个数据完全相同但DBID不同的数据库.而11g的RMA ...
- Oracle 11gR2 使用RMAN Duplicate复制数据库
Oracle 11gR2 使用RMAN Duplicate复制数据库 前言: 上周刚做完一个项目,用户要求RAC的数据库可以自己主动备份到另外一个单节点上,单节点可以正常拿起来就能用. ...
- Duplicate复制数据库并创建物理StandBy(spfile+不同实例名+不同路径)
过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 ...
- Duplicate复制数据库并创建物理StandBy(spfile+不同实例名)
过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 ...
- Duplicate复制数据库并创建物理StandBy(spfile版本)
过程和Duplicate复制数据库并创建物理StandBy类似,只是不需要重启数据库. 目的:创建standby,不重启源数据库 1设定环境如下: Primary数据库 IP 172.17.22.16 ...
- Duplicate 复制数据库 搭建Dataguard
1 操作系统环境 此处隐藏具体信息 System IP-address db_name db_version Comment Target DB Auxiliary D ...
- RMAN_学习实验2_RMAN Duplicate复制数据库过程(案例)
待整理 对于基于生产环境下的数据库的版本升级或者测试新的应用程序的性能及其影响,备份恢复等等,我们可以采取从生产环境以克隆的方式将其克隆到本地而不影响生产数据库的正常使用.实现这个功能我们可以借助rm ...
- RMAN中建立Catalog 用数据库的例子
RMAN中可以备份metadata到control文件,也可以备份metadata到数据库中,此数据库称为catalog database. 本文参考网上文章,建立一个例子: 使用机器: 机器1:ta ...
随机推荐
- C#获取项目程序及运行路径的方法
1.asp.net webform用“Request.PhysicalApplicationPath获取站点所在虚拟目录的物理路径,最后包含“\”: 2.c# winform用 A:“Applicat ...
- struts2DMI(动态方法调用)
DMI(Dynamic Method Invoke)即动态,是strus2的一个特性,我们知道,在最开始学习strus2时,往往一个action中只有一个excute方法,比如说add,delete, ...
- jsp MVC学习笔记
Model层: 四个包: com.maker.bean存放数据库里面的字段信息. package com.maker.bean; public class User { private String ...
- 使用Dmitry Sklyarov的方法来破解一款流行的4G调制解调器
逆向工程师如果对设备代码和固件系统进行检测时,发现了许多经过加密处理的固件文件,该怎么办?在本文中我将通过一个真实的故事来教大家如何利用一些基础的计算机知识以及简单的逻辑来应对这一问题. 因为这篇文章 ...
- vijos 1779 国王游戏
练了一下高精度..结果敲了这么久... #include<iostream> #include<cstdio> #include<cstring> #include ...
- bootstrap菜单完美解决---原创
由于bootstrap的各方优点,偶的“点金项目细化分包管理平台”决定采用它.但在使用中遇到了一些问题,比如菜单的问题,这个菜单是用的一个JQuery的一个效果,点击后,所点击的链接处的class要加 ...
- 并列div自动等高
并列div自动等高 方法一:css控制 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- select2美化下拉单
http://www.51xuediannao.com/js/jquery/select2.html http://www.51xuediannao.com/demo.php
- 【转】编写更好的CSS代码
原文转自:http://blog.jobbole.com/55067/ 编写好的CSS代码,有助提升页面的渲染速度.本质上,引擎需要解析的CSS规则越少,性能越好.MDN上将CSS选择符归类成四个主要 ...
- 联合与枚举 、 高级指针 、 C语言标准库(一)
1 输入一个整数,求春夏秋冬 1.1 问题 在实际应用中,有的变量只有几种可能取值.如人的性别只有两种可能取值,星期只有七种可能取值.在 C 语言中对这样取值比较特殊的变量可以定义为枚举类型.所谓枚举 ...