《【2017年整理】GoldenGate软件实现一对多数据同步功能安装配置手册》由会员分享,可在线阅读,更多相关《【2017年整理】GoldenGate软件实现一对多数据同步功能安装配置手册(11页珍藏版)》请在金锄头文库上搜索。
1、GoldenGate 一对多数据同步安装配置手册2001 年 11 月一、 前言GoldenGate 支持灵活的拓扑复制结构,比如一对多、多对一、双向复制等拓扑复制结构。GoldenGate 要实现一对多的复制可以通过多种办法来实现,我们这里来讨论主要的复制拓扑实现方法和机制。数据从一个源端抓取出来,分发到多个目标端去。二、 安装环境概述新的海运数据库 (源) 新的网上服务数据库(目标)Cpu: Cpu:主机内存: 内存:硬硬件环境IP 172.16.99.107172.16.99.108172.99.16.14172.99.16.13操作系统 AIX 5.3 AIX 6.1数据库 Oracl
2、e 9208 Oracle 1024SID软软件环境环GoldenGate版本ggs_AIX_ppc_ora10.2_64bit.tar ggs_AIX_ppc_ora10.2_64bit.tar三、GoldenGate 一对多配置实现3.1、Oracle GoldenGate 软件环境安装需求 源端安装环境需求(1)网络:要实现 GoldenGate 数据复制软件源端和目标端的数据通信,需要开通源端和目标端服务器的 7809 到 7810,7840 到 7890 之间的网络端口。(2)Oracle GoldenGate 系统用户Oracle GoldenGate 安装运行需要调用 Oracl
3、e 的数据库产品的类库文件,所以建议安装 Oracle GoldenGate 的系统用户在系统的 Oracle:dba 用户组中,或则就使用系统Oracle 用户进行安装。为 PATH 环境变量增加安装 GoldenGate 的路径。PATH= /home/oracle/ggs:$PATH$cd /oracle$vi .profile在文件的末尾添加如下内容:PATH=/home/oracle/ggs:$PATHexport PATHLIBPATH=/home/oracle/ggs:$ORACLE_HOME/lib:/usr/lib:$LIBPATHexport LIBPATH保存文件,使用
4、oracle 用户重新登录系统。(3)Oracle GoldenGate 数据库用户 goldengateCREATE USER ogg IDENTIFIED BY ogg DEFAULT TABLESPACE USERS ;GRANT DBA TO goldengate; -增加完附加日志后,可以取消(4)数据库字符集源和目标数据库字符集应一致,检查 Oracle 字符集命令:检查 nls_lang 环境变量目的是为了确保 GoldenGate 进行数据抽取的时候使用正确的NLS_LANG 环境变量,使用以下命令确认数据库的字符集。获得的结果主要在 GoldenGate进程的参数文件中的 s
5、etenv(NLS_LANG)参数中使用。SqlSHOW PARAMETER NLS_LANGUAGESqlSHOW PARAMETER NLS_TERRITORYSQL select * from NLS_DATABASE_PARAMETERS WHERE PARAMETER IN (NLS_CHARACTERSET, NLS_NCHAR_CHARACTERSET);(5)安装存储空间安装 GoldenGate 对于存储空间的要求:应为 GoldenGate 创建文件系统,也可在现有文件系统中建立一个目录,GoldenGate 对于安装目录没有任何限制。GoldenGate 软件本身占用不到
6、 100M 空间;(6)数据队列存储空间需要在共享阵列上为 GoldenGate 软件划分一定的存储空间来存储 GoldenGate 队列。GoldenGate 存储空间的计算方法大致如下,GoldenGate 的队列默认存放在 GoldenGate 目录下的 dirdat 子目录中:队列存储空间=(每天的数据库日志增量/3)*GoldenGate 队列的的保留天数(建议是保留 7 天) 。(7)上传 table_mv.txt 文件到/ggs/dirprm 目录下table_mv.txt(8)数据库参数 LOG_PARALLELISMOracle 9i 需要将数据库的并行日志参数 LOG_PA
7、RALLELISM 设置为 1,设置完以后,需要重启数据库。SQLalter system set log_parallelism=1 scope=spfile; Sqlshutdown immediateSqlstartup-LOG_PARALLELISM 定义 Oracle 中 redo allocation 的并发级别。在 Oracle 9iR2中,Oracle 通过 LOG_PARALLELISM 定义 Oracle 中 redo allocation 的并发级别。 如果定义 LOG_PARALLELISM 大于 1,那么数据库将分配多个共享的 Redo Log Buffer 区域,每
8、个共享 Buffer 都有独立的 Redo Allocation Latch 进行保护,从而提高了 Redo 的并发性能,多个 Redo Log Buffer 可以被看作是 Redo Log Buffer 的子池。 目标端安装环境需求(1)Oracle GoldenGate 系统用户Oracle GoldenGate 安装运行需要调用 Oracle 的数据库产品的类库文件,所以建议安装 Oracle GoldenGate 的系统用户在系统的 Oracle:dba 用户组中,或则就使用系统Oracle 用户进行安装。为 PATH 环境变量增加安装 GoldenGate 的路径。PATH= /ho
9、me/oracle/ggs:$PATH$cd /oracle$vi .profile在文件的末尾添加如下内容:PATH=/home/oracle/ggs:$PATHexport PATHLIBPATH=/home/oracle/ggs:$ORACLE_HOME/lib:/usr/lib:$LIBPATHexport LIBPATH保存文件,使用 oracle 用户重新登录系统。(2)Oracle GoldenGate 数据库用户 goldengateCREATE USER ogg IDENTIFIED BY ogg DEFAULT TABLESPACE USERS ;GRANT DBA TO
10、goldengate; -增加完附加日志后,可以取消(3)数据库字符集源和目标数据库字符集应一致,检查 Oracle 字符集命令:检查 nls_lang 环境变量目的是为了确保 GoldenGate 进行数据抽取的时候使用正确的NLS_LANG 环境变量,使用以下命令确认数据库的字符集。获得的结果主要在 GoldenGate进程的参数文件中的 setenv(NLS_LANG)参数中使用。SqlSHOW PARAMETER NLS_LANGUAGESqlSHOW PARAMETER NLS_TERRITORYSQL select * from NLS_DATABASE_PARAMETERS WH
11、ERE PARAMETER IN (NLS_CHARACTERSET, NLS_NCHAR_CHARACTERSET);(4)安装存储空间安装 GoldenGate 对于存储空间的要求:应为 GoldenGate 创建文件系统,也可在现有文件系统中建立一个目录,GoldenGate 对于安装目录没有任何限制。GoldenGate 软件本身占用不到 100M 空间;(5)上传 map_mv.txt 文件到/ggs/dirprm 目录下map_mv.TXT(6)数据队列存储空间需要在共享阵列上为 GoldenGate 软件划分一定的存储空间来存储 GoldenGate 队列。GoldenGate
12、存储空间的计算方法大致如下,GoldenGate 的队列默认存放在 GoldenGate 目录下的 dirdat 子目录中:队列存储空间=(每天的数据库日志增量/3)*GoldenGate 队列的的保留天数(建议是保留 7 天) 。3.2、源端 GoldenGate 软件安装配置(1 ) GoldenGate 进程和队列规划进程名 队列名称 进程描述EHYTOWF HW 抽取新海运数据库数据变化DHYTOWF HW 把抽取出来的数据传递到目标端服务器DHYTOTE TE 把抽取出来的数据传递到目标端服务器(2 ) 确定安装目录在指定位置建立 GoldenGate 安装目录,并确认该目录属于 o
13、racle 用户(或新建的GoldenGate 运行用户) 。(3 ) 上传安装介质通过 ftp 上传 GoldenGate 软件包到安装目录/ggs,并解压缩$unzip *.zip$tar xvf *.tar(4 ) 配置 GoldenGate 管理进程在安装目录下执行./ggsci 命令进入命令行界面。#./ggsciGGSCIcreate subdirsGGSCIedit param mgr*vi*port 7809DYNAMICPORTLIST 7840-7890-autostart er *-AUTORESTART er *, RETRIES 3, WAITMINUTES 5, R
14、ESETMINUTES 60purgeoldextracts ./dirdat/*, usecheckpoints, minkeepdays 5LAGCRITICALMINUTES 45LAGINFOMINUTES 30LAGREPORTHOURS 1*save and exit*#ggscistart mgr(5 ) 配置 GoldenGate 进程和队列GGSCIadd ext ehytowf,tranlog,begin now,threads 2GGSCIadd exttrail ./dirdat/hw,ext ehytowf,megabytes 1000GGSCIadd ext dhy
15、towf,exttrailsource ./dirdat/hwGGSCIadd rmttrail ./dirdat/hw,ext dhytowf,megabytes 1000GGSCIadd ext dhytote,exttrailsource ./dirdat/teGGSCIadd rmttrail ./dirdat/te,ext dhytote,megabytes 1000(6 ) 配置 GoldenGate 进程的参数EDIT PARAM EHYTOWFextract ehytowfsetenv ( ORACLE_SID = hydb2 )setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )userid ogg, password oggREPORT AT 01:59reportrollover at 02:00tranlogoptions rawdeviceoffset 0TRANLOGOPTIONS CONVERTUCS2CLOBSFETCHOPTIONS NOUSESNAPSHOTTHREADOPTIONS MAXCOMMITPROPAGATIONDELAY 30000 IOLATENCY 30000tranlogoptions altarchivelogdest primary