在ASM上配置GoldenGate
在ASM上配置GoldenGate
?(2014-01-22 17:14:39)
转载▼
OGG最近某客户的一套数据库系统从原先的单实例迁移到RAC中,由于原先的系统上配置了OGG数据同步(将部分业务表进行同步,提供给其他系统使用),待数据库迁移完成后,需要对OGG进行重新配置工作,顺便借此机会进行OGG的升级。由于目标端数据库没有变动,因此本次OGG实施配置主要针对生产库。
以下是旧环境和新环境的基本信息:
指标旧环境新环境OSHP-UX 11.31 IA64HP-UX 11.31 IA64OracleOracle10.2.0.4Oracle11.2.0.3Instance单实例RAC双实例OGGversion 11.1version 11.2.0.6存储管理文件系统ASMOGG安装路径本地目录/ogg节点2上面的目录/ogg由于新环境数据文件是通过ASM来管理的,并且数据库的在线日志和归档日志都是统一存在在ASM磁盘组中,因此在配置OGG捕获进程参数的时候,为了读取ASM上面的redo log和archive log ,需要设置登陆ASM实例的相关参数。
Oracle GoldenGate extract 进程访问 ASM 中存放的 transaction log 主要有2种方式:
1、 以 sys用户直接连接 ASM 实例访问
2、 在 Oracle 10.2.0.5、Oracle 11.2.0.2 版本和后续版本的数据库中,Oracle 提供了一个新的 ASM API接口 ,可以让 extract 进程直接利用数据库服务器来访问 redo 和 archive log。使用该 API 后,extract 将获得一个最大不超过 4 mb 的read buffer。read buffer 越大,对于 redo 量较高的 环境越容易提高 Extract 的进程。可以通过使用 TRANLOGOPTIONS 的 DBLOGREADERBUFSIZE 选项来指定read buffer 的大小。
下面我们就这2种方式介绍下具体步骤:
方法1:
1)修改节点2的tnsnames.ora文件,添加以下内容:
ASM2 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.203)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = +ASM)(INSTANCE_NAME = +ASM2)))2)添加OGG捕获进程:
GGSCI>add extract wuhan, tranlog, begin now,threads 2GGSCI>add exttrail ./dirdat/aa, extract wuhan, megabytes 100threads 2-----针对RAC模式的必选,代表是2个节点的双实例
3) 添加OGG捕获进程参数:
EXTRACT WUHAN
setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID ogg, PASSWORD ogg
--配置登陆ASM实例
TRANLOGOPTIONS ASMUSER SYS@+ASM2, ASMPASSWORD oracle
EXTTRAIL ./dirdat/aa
DBOPTIONS ALLOWUNUSEDCOLUMN
--配置归档路径位置
TRANLOGOPTIONS ALTARCHIVELOGDEST primary instance EVEN1 +data/archivelog, ALTARCHIVELOGDEST primary instance EVEN2 +data/archivelog
table his_dba.HIS_CARD_T;
table his_dba.HIS_PHOTO_T;
table his_dba.HIS_TRACE_T;
table his_dba.HIS_GROUP_T;
table his_dba.HIS_GROUP_RELATION_T;
table his_dba.HIS_REPORT_T;
table his_dba.HIS_LOST_T;
table his_dba.HIS_APPLY_INFO_T;
table his_dba.HIS_ERROR_INFO_T;
table his_dba.HIS_SSMZ_T;方法2:
OGG11g提供一个新的参数:DBLOGREADER
使用该参数,我们就不需要配置登陆ASM所需要的TNS配置内容,而且在参数文件里