Welcome 微信登录

首页 / 数据库 / MySQL / 不停机进行Oracle数据库克隆的实验

目标:主库不停机,搭建出一个测试环境,允许少量的数据不同步,不用逻辑导入导出,使用rman实现同机复制数据库-131服务器上将PROD库通过rman-duplicate target database to PRODDUP1的方式进行复制131服务器是建在VMware上的Linux虚拟机服务器192.168.182.131OEL5.8_32Oracle 11.2.0.1.0 32bit
 [oracle@oelr5u8-1 admin]$ uname -a
 Linux oelr5u8-1.localdomain 2.6.32-300.10.1.el5uek #1 SMP Wed Feb 22 17:22:40 EST 2012 i686 i686 i386 GNU/Linux
 
SYS@PROD>select * from v$version;BANNER
 --------------------------------------------------------------------------------
 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
 PL/SQL Release 11.2.0.1.0 - Production
 CORE    11.2.0.1.0      Production
 TNS for Linux: Version 11.2.0.1.0 - Production
 NLSRTL Version 11.2.0.1.0 - Production 
过程中会经过几种测试:
 1. 尝试不作任何配置,直接执行duplicate target database to PRODDUP1;
 RMAN> duplicate target database to PRODDUP1;Starting Duplicate Db at 05-APR-14
 RMAN-00571: ===========================================================
 RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
 RMAN-00571: ===========================================================
 RMAN-03002: failure of Duplicate Db command at 04/05/2014 11:10:29
 RMAN-06174: not connected to auxiliary database
 --DUPLICATE命令作为RMAN中的一个命令,要创建Duplicate数据库,首先就得保证RMAN客户端能够正常连接到目标数据库(PROD)和启动到NOMOUNT状态的辅助实例(即上面报错的“auxiliary database”)
 
2.  尝试完整的实战-参考三思的教程,感谢!
 本地创建Duplicate数据库
 复杂度最高,由于本地创建Duplicate数据库,新创建的文件路径不能与目标数据库相同,本地创建需要注意辅助实例初始化参数中DB_NAME与目标数据库不能相同。
 核心要求:
 保证辅助实例的初始化参数中文件路径的正确有效
 执行DUPLICATE命令时,注意与辅助实例初始化参数设置的配合2.1)  创建辅助实例 auxiliary instance
 2.1.1) 创建辅助实例的密钥文件
 orapwd file=orapwPRODDUP1 password=oracle
 2.1.2) 指定环境变量ORACLE_SID--auxiliary instance
 export ORACLE_SID=PRODDUP1
 2.1.3) 配置初始化参数文件
 由于11g与10g管理目录的区别,在11g库中查询:
 audit_file_dest                      string      /u01/app/oracle/admin/PROD/adump
 background_dump_dest               string      /u01/app/oracle/diag/rdbms/prod/PROD/trace
 core_dump_dest                     string      /u01/app/oracle/diag/rdbms/prod/PROD/cdump
 user_dump_dest                     string      /u01/app/oracle/diag/rdbms/prod/PROD/trace
 并且参数文件initPROD.ora中只指定了audit_file_dest,我们这里只手工创建路径adump,其他路径看ORACLE是否能够自动创建
 cd $ORACLE_BASE/admin
 mkdir -p ./PRODDUP1/adump下面创建其他数据库文件(控制文件、日志文件、数据文件)的路径:
 mkdir -p /u01/app/oracle/oradata/PRODDUP1/disk1
 mkdir -p /u01/app/oracle/oradata/PRODDUP1/disk2
 mkdir -p /u01/app/oracle/oradata/PRODDUP1/disk3
 mkdir -p /u01/app/oracle/oradata/PRODDUP1/disk4
 mkdir -p /u01/app/oracle/oradata/PRODDUP1/disk5下面修改参数文件内容,先进行复制
 cd $ORACLE_HOME/dbs
 cp initPROD.ora initPRODDUP1.ora
 vi initPRODDUP1.ora
 PROD.__db_cache_size=230686720
 PROD.__java_pool_size=4194304
 PROD.__large_pool_size=4194304
 PROD.__oracle_base="/u01/app/oracle"#ORACLE_BASE set from environment
 PROD.__pga_aggregate_target=314572800
 PROD.__sga_target=419430400
 PROD.__shared_io_pool_size=0
 PROD.__shared_pool_size=163577856
 PROD.__streams_pool_size=8388608
 *.audit_file_dest="/u01/app/oracle/admin/PROD/adump"
 *.audit_trail="db"
 *.compatible="11.2.0"
 *.control_files="/u01/app/oracle/oradata/PROD/disk1/control01.ctl","/u01/app/oracle/oradata/PROD/disk2/control02.ctl","/u01/app/oracle/oradata/PROD/disk3/control03.ctl"
 *.db_block_size=8192
 *.db_domain=""
 *.db_name="PROD"
 *.db_recovery_file_dest="/home/oracle/flash"
 *.db_recovery_file_dest_size=2G
 *.diagnostic_dest="/u01/app/oracle"
 *.dispatchers="(PROTOCOL=TCP) (SERVICE=ORCLXDB)"
 *.local_listener="listener2"
 *.log_archive_dest_1="location=/home/oracle/arch"
 *.memory_target=700M
 *.open_cursors=300
 *.processes=150
 *.remote_login_passwordfile="EXCLUSIVE"
 *.sga_target=400M
 *.undo_management="auto"
 *.undo_tablespace="UNDOTBS1"改为:
 PRODDUP1.__db_cache_size=230686720
 PRODDUP1.__java_pool_size=4194304
 PRODDUP1.__large_pool_size=4194304
 PRODDUP1.__oracle_base="/u01/app/oracle"#ORACLE_BASE set from environment
 PRODDUP1.__pga_aggregate_target=314572800
 PRODDUP1.__sga_target=419430400
 PRODDUP1.__shared_io_pool_size=0
 PRODDUP1.__shared_pool_size=163577856
 PRODDUP1.__streams_pool_size=8388608
 *.audit_file_dest="/u01/app/oracle/admin/PRODDUP1/adump"
 *.audit_trail="db"
 *.compatible="11.2.0"
 *.control_files="/u01/app/oracle/oradata/PRODDUP1/disk1/control01.ctl","/u01/app/oracle/oradata/PRODDUP1/disk2/control02.ctl","/u01/app/oracle/oradata/PRODDUP1/disk3/control03.ctl"
 *.db_block_size=8192
 *.db_domain=""
 *.db_name="PRODDUP1"
 *.db_recovery_file_dest="/home/oracle/flash"
 *.db_recovery_file_dest_size=2G
 *.diagnostic_dest="/u01/app/oracle"
 *.dispatchers="(PROTOCOL=TCP) (SERVICE=ORCLXDB)"
 *.local_listener="listener2"
 *.log_archive_dest_1="location=/home/oracle/arch"
 *.memory_target=700M
 *.open_cursors=300
 *.processes=150
 *.remote_login_passwordfile="EXCLUSIVE"
 *.sga_target=400M
 *.undo_management="auto"
 *.undo_tablespace="UNDOTBS1"
 ## add for duplicate
 DB_FILE_NAME_CONVERT="PROD","PRODDUP1"
 LOG_FILE_NAME_CONVERT="PROD","PRODDUP1"
  • 1
  • 2
  • 下一页
Oracle 10g到11g的数据库迁移实验Oracle建表后插入一条记录占用的段空间为什么是0.0625M相关资讯      Oracle数据库  Oracle数据库克隆 
  • Oracle数据库全球化  (03月01日)
  • 如何利用Direct NFS克隆Oracle数据  (05/04/2015 18:59:42)
  • Oracle数据库无法使用localhost和  (11/14/2014 16:39:10)
  • 在CentOS 6.6上搭建C++运行环境并  (10/10/2015 19:44:40)
  • Oracle数据库日期过滤方法性能比较  (02/02/2015 13:20:26)
  • Oracle数据库安装中端口被占用问题  (10/29/2014 07:42:24)
本文评论 查看全部评论 (0)
表情: 姓名: 字数

版权所有©石家庄振强科技有限公司2024 冀ICP备08103738号-5 网站地图