Oracle GoldenGate 安装、配置、管理

合集下载

Oracle GoldenGate Java Adaptor的安装与配置

Oracle GoldenGate Java Adaptor的安装与配置

目录Java Adapter的安装与配置 (2)1.1在Weblogic上创建JMS Queue (2)1.2生成JMS客户端 (6)1.3GoldenGate配置过程 (6)1.3.1安装JDK (6)1.3.2安装GG for Java (6)1.3.3配置Extract (7)1.3.4生成Source Def配置文件 (8)1.3.5配置Data Pump (8)1.4测试 (15)1.5Java测试客户端样例 (17)1.5.1JMSSender.java (17)1.5.2JMSReceiver.java (20)Java Adapter的安装与配置GoldenGate提供Java Adapter可以将复制目标端设置为JMS队列,将源数据库表记录内容,按照既定的转换规则,发布到JMS队列,以满足客户灵活的要求,具体实现方法如下文所述。

1.1 在Weblogic上创建JMS Queue配置方法参见Weblogic相关资料,简要步骤如下:1、配置消息存储(Message Stores)Services->Persistent Stores,New->Create FileStore输入文件存储的名字和目录,这个目录很重要,开始我以为是本地的一个目录就行了,其实测试之后发现必须是建立的domain下的一个目录才行,把目录名写上去就ok了。

例如:C:\Oracle\Middleware\user_projects\domains\osb_domain\ODIFileStore目录名:ODIFileStore,不用写全路径2、配置JMS ServerServices -> Messaging -> JMS Server -> Select NewCreate a name, select Persistent Store (选择上面建立的消息存储:ODIFileStore) Target this to the AdminServer3、配置连接工厂(Connection Factories)。

GoldenGate安装部署与解决方案

GoldenGate安装部署与解决方案

GoldenGate安装部署及解决方案目录GoldenGate 安装部署及解决方案 (1)1、 GoldenGate 简介 (3)2、文档约定和说明 (5)3、 GoldenGate 软件安装 (6)3.1 GoldenGate 软件安装包下载63.2 Windows 下安装73.3 Linux 和 Unix 下安装84、 GoldenGate 同步基本配置 (9)4.1 oracle 之间同步和GoldenGate 基础94.2 oracle 与 db2 同步174.3 oracle 与 sybase 同步185、 GoldenGate 同步方案 (19)5.1 使用 GoldenGate 初始化加载195.2 一对多数据同步(广播复制)215.3 多对一数据同步(集中复制)225.4 数据转换和过滤23 5.5 关于目标端高数据安全性下的GoldenGate 配置方案275.6 GoldenGate 双向复制( active-active )306、 GoldenGate 数据同步性能测试 (33)6.1 测试中主要监测数据和监测方式33 6.2 测试脚本和GoldenGate 配置346.3 测试步骤386.4 性能测试结果407、 GoldenGate 推荐配置 (42)7.1 添加必要的环境参数427.2 BATCHSQL参数427.3 数据库用户密码加密437.4 trail 再压缩448、 GoldenGate Troubleshooting (45)8.1 一些常用的进程信息和日志的查看方式458.2 解析 trail 文件45附: GoldenGate 新版本的一个特性 (46)参考文档 (48)1、 GoldenGate简介GoldenGate 软件是一种基于日志的结构化数据复制软件,它通过解析源数据库在线日志或归档日志获得数据的增删改变化,再将这些变化应用到目标数据库,实现源数据库与目标数据库实时同步( real-time data synchronize)、双活(active-active high availability)。

goldengate如何安装和配置

goldengate如何安装和配置

goldengate如何安装和配置要安装goldengate,第一步当然要先下载软件,您可以到/网站上下载相关软件,注意goldengate是在oracle fusion middleware大类下面,它和操作系统版本,数据库版本都有关系,下载时注意别下错版本。

对于源端数据库,要做以下准备,这里以oracle为例,其它数据库请查找相关手册:a.在源端操作系统上,创建GoldenGate系统用户,设置该用户环境变量(如果是oracle数据库的话,ORACLE_SID,ORACLE_HOME等等),也可以采用oracle 安装用户运行GoldenGate。

建议采用oracle的安装用户安装运行GoldenGate,无需建立新用户,否则还得给新用户授一堆权限,具体请参考安装手册。

b.在数据库中创建GoldenGate数据库用户,名称无所谓,这里以goldengate 为例,用户至少应该有connect,resource,select any dictionary,select any table的权限,当然如果能给dba,一切就都覆盖了:CREATE USER goldengate IDENTIFIED BY goldengate;GRANT dba TO goldengate;c.检查源端数据库是否为归档模式,若为非归档模式,建议将其改为归档模式,其实在非归档模式下也能运行,但以防万一,还是配置归档保险:SQL> alter database archivelog;(需要在数据库mount状态下执行);SQL>archive log list;d.检查源端数据库附加日志是否打开SQL>select supplemental_log_data_min from v$database;将数据库附加日志打开SQL>alter database add supplemental log data;切换日志以使附加日志生效:SQL〉ALTER SYSTEM ARCHIVE LOG CURRENT;在目标数据库上,也需要建立一个goldengate用户,或者利用现有用户也行,该用户应该至少有connect,resource,select any table,select any dictionary以及对应同步表的insert/update/delete权限。

GoldenGate安装部署及解决方案

GoldenGate安装部署及解决方案

GoldenGate安装部署及解决方案目录GoldenGate安装部署及解决方案.................................错误!未定义书签。

1、GoldenGate 简介........................................错误!未定义书签。

2、文档约定和说明.........................................错误!未定义书签。

3、GoldenGate软件安装....................................错误!未定义书签。

GoldenGate软件安装包下载............................错误!未定义书签。

Windows下安装.......................................错误!未定义书签。

Linux和Unix下安装..................................错误!未定义书签。

4、GoldenGate同步基本配置................................错误!未定义书签。

oracle之间同步和GoldenGate基础.....................错误!未定义书签。

oracle与db2同步....................................错误!未定义书签。

oracle与sybase同步.................................错误!未定义书签。

5、GoldenGate同步方案....................................错误!未定义书签。

使用GoldenGate初始化加载............................错误!未定义书签。

一对多数据同步(广播复制)...........................错误!未定义书签。

goldengate 安装 详细命令

goldengate 安装 详细命令

源端与目标端前言之解压缩文件包unzip Oracle_GoldenGate_V11.1.1.1.0_for_Oracle_10g_on_Linux_x86.zipmkdir oggmv fbo_ggs_Linux_x64_ora10g_32bit.tar ogg/tar zxf fbo_ggs_Linux_x64_ora10g_32bit.tar -C /oracle/goldengate0、增加环境变量export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/libexport GGATE=/oracle/goldengate1、开启附加日志alter database add supplemental log data;select supplemental_log_data_min from v$database;2、为goldengate创建用户、表空间并授权create tablespace tbs_gguser datafile '/data0/u02/oradata/ora10g/jtuser1/gguser.dbf' size 1000m autoextend on;create user ogg identified by ufsoft default tablespace tbs_gguser temporary tablespace TEMP quota unlimited on tbs_gguser;grant connect,resource to ogg;grant create session,alter session to ogg;grant select any dictionary,select any table to ogg;grant alter any table to ogg;grant flashback any table to ogg;grant execute on dbms_flashback to ogg;grant insert any table to ogg;grant delete any table to ogg;grant update any table to ogg;++++++++++++++++++++++++++++++++++3、开启强制日志模式(为支持DDL复制)alter database force logging;alter system set recyclebin=off scope=both;[root@vm2 oracle]# chown oracle.oinstall /oracle/goldengate/ -R [oracle@vm2 ~]$ cd /oracle/goldengate/[oracle@vm2 goldengate]$ sqlplus / as sysdbaSQL> @marker_setup………………………………Enter GoldenGate schema name:ogg ………………………………………………………SQL> @ddl_setup………………………………Enter GoldenGate schema name:ogg ………………………………………………………Enter mode of installation:INITIALSETUP …………………………………………………………..Enter yes or no:yes…………………………..SQL> @role_setup………………………………Enter GoldenGate schema name:ogg ………………………………………………………SQL>grant GGS_GGSUSER_ROLE to ogg;SQL> @ddl_enableTrigger altered.4、源端配置goldengate4.1、安装goldengate#Su – oracle$cd /oracle/goldengate>./ggsci> CREATE SUBDIRSGGSCI (vm1) 2> exit至此,goldengate安装完成基于DDL的同步配置源端4.2、配置管理进程与抽取进程./ggsciGGSCI (vm1) 1> dblogin userid ogg,password ufsoftGGSCI (vm1) 2> edit params mgr //编辑管理进程#文件内容如下PORT 7809#保存退出#启动管理进程GGSCI (vm1) 3> start mgrGGSCI (vm1) 4> edit params GLOBALS#文件内容GGSCHEMA ogg#保存退出GGSCI (vm1) 7> add extract eini_1,tranlog,begin now //添加组名为eini_1的抽取进程,即刻为新增日志添加到抽取进程GGSCI (vm1) 11> add rmttrail /oracle/goldengate/dirdat/ma,megabytes 100,extract eini_1 //add rmttrail <trail name> extract <group name即上面创建的eini_1>GGSCI (vm1) 12> edit params eini_1 //编辑抽取进程EXTRACT EINI_1dynamicresolutionSETENV (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)USERID ogg PASSWORD ufsoftRMTHOST 172.16.1.201,MGRPORT 7809 //目标数据库地址和端口TRANLOGOPTIONS EXCLUDEUSER oggRMTTRAIL /oracle/goldengate/dirdat/ma //目标端数据库的trail文件位置DDL INCLUDE ALLtable scott.*; //以scott用户下的表做测试目标端5、配置管理进程与抽取进程./ggsciGGSCI (vm1) 1> dblogin userid ogg,password ufsoftGGSCI (vm1) 2> edit params mgr //编辑管理进程#文件内容如下PORT 7809PURGEOLDEXTRACTS /dirdat,USECHECKPOINTS#保存退出#启动管理进程GGSCI (vm1) 3> start mgrGGSCI (vm1) 4> edit params GLOBALS#文件内容GGSCHEMA ogg#保存退出GGSCI (vm2) 7> add checkpointtable ogg.checkpoint //添加ogg用户下的检查点表GGSCI (vm2) 10> add replicat rini_1,exttrail /oracle/goldengate/dirdat/ma,beginnow,checkpointtable ogg.checkpoint //添加名称为rini_1的应用进程,检查点表名称为ogg.checkpoint,即刻生效GGSCI (vm2) 11> edit params rini_16、测试验证6.1、源端与目标端SQL> conn / as sysdbaSQL> alter user scott account unlock;SQL> conn scott/tigerERROR:ORA-28001: the password has expiredChanging password for scottNew password:Retype new password:Password changedConnected.6.2、源端SQL> conn scott/123456SQL> create table tbs_test(id number primary key,name varchar2(50));Table created.SQL> insert into tbs_test values (1,'lugeng');1 row created.beginfor i in 2000002..2002000 loopinsert into tbs_test values(i,'ge');commit;end loop;end;SQL> commit;Commit complete.6.3、目标端SQL> conn scott/123456Connected.SQL> desc tbs_test;Name Null? Type----------------------------------------- -------- ----------------------------ID NOT NULL NUMBER NAME VARCHAR2(50)SQL> select * from tbs_test;ID NAME---------- --------------------------------------------------1 lugeng基于PUMP的DDL同步配置源端GGSCI (vm1) 1> dblogin userid ogg,password ufsoftGGSCI (vm1) 2> edit params mgr#文件内容port 7809#保存退出GGSCI (vm1) 5> edit params eini_1#文件内容EXTRACT EINI_1dynamicresolutionSETENV (NLS_LANG=AMERICAN_AMERICA.UTF8)USERID ogg PASSWORD ufsoftRMTHOST 172.16.1.201,MGRPORT 7809TRANLOGOPTIONS EXCLUDEUSER oggexttrail /oracle/goldengate/dirdat/laDDL INCLUDE ALLtable scott.*;#保存退出GGSCI (vm1) 8> add extract eini_1,tranlog,begin 2011-11-02 17:03GGSCI (vm1) 9> add exttrail /oracle/goldengate/dirdat/la,extract eini_1GGSCI (vm1) 10> edit params pump_so#文件内容extract pump_sodynamicresolutionUSERID ogg PASSWORD ufsoftrmthost 172.16.1.201,mgrport 7809,compressrmttrail /oracle/goldengate/dirdat/matable scott.*;#保存退出GGSCI (vm1) 11> add extract pump_so,exttrailsource /oracle/goldengate/dirdat/laGGSCI (vm1) 12> add rmttrail /oracle/goldengate/dirdat/ma,extract pump_so目标端GGSCI (vm2) 1> dblogin userid ogg,password ufsoftGGSCI (vm2) 2> edit params mgr#文件内容port 7809PURGEOLDEXTRACTS /dirdat,USECHECKPOINTS#保存退出GGSCI (vm2) 5> edit params GLOBALSGGSCHEMA oggGGSCI (vm2) 6> add checkpointtable ogg.checkpointGGSCI (vm2) 7> add replicat rini_1,exttrail /oracle/goldengate/dirdat/ma,begin now,checkpointtable ogg.checkpointGGSCI (vm2) 9> edit params rini_1#文件内容REPLICAT RINI_1SETENV (NLS_LANG=AMERICAN_AMERICA.UTF8)ASSUMETARGETDEFSUSERID ogg PASSWORD ufsoftDISCARDFILE /oracle/goldengate/dirrpt/RINIaa.dsc,PURGEDDL INCLUDE ALLDDLERROR DEFAULT IGNORE RETRYOP MAXRETRIES 3 RETRYDELAY 5DDLERROR DEFAULT DISCARDDDLERROR DEFAULT IGNORE RETRYOPMAP scott.* , TARGET scott.*;#保存退出create table t (id number primary key,name varchar2(50));。

GoldenGate 10g安装配置操作手册

GoldenGate 10g安装配置操作手册

GoldenGate安装配置GoldenGate支持跨平台的数据实时同步操作:即源和目标可以是不同版本的ORACLE数据库。

GoldenGate需要要在源,目标库机器上都安装,并具是与数据库相匹配的版本:即根据源和目标的ORACLE版本,安装对应的goldenGate。

ogg12的版本是可以兼容11g,12c 版本的数据库,但是10g及以下版本需要找对应的版本,但是最多支持到8i。

GoldenGate是通过读取本地的数据库归档日志,投递给远程,实现同步的。

GoldenGate的日志投递方式有两种:直接投递和数据泵的方式。

原理如下图所示:两种抽取方式的结构示图两种抽取方式的区别:上面的INITIAL LOAD投递方式是直接投递,在源抽取端不缓存捕获队列数据。

而下面的DataPump数据泵方式,会在源库目录下保留抽取数据,在网络服务故障时,能保留未投递的数据不丢失,并在服务正常后能补投数据。

而两种投递方式在接收端在配置上没有区别。

要做双机互备,互为主从,配置两组反向的投递队列就好了。

注:我不推荐做双向同步,在系统故障需要恢复的时候,可能导致数据混乱。

一、操作环境环境二、数据库的准备工作下面的操作,都需要在源和目标数据库上操作。

2.1切换到归档模式SQL> archive log list; 查看归档模式Database log mode No Archive ModeAutomatic archival DisabledArchive destination /soft/u01/app/oracle/product/10.2.0/db_1/dbs/arch Oldest online log sequence 5263Current log sequence 5265如果不是归档模式,需要执行SQL> shutdown immediateSQL> startup mountSQL> alter database archivelog; #修改为归档模式SQL> alter database open;2.2禁用recycle_binSQL> show parameter recyclebin ;禁用recycle binoracle11需要重启才能生效SQL> ALTER SYSTEM SET recyclebin = OFF scope=spfile;对于10g不需要SQL> Alter system set recyclebin=off;2.3处理日志验证未使用并行日志(只针对9i,高级版本无此参数)Sql> show parameter LOG_PARALLELISM。

GoldenGate在Windows平台的配置

GoldenGate在Windows平台的配置

ORACLE GoldenGate在Windows平台中单向、双向数据传输配置1、安装GoldenGate环境源数据库平台:64位Windows server2008Oracle11.2.0.1.0目标数据库平台:64位Windows server2008Oracle11.2.0.1.0源数据库:服务器名称:SERVER1,ip:192.168.1.101目标数据库:服务器名称:SERVER3,ip:192.168.1.102源数据库:归档模式,ORACLE_SID:orcl用户:scott goldengate专属用户:ggs01目标数据库:归档模式,ORACLE_SID:orcl用户:scott goldengate专属用户:ggs2、分别在源数据库,目标数据库安装GoldenGate官方文档要求用administrator权限安装(需要系统管理员的权限)双击GoldenGate目录下的ggsci.exeGGSCI(SERVER1)1>CREATE SUBDIRSGGSCI(SERVER1)1>EXIT3、把源数据库的修改数据同步到目标数据库中3.1在源数据库orcl上打开归档日志及其辅助日志Sql>alter database add supplemental log data;SQL>alter system set recyclebin=off;Sql>alter system switch logfile;3.2在源数据库,目标数据库创建GoldenGate GLOBALS参数文件3.2.1在源数据库创建GGSCI>edit params./GLOBALS内容:MGRSERVNAME mgrserver01GGSCHEMA ggs013.2.2源数据库创建Goldengate manager服务C:\ggs>INSTALL ADDSERVICE ADDEVENTS3.2.3在目标数据库创建GGSCI>edit params./GLOBALS内容:MGRSERVNAME mgrserver03checkpointtable ggs.ggs_checkpoint3.2.4目标数据库创建Goldengate manager服务C:\ggs>INSTALL ADDSERVICE ADDEVENTS3.3在源数据库,目标数据库配置mgr,启动manager进程3.3.1配置manager服务的mgr配置文件GGSCI>EDIT PARAMS MGR内容为:PORT80013.3.2启动mgrGGSCI>start MGRGGSCI>info MGR3.3.3同样在目标数据库配置mgr文件3.4在goldengate中用oracle用户登陆数据库GGSCI>dblogin userid scott@orcl,password test--(需要授予scott用户dba 权限)3.5增加需要传输的用户表GGSCI>Add trandata scott.*GGSCI>info trandata scott.*3.6在源数据库配置一个EXTRACT进程及配置其文件3.6.1配置EXTRACT文件GGSCI>edit param ext01内容:extract ext01SETENV(NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK")userid scott@orcl,password testexttrail./dirdat/tt--DDLtable scott.*;3.6.2在GGSCI.exe增加一个EXTRACT进程GGSCI>ADD EXTRACT ext01,TRANLOG,BEGIN NOWGGSCI>ADD EXTTRAIL./dirdat/tt,EXTRACT ext01,MEGABYTES5GGSCI>info rmttrail*3.7配置data pump3.7.1在源数据库端添加一个pump进程GGSCI>edit param epump01内容:extract epump01passthrurmthost192.168.1.103,mgrport8003rmttrail./dirdat/tttable scott.*;3.7.2在源数据库的ggsci中增加extract进程其作用为读取本地trail文件到目标端trail文件GGSCI>ADD EXTRACT epump01,EXTTRAILSOURCE./dirdat/tt添加进程并通过EXTTRAILSOURCE说明本地trail文件存放地。

goldengate安装手册(bigdata-v12.2)

goldengate安装手册(bigdata-v12.2)

×××公司Oracle Goldengate安装手册目录1Goldengate安装说明 (3)1.1 总体说明 (3)1.2 添加环境变量 (3)1.3 GG软件的安装(源和目标系统均需要安装) (4)1.4 开启源端数据库附加日志 (5)1.5数据库11.2.0.4版本参数修改 (6)1.6 配置GLOBALS (6)1.7 配置定义文件 (6)1.8 建立OGG进程和队列 (6)2数据初始同步 (11)2.1 将源端数据导入之中间库 (11)2.2 将中间库数据导入至Hadoop (11)2.3 目标启动replicat进程并追加增量数据 (11)1 Goldengate安装说明1.1 总体说明Goldengate软件目录的属主为oracle:dba,权限为775;Goldengate目录一般是建立在共享存储上,这样实际上goldengate的软件和相应的文件如参数文件,队列文件等都是在共享存储上的。

这样做的好处是,例如在RAC环境下,如果一台服务区宕机,则可以将$GG_HOME mount到另外一个正常的rac节点上,启动goldengate各个进程就可以了,不需要做任何其他的动作;本次测试过程是部署在gpfs文件系统上。

1.2 添加环境变量在oracle用户下增加环境变量:源端:export GG_HOME=/data/oggoexport PATH=$PATH:$GG_HOMEexport LIBPATH=$GG_HOME:$ORACLE_HOME/lib目标端bigdata:要求必须jdk1.7export GG_HOME=/data/oggtexport PATH=$PATH:$GG_HOMEexportLD_LIBRARY_PA TH=$GG_HOME:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.45.x86_64/jre/lib/amd 64/serverPlatform Environment variableIBM AIX LIBPATHHP-UX SHLIB_PA THSun Solaris LD_LIBRARY_PATHHP Tru64 (OSF/1)LINUX1.3 GG软件的安装(源和目标系统均需要安装)1)使用Oracle用户(如非此用户,请自行取代,下同)通过ftp上传GGS软件到安装目录下并解压缩:unzip fbo_ggs_Linux_x64_shiphome.zip.zip修改参数文件:cd fbo_ggs_Linux_x64_shiphome/Disk1/response执行vi oggcore.rsp修改一下参数:INSTALL_OPTION=ORA11gSOFTWARE_LOCATION=/data/oggoDATABASE_LOCATION=/usr/lib/oracle/u01/app/oracle执行runInstaller开始安装:./runInstaller -silent -nowait -responseFile /data/oggo/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp2)在/goldengate目录下运行GGS命令行控制界面:./ggsci3)在GGS命令行界面下创建子目录:GGSCI> create subdirs1.4 开启源端数据库附加日志1)检查附加日志情况使用以下sql语句检查数据库附加日志的打开状况:SelectSUPPLEMENTAL_LOG_DATA_MIN,SUPPLEMENTAL_LOG_DA TA_PK,SUPPLEMENTAL_LOG_DA TA_UI,SUPPLEMENTAL_LOG_DA TA_FK,SUPPLEMENTAL_LOG_DA TA_ALL, FORCE_LOGGING from v$database;2)打开数据库附加日志打开附加日志并切换日志(保证Online redo log和Archive log一致)在mount状态下打开归档日志:Alter database archivelog;alter database add supplemental log data ;或全部打开:alter database add supplemental log data(primary key,unique) columns;alter database force logging;3)创建Goldengate用户create tablespace ogg datafile ‘/data/oradata/orcl/ogg.dbf’ size 1G;create user ogg identified by ogg default tablespace ogg;GRANT execute on DBMS_SQL to ogg;grant EXEMPT ACCESS POLICY to ogg;grant create table to ogg;grant create sequence to ogg;alter user ogg quota unlimited on ogg;GRANT CONNECT TO ogg;GRANT RESOURCE TO ogg;GRANT DBA TO ogg;GRANT CREATE SESSION TO ogg;GRANT ALTER SESSION TO ogg;GRANT SELECT ANY DICTIONARY TO ogg;GRANT SELECT ANY TABLE TO ogg;GRANT FLASHBACK ANY TABLE TO ogg;GRANT ALTER ANY TABLE TO ogg;GRANT ALTER SYSTEM TO ogg;GRANT SELECT on dba_clusters TO ogg;GRANT EXECUTE ON utl_file TO ogg;BEGINDBMS_GOLDENGATE_AUTH.GRANT_ADMIN_PRIVILEGE(Grantee => 'OGG',privilege_type => 'CAPTURE',grant_select_privileges => TRUE,do_grants => TRUE);END;/4)打开表级附加日志alter table ogg.test add supplemental log data(all) columns;alter table SMODEL_JLJ.CM_PORT add supplemental log data(all) columns;alter table SMODEL_JLJ.CM_LINK add supplemental log data(all) columns;…….1.5 数据库11.2.0.4版本参数修改从数据库11.2.0.4版本开始,需要在源和目标端数据库上同时修改ENABLE_GOLDENGATE_REPLICATION参数:sqlplus / as sysdbaalter system set ENABLE_GOLDENGATE_REPLICATION=true scope=both;1.6 配置GLOBALS编辑GLOBALS:EDIT PARAMS ./GLOBALSGGSCHEMA ogg1.7 配置定义文件./ggsci…….1.8 建立OGG进程和队列(1)MGR参数和进程(源和目标均需要配置)cd $GG_HOME./ggsciggsci>edit param mgr --源端PORT 7809DYNAMICPORTLIST 7840-7914--AUTORESTART EXTRACT *, RETRIES 5, W AITMINUTES 3, RESETMINUTES 60 PURGEOLDEXTRACTS ./dirdat/*, usecheckpoints, minkeepdays 1LAGREPORTHOURS 1LAGINFOMINUTES 30LAGCRITICALMINUTES 45ggsci>edit param mgr --目标端PORT 17809DYNAMICPORTLIST 17810-17820--AUTORESTART REPLICAT *, RETRIES 5, WAITMINUTES 3, RESETMINUTES 60 PURGEOLDEXTRACTS ./dirdat/*, usecheckpoints, minkeepdays 1LAGREPORTHOURS 1LAGINFOMINUTES 30LAGCRITICALMINUTES 45配置完成后,源和目标均启动:ggsci> start mgr(2)源端配置extract和pump进程(根据用户实际环境填写)配置服务器A捕获进程cd $GG_HOME./ggsciggsci>edit param ext_jl具体ext_jl.prm内容如下:EXTRACT ext_jlSETENV (NLS_LANG="AMERICAN_AMERICA.ZHS16GBK")USERID ogg, PASSWORD oggDISCARDFILE ./dirrpt/ext_jl.dsc, APPEND, MEGABYTES 100TRANLOGOPTIONS dblogreaderDBOPTIONS ALLOWUNUSEDCOLUMNWARNLONGTRANS 2h,CHECKINTERV AL 3mFETCHOPTIONS NOUSESNAPSHOTTRANLOGOPTIONS CONVERTUCS2CLOBS--ddl include mappedEXTTRAIL ./dirdat/jl--TRANLOGOPTIONS ALTARCHIVELOGDEST PRIMARY INSTANCE oraXPAD1 /gg/sarch1, ALTARCHIVELOGDEST INSTANCE oraXPAD2 /gg/sarch2WILDCARDRESOLVE DYNAMICdynamicresolutionGETUPDATEBEFORESNOCOMPRESSUPDATESNOCOMPRESSDELETESgettruncatesTABLE SMODEL_JLJ.*, tokens (INDICATOR=@GETENV('GGHEADER','BEFOREAFTERINDICATOR'));TABLE gg.tcustmer, tokens (INDICATOR=@GETENV('GGHEADER','BEFOREAFTERINDICATOR'));配置传输进程cd $GG_HOME./ggsciggsci>edit param dpe_jl具体dpe_jl.prm内容如下:EXTRACT dpe_jlPASSTHRURMTHOST 10.142.96.16, MGRPORT 17809RMTTRAIL ./dirdat/jlDYNAMICRESOLUTIONGETTRUNCATESTABLE SMODEL_JLJ.*;table gg.tcustmer;增加ext和pump进程以及队列:cd $GG_HOME./ggsciADD EXTRACT ext_jl, TRANLOG, BEGIN NOWADD EXTTRAIL ./dirdat/jl, EXTRACT ext_jl, MEGABYTES 200ADD EXTRACT dpe_jl, EXTTRAILSOURCE ./dirdat/jlADD RMTTRAIL ./dirdat/jl, EXTRACT dpe_jl, MEGABYTES 200(3)配置hdfs投递进程创建hdfs目录:su – hjpthadoop fs –mkdir /data/hjpt/itf/hqit/oss/jlhadoop fs –ls /data/hjpt/itf/hqit/oss/jlhadoop fs -chmod -R +w /data/hjpt/itf/hqit/oss/oss/jl设置HDFS_HOME环境变量./ggsciggsci>edit param hive_jl具体hive_jl.prm内容如下:REPLICAT hive_jlTARGETDB LIBFILE libggjava.so SET property=dirprm/hdfs_jl.props GETUPDATEBEFORESgettruncatesDISCARDFILE ./dirrpt/ hive_jl.dsc, purge REPORTCOUNT EVERY 1 MINUTES, RATE GROUPTRANSOPS 2000MAXTRANSOPS 5000MAP gg.*, TARGET gg.*;MAP SMODEL_JLJ.*, TARGET SMODEL_JLJ.*;配置hdfs_jl.props内容如下:gg.handlerlist=hdfsgg.handler.hdfs.type=hdfsgg.handler.hdfs.includeTokens=truegg.handler.hdfs.maxFileSize=256mgg.handler.hdfs.rootFilePath=/data/hjpt/itf/hqit/oss/jlgg.handler.hdfs.fileRollInterval=0gg.handler.hdfs.inactivityRollInterval=0gg.handler.hdfs.fileSuffix=.txtgg.handler.hdfs.partitionByTable=truegg.handler.hdfs.rollOnMetadataChange=truegg.handler.hdfs.authType=nonegg.handler.hdfs.format=delimitedtextgg.handler.hdfs.format.includeColumnNames=falsegg.handler.hdfs.mode=tx#gg.handler.hdfs.format.includeOpTimestamp=truegg.handler.hdfs.format.includeCurrentTimestamp=truegg.handler.hdfs.format.insertOpKey=Igg.handler.hdfs.format.updateOpKey=Ugg.handler.hdfs.format.deleteOpKey=Dgg.handler.hdfs.format.truncateOpKey=Tgg.handler.hdfs.format.encoding=UTF-8gg.handler.hdfs.format.fieldDelimiter=CDA TA[\u0001]#gg.handler.hdfs.format.fieldDelimiter='|'gg.handler.hdfs.format.lineDelimiter=CDA TA[\n]gg.handler.hdfs.format.includeTableName=truegg.handler.hdfs.format.keyValueDelimiter=CDATA[=]#gg.handler.hdfs.format.kevValuePairDelimiter=CDATA[,] gg.handler.hdfs.format.pkUpdateHandling=updategg.handler.hdfs.format.nullValueRepresentation=gg.handler.hdfs.format.missingValueRepresentation=CDATA[] gg.handler.hdfs.format.includePosition=false#erexit.timestamp=utcerexit.writers=javawriterjavawriter.stats.display=TRUEjavawriter.stats.full=TRUEgg.log=log4jgg.log.level=INFOgg.report.time=30secgg.classpath=/etc/hadoop/conf.empty:/usr/lib/hadoop/*:/usr/lib/hadoop-hdfs/lib/*:/usr/lib/hadoop-hdfs/*:/usr/lib/hadoop/lib/*javawriter.bootoptions=-Xmx8200m –Xms8192m -Djava.class.path=ggjava/ggjava.jar增加目标端hive投递进程:cd $GG_HOME./ggsciGGSCI> add replicat hive_jl, EXTTRAIL ./dirdat/jl2 数据初始同步在不允许停源端数据库的情况下,需要准备一个临时中间数据库。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Oracle GoldenGate 安装、配置、管理Oracle GoldenGate主要由如下一些组件组成● Extract● Data pump● Replicat● Trails or extract files● Checkpoints● Manager● Collector1、Data Pump是一个次级的Extract Group,如果你的GG环境中不使用Data Pump的话,那么Primary Extract Group必须直接将trail通过网络写到Target系统上.参见后面的示例6:配置Data Pump实现一对多拓扑方案.2、默认情况下,Replicat是实时复制的,如果因为某种需要需要延迟复制的话,那么可以通过Replicat Group的如下DEFERAPPLYINTERVAL参数来控制,该参数允许delay的最大时间是7天。

按照Oracle GoldenGate的工作原理和体系结构,在每个复制数据源和目标端都需要安装一套GoldenGate软件,同时需要分别启动一个 GoldenGate实例,一个GoldenGate实例就是一个管理进程(Manager process),这个管理进程也是整个GoldenGate实例运行时最主要的控制进程。

GoldenGate操作系统内存的使用是通过操作系统来控制的,而不是通过GoldenGate程序控制的,GoldenGate进程会根据需要从OS那里分配相应的virtual memory.l GoldenGate GGSCI命令接口工具对于每个GoldenGate实例可以支持并发300个Extract和Replicat进程。

l 每个Extract和Replicat进程需要大约25-55 MB内存,这主要取决于transaction的大小和并发的transaction数量。

所以,根据上面2个条件,GoldenGate对操作系统内存的需求主要取决于Extract和Replicat进程数。

工作目录每个GoldenGate实例的工作目录(working directories and binaries),大约需要40M的空间,如果你要同一台Server安装多个GoldenGate实例到不同的目录/文件系统下话,那么就需要多倍的空间分配,在考虑空间分配的时候,也需要考虑这个因数。

辅助空间这部分空间主要用于存放GoldenGate Trails,它包含了工作数据。

这部分空间的消耗取决于Trail,依赖于将要处理的数据量。

根据实际的数据库系统的规模,每天产生的日志量的大小,建议这部分空间从1GB-100G不等,可以保存7-10天的GoldenGate队列文件即可。

对于RAC环境对于RAC环境,GoldenGate的相关软件和工作目录需要配置在shared disk环境中,从而保证对所有node都是可用的,从任何一个node都可以启动GoldenGate的进程,当其中一个node出现异常时,可以在剩余的node启动而无须修改任何配置参数.否则如果运行在单个node上的话,需要将剩余node中的归档日志通过一定的技术共享出来并加载到GoldenGate运行节点.对于RAC环境,GoldenGate要求所有node必须保持时钟同步,同时必须保持所有RAC node和运行extract进程的node节点保持时钟同步.因为GoldenGate会比较本地的系统时间和commit的时间戳.所以不能忽略这个设置.否则可能导致数据复制的紊乱.网络要求l Configure the system to use TCP/IP services, including DNSl GoldenGate 使用主机名或者IP地址进行连接,主机名的方式更容易使用l GoldenGate需要无限制的和自由的TCP/IP端口:一个port用于两个GoldenGate的Manager process之间通信(比如Source的Manager process和Target的Manager process)本地GoldenGate进程间通信使用的端口范围:缺省的端口范围从7840开始,或者可以定义一个从7840+256的端口l 建议保存一份分配给GoldenGate的端口使用记录l 配置防火墙允许接受来自GoldenGate端口的请求l 如果可能的话,可以设置FTP端口用于GoldenGate传输数据、参数和来自Source和Target的report.否则的话,需要提供其他的传输方法。

GoldenGate for Oracle1.支持的平台支持的Oracle Database 版本在当前的Oracle GoldenGate 10.4版本中,支持如下Oracle Database版本√Oracle 8i (DML support only)√Oracle 9.1 and 9.2 (DML and DDL support)√Oracle 10.1 and 10.2 (DML and DDL support)√Oracle 11g (DML and DDL support)支持的操作系统平台几乎所有主流的操作系统,GoldenGate都支持√Windows 2000, 2003, XP√Linux√Sun Solaris√HP NonStop√HP-UX√HP TRU64√IBM AIX√IBM z/OS2.操作系统需求内存要求按照Oracle GoldenGate的工作原理和体系结构,在每个复制数据源和目标端都需要安装一套GoldenGate软件,同时需要分别启动一个 GoldenGate实例,一个GoldenGate实例就是一个管理进程(Manager process),这个管理进程也是整个GoldenGate实例运行时最主要的控制进程.? GoldenGate是操作系统内存的使用是通过操作系统来控制的,而不是通过GoldenGate 程序控制的,GoldenGate进程会根据需要从OS那里分配相应的virtual memory.? GoldenGate GGSCI命令接口工具对于每个GoldenGate实例可以支持并发300个Extract和Replicat进程.? 每个Extract和Replicat进程需要大约25-55 MB内存,这主要取决于transaction的大小和并发的transaction数量.所以,根据上面2个条件,GoldenGate对操作系统内存的需求主要取决于Extract和Replicat进程数.DISK空间需求安装文件从Oracle 官方网站上download下来的GoldenGate 压缩软件包大约是50M,所以在分配磁盘空间前你需要提高考虑到这些额外的资源开销,当然了,安装完毕后,你就可以把这个压缩软件包删除了.工作目录每个GoldenGate实例的工作目录(working directories and binaries),大约需要40M的空间,如果你要同一台Server安装多个GoldenGate实例到不同的目录/文件系统下话,那么就需要多倍的空间分配,在考虑空间分配的时候,也需要考虑这个因数.辅助空间这部分空间主要用于存放GoldenGate Trails,它包含了工作数据。

这部分空间的消耗取决于Trail,依赖于将要处理的数据量。

根据实际的数据库系统的规模,每天产生的日志量的大小,建议这部分空间从1GB-100G不等,可以保存7-10天的GoldenGate队列文件即可.对于RAC环境对于RAC环境,GoldenGate的相关软件和工作目录需要配置在shared disk环境中,从而保证对所有node都是可用的,从任何一个node都可以启动GoldenGate的进程,当其中一个node出现异常时,可以在剩余的node启动而无须修改任何配置参数.否则如果运行在单个node上的话,需要将剩余node中的归档日志通过一定的技术共享出来并加载到GoldenGate运行节点。

对于RAC环境,GoldenGate要求所有node必须保持时钟同步,同时必须保持所有RAC node和运行extract进程的node节点保持时钟同步.因为GoldenGate会比较本地的系统时间和commit的时间戳.所以不能忽略这个设置,否则可能导致数据复制的紊乱。

网络要求? Configure the system to use TCP/IP services, including DNS? GoldenGate 使用主机名或者IP地址进行连接,主机名的方式更容易使用? GoldenGate需要无限制的和自由的TCP/IP端口:一个port用于两个GoldenGate的Manager process之间通信(比如Source的Manager process和Target的Manager process)本地GoldenGate进程间通信使用的端口范围:缺省的端口范围从7840开始,或者可以定义一个从7840+256的端口? 建议保存一份分配给GoldenGate的端口使用记录? 配置防火墙允许接受来自GoldenGate端口的请求? 如果可能的话,可以设置FTP端口用于GoldenGate传输数据、参数和来自Source和Target的report.否则的话,需要提供其他的传输方法.Database user在数据库中创建一个供GoldenGate使用的专用用,GoldenGate的所有进程可以使用这个用户连接到数据库中:⊙Extract (source database)⊙Replicat (target database)⊙Manager (source database, if using DDL support)⊙DEFGEN (source or target database)从系统安全的角度出发,这个GoldenGate用户建议不给任何其他应用使用,仅供GoldenGate使用。

对于Oracle 10g及以后的版本,如果使用了Automatic Storage Management (ASM),GoldenGate的Extract进程需要一个用户来访问ASM实例,但GoldenGate不支持O/S认证的授权方式,所以你可以使用sys或任何其他具有sysdba/sysasm权限的用户来连接到ASM实例.建议保留一份数据库用户的记录这些用户信息需要在GoldenGate参数文件中使用.USERID 是用户名,PASSWORD是口令对于ASM user,可以通过TRANLOGOPTIONS (带有ASMUSER 和 ASMPASSWORD选项)参数来配置。

相关文档
最新文档