oracle 10g asm ogg,在ASM上配置GoldenGate

最近某客户的一套数据库系统从原先的单实例迁移到RAC中,由于原先的系统上配置了OGG数据同步(将部分业务表进行同步,提供给其他系统使用),待数据库迁移完成后,需要对OGG进行重新配置工作,顺便借此机会进行OGG的升级。由于目标端数据库没有变动,因此本次OGG实施配置主要针对生产库。

以下是旧环境和新环境的基本信息:

指标

旧环境

新环境

OS

HP-UX 11.31 IA64

HP-UX 11.31 IA64

Oracle

Oracle10.2.0.4

Oracle11.2.0.3

Instance

单实例

RAC双实例

OGG

version 11.1

version 11.2.0.6

存储管理

文件系统

ASM

OGG安装路径

本地目录/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 100

threads 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配置内容,而且在参数文件里面也不需要制定归档路径的位置,它会自动去寻找归档路径。但如果要使用该参数,对数据库的版本有一定的要求,以下是官方文档对该参数的解释:

DBLOGREADER

(Oracle) Valid for Extract in classic capture

mode.

Causes Extract to use a newer ASM API that is

available as

of Oracle 10.2.0.5 and later 10g R2

versions, and Oracle

11.2.0.2 and later 11g R2 versions (but

not in Oracle 11g R1versions). This API uses the

database server to access the redo and archive logs, instead of

connecting directly to the Oracle ASM instance. The database must

contain the

libraries that contain the API modules and must be

running.

To use this feature, the Extract database user must

have

SELECT ANY TRANSACTION privilege.

在oracle11.2.0.1上面测试,报以下错误:

2014-01-20 15:34:12 ERROR OGG-00868 This version of Oracle does not

support the DBLOGREADER option

2014-01-20 15:34:12 ERROR

OGG-01668 PROCESS ABENDING

使用该参数,只需要在捕获进程参数文件里面添加好就OK了。

1)添加OGG捕获进程:

GGSCI>add extract wuhan, tranlog, begin

now,threads 2GGSCI>add exttrail ./dirdat/aa,

extract wuhan, megabytes 100

2)添加OGG捕获进程:

EXTRACT WUHAN

setenv (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)

USERID ogg, PASSWORD ogg

EXTTRAIL ./dirdat/aa

DBOPTIONS ALLOWUNUSEDCOLUMN

TRANLOGOPTIONS

DBLOGREADER

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;

总体来说,方法1配置起来步骤比方法2要繁琐些,但方法2对数据库版本有一定的要求。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值