ALLSTARS_ORACLE 发表于 2013-9-23 12:06:09

GOLDENGATE for DB2 安装配置方案

1.        源端软件安装
a)        由数据库管理员创建GGS软件安装目录:
                        /ggsfs
                mkdir /ggsfs/ggs;
                chown –R db2inst1:db2iadm /ggsfs/ggs; 修改目录的属主和属组。
说明:请确认已按照安装准备要求将OGG所在的文件系统放置在阵列上,可以提高性能和高可用性。
b)        使用db2inst1用户(如非此用户,请自行取代,下同)通过ftp上传GGS软件并解压缩:
                tar zxvf *.gz
                或者分两步解压:
                gunzip *.gz 或 gzip –d *.gz
                tar xvf *.gz

2.        源端数据库配置
1)        检查是否存在不支持字段
2)        配置数据库的retain transaction logs
        设置logretain 参数为‘RECOVERY’;
        打开userexit参数
(一)         在db2数据库中确认参数的目前配置:
1.连接到DB2数据库:
db2 connect to <database> user <username> using <password>
2. 取得数据库名称
db2 list db directory
3.取得数据库的配置参数.
db2 get db cfg for <database name>

对于Oracle GoldenGate 的正确的参数配置应为:
Log retain for recovery status = RECOVERY
User exit for logging status = YES
(二)         Retention log的参数设置:
1.执行以下命令设置参数:
db2 update db cfg for <database name> using LOGRETAIN ON
db2 update db cfg for <database name> using USEREXIT ON
2.参数修改完成以后,需要做一次数据库的全备:
db2stop force
db2start
db2 backup db <database>
3.存放归档到合适的目录下。

说明:建议停机对目标进行初始化,此时本步骤中的备份可以通过db2 restore恢复到目标端。

(三)         指定归档的路径:
设置DB2的OVERFLOWLOGPATH参数指向归档路径:
db2 connect to <database>
db2 update db cfg using overflowlogpath "<path>"
注:路径设置的时候,不要包含节点自身,例如,如果archive log的全路径为: /sdb2logarch/oltpods1/archive/OLTPODS1/NODE0000, 则OVERFLOWLOGPATH的值应该指定为:
/sdb2logarch/oltpods1/archive/OLTPODS1.
3)        表的准备:
(一)        在目标表中disable掉trigger,cascade delete/update等约束。否则的话类似的操作会重复执行,导致报错。
(二)        指定行的唯一标示:GoldenGate在源端和目标端都需要行的唯一标识(unique row identifier),以在目标端进行正确的复制,更新和删除等操作(replicated update and delete)。GoldenGate缺省按照以下的优先级来选择行的唯一标识(key):
1. 主键(Primary key)
2. 唯一键(数字字母组成的,不包含时间戳或者虚拟计算列)(First unique key alphanumerically)
3. 如果1和2都不存在,则GoldenGate会构建一个pseudo Key(虚拟的key),该key会包含所有的列(数据库所能允许的作为一个唯一键的所有列)。

(三)        自定义替代主键(define substitution key):
除此以外,还可以自定义 substitution key,通过在extract table 参数和replicat map参数中包含一个KEYCOLS子句。
如果定义了substitution key,则goldengate会放弃任何已经存在的主键、以及goldengate自己发现的唯一键,而 使 用 substitution key。

(四)        禁止key 的修改
无论对于主键(primary key),唯一键(unique key),goldengate自构建的pseudo key,或者自定义的KEYCOLS key,一旦goldengate的抽取进行开始以后,都禁止修改key(比如在key中添加一个列),因为goldengate会是用前镜像来对当前值在目标端进行恢复,而DB2不提供前镜像。一旦修改了key,该表可能需要重新做一遍初始化。

(五)        确认源表的DATA_CAPTURE状态:
1.运行以下语句,检查要抽取的表当中是否存在data_capture状态为N的表:
Select NAME, CREATOR, DBNAME, DATA_CAPTURE
From SYSIBM.SYSTABLES
Where DATA_CAPTURE <> 'N' Order by CREATOR, NAME;
2.如果存在,可以运行以下语句进行修改:
ALTER TABLE <table name> DATA CAPTURE CHANGES
      
(六)        物化查询表(materialized query table)
对于物化查询表,不要在goldengate中进行抽取和复制配置,但是需要在table和map的配置中包含所有的基表(base table),以维持MQT表在源端和目标端的对等匹配。

3.        创建子目录,上传参数文件
a)        在/ggsfs/ggs目录下运行GGS命令行控制界面:
                        ./ggsci
b)        在GGS命令行界面下创建子目录:
                        GGSCI> create subdirs
c)        通过ftp上传参数文件mgr, ext*, dpe*到dirprm文件夹中。

4.        配置GOLDENGATE相关进程
a)        配置mgr进程
                        GGSCI>edit param mgr

                        GGSCI>start mgr
                        Manager started.

b)        配置源端抽取进程
                        GGSCI>add ext ext*, tranlog, EOF
                        EXTRACT added.
说明:GoldenGate可以依据以下条件启动抽取:
● a timestamp
● the end of the transaction file
● a specific LSN value
具体使用何种方式需要根据初始化方式与相关厂商确定。

                        GGSCI>add exttrail /ggsfs/ggs/dirdat/*, ext ext*, megabytes 50
                        EXTTRAIL added.

                        GGSCI>edit param ext*

                        GGSCI>add ext dpe*, exttrailsource /ggsfs/ggs/dirdat/*
                        EXTRACT added.

                        GGSCI>add rmttrail /ggsfs/ggs/dirdat/*, ext dpe1, megabytes 50
                        RMTTRAIL added.

                        GGSCI>edit param dpe1
                        具体参数文件由实施工程师提供模板,根据现场情况进行修订即可。
5.        启动源端进程
a)        启动源端抓取进程:
                        GGSCI>start er *

b)        查看源端进程状态:
                        GGSCI>info er *
                        RUNNING
                        RUNNING
        注:若目标端mgr进程未启动,则该步骤无法启动dpe*进程,需等目标端mgr进程启动后再启动。

6.        目标端软件安装
a)        由数据库管理员创建GGS软件安装目录:
                /ggsfs
        mkdir /ggsfs/ggs;
        chown –R db2inst1:db2iadm /ggsfs/ggs; 修改目录的属主和属组。
b)        使用db2inst1用户通过ftp上传GGS软件并解压缩:
        tar zxvf *.gz
        或者分两步解压:
        gunzip *.gz 或 gzip –d *.gz
        tar xvf *.gz
c)        上传pw文件到GGS软件的安装目录

7.        目标端进程配置和启动
a)        运行GGS命令行界面,创建子目录
        GGSCI>create subdirs

b)        配置目标端mgr进程
        GGSCI>edit param mgr

        GGSCI>start mgr
        Manager started.

c)        配置目标端复制进程
        GGSCI>add rep rep*, exttrail /ggsfs/ggs/dirdat/*, nodbcheckpoint
                        REPLICAT added.

        GGSCI>edit param rep*

        GGSCI>start rep1
                        REPLICAT REPXX starting
d)        查看目标端进程状态
                        GGSCI>info er *
        RUNNING
8.        查看各个进程的状态和报告
                GGSCI > view ggsevt
                GGSCI > info er *
                GGSCI > status er *

                GGSCI > view report extXX
                GGSCI > view report dpeXX
                GGSCI > view report repXX


9.        设置进程自动重启
                针对网络中断、数据库停机等异常情况,可在GOLDENGATE TDM软件的mgr进程        参数文件中设置自动重启参数,在无需人工干预的情况下重启抽取及复制进程。
        mgr参数文件如下:

        port 7809
        ----autostart er *
        autorestart er *, waitminutes 3, retries 15
       
页: [1]
查看完整版本: GOLDENGATE for DB2 安装配置方案