GOLDENGATE安装

1. 下载与数据库对应版本的goldengate安装介质。

2. 创建goldengate系统用户,设置用户环境变量,如果是oracle,建议直接使用oracle作为用户安装。

3. 创建goldengate数据库用户,并授予足够权限,该用户至少应该有connect、resource、select any dictionary、select any table的权限。当然授予dba权限的话,那么就涵盖了所需的所有权限。

在此处使用的oracle数据库用户为 ggs 密码也是ggs。 提醒一天,ggs尽量使用自己的表空间。这样可以有效的进行维护。

建议脚本

SQL> grant connect, resource,unlimited tablespace,select any dictionary, select any table,insert any table,update any table,delete any table,alter any table,flashback any table

to ggs;

SQL>grant execute on dbms_flashback to ggs;

SQL>grant execute on utl_file to ggs;

4. 将源端数据库设置为归档模式。

SQL>alter database archivelog;

SQL>archive log list;

注意 归档是需要重启的。所以请妥善管理好时间。

5. 将源端数据库的附加日志打开

SQL>select supplemental_log_data_min from v$database;

如果没有打开,则使用以下sql命令打开附加日志

SQL>alter database add supplemental log data;

6. 打开force logging

SQL>alter database force logging;

7. 将goldengate安装介质上传到服务器,解压缩包。

8. 在解压缩包后的根目录,也就是goldengate工作目录,运行 ./ggsci命令进入ggsci命令提示符界面,运行create subdirs:等待命令结束,goldengate安装完成。

可能遭遇的错误以及该如何处理的过程:

scp ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip oracle@172.25.0.10:/oracle/

mkdir -p /oracle/insogg/

unzip /oracle/ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip -d /oracle/insogg/

mkdir -p /oracle/ogg/

tar -xvf /oracle/insogg/fbo_ggs_Linux_x64_ora11g_64bit.tar -C /oracle/ogg

修环境变量

vi .bash_profile

export PATH=$PATH:$ORACLE_HOME/bin:/home/oracle/ggs

export LD_LIBRARY_PATH=/home/oracle/ggs:$ORACLE_HOME/lib

9. 打开DDL支持(可选)

SQL>@marker_setup.sql

SQL>@ddl_setup.sql

SQL>@role_setup.sql

SQL>@Grant the role to all GoldenGate Extract users

SQL>@ddl_enable.sql

SQL>@marker_setup.sql

SQL>@ddl_setup.sql

SQL>@role_setup.sql

SQL> Grant the role to all GoldenGate Extract users

SQL>@ddl_enable.sql

10. 在目标库上面完成7-9步骤

GOLDENGATE配置

1、首先需要在源端和目标端都配置一个管理进程,也就是goldengate实例。

运行ggsci,然后输入 edit params mgr

此时会弹出一个编辑器,在新创建的文件中工加入端口定义,比如port 7809。

保存退出后,运行start mgr则能启动管理进程。

GGSCI>dblogin userid <username>,password <password>

增加需要同步表列表

GGSCI>add trandata <schema_name>.<table_name>

参考实例

./ggsci

GGSCI (install0.example.com) 1> create subdirs

GGSCI (install0.example.com) 1> dblogin userid ggs,password ggs

GGSCI (install0.example.com) 1> edit params mgr

port 7809

dynamicportlist 7800-8000

checkminutes 10

purgeoldextracts /oracle/ggtrail/lt*,usecheckpoints,minkeepdays 3,maxkeepdays 10

PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 7, FrequencyMinutes 120

PurgeMarkerHistory MinKeepDays 3, MaxKeepDays 7, FrequencyMinutes 120

autostart ER *

autorestart ER *,waitminutes 2,resetminutes 5

laginfominutes 0

lagreportminutes 10

在源添加checkpoint表:

GGSCI (oracle0.example.com) 1>

CHECKPOINT TABLE ggate.checkpoint

--------------------------------

GGSCI (oracle0.example.com) 1> dblogin userid ggs, password ggs

GGSCI (oracle0.example.com) 2> add checkpointtable ggs.checkpoint

#################################################################

在源端增加同步的表

GGSCI (install0.example.com) 1> add trandata vip_system.CIM_MAPEXCHANGECODE

add trandata vip_system.CIM_PERSONMAIN

add trandata vip_system.CIM_SUBSCRIBE

2、在源端配置数据捕获进程和数据传输进程。

数据捕获进程负责将数据从数据库日志抓取出来,存放到一个队列文件中,数据传输进程负责将队列文件按照指定的业务逻辑传输到目标数据库。

添加extract进程命令: add extract <extract_name>,tranlog,<开始时间或者SCN或者RBA>

修改配置参数: edit params <extract_name>

GGSCI>delete extract demo

Deleted EXTRACT DEMO.

配置抽取进程

GGSCI> add extract demo,tranlog,begin now

EXTRACT added.

GGSCI>add extract demo,tranlog,EXTSEQNO 849039

GGSCI>edit params demo

extract demo

setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)

setenv (ORACLE_SID="orcl") userid ggs,password oracle

REPORT AT 01:59

reportrollover at 02:00

GETTRUNCATES

WARNLONGTRANS 2h,CHECKINTERVAL 3m

TRANLOGOPTIONS convertucs2clobs

FETCHOPTIONS NOUSESNAPSHOT

exttrail /home/oracle/ggs/dirdat/mm

discardfile /home/oracle/ggs/dirrpt/mm, append , megabytes 100

dynamicresolution

table sh.one;

指定从某一时刻开始

GGSCI>add extract demo,tranlog,begin 2012-1-2 11:23:10

配置参数说明

Extract <extract_name>:指定刚才加入的extract的名字

SETENV():指定该extract启动时oracle相关的环境变量.

Userid <oracle_user>, password <oracle_password>:连接到源数据库的用户,既我们在第一步建立的源端数据库用户。

Report:指定每天在日志中产生报告的时间

Reportrollover:指定每天汇报队列文件切换报告的时间

Gettruncates:告诉extract对truncate操作也要捕获

Warnlongtrans:超过<n>个小时的交易为长交易,要在goldengate日志中进行记录,检查时间为指定的checkinterval。

Tranlogoptions:针对源数据库的一些配置选项,如数据库归档的位置等等,本例子中的值是指当源和目标数据库字符集不一致,而且传输包含clob字段时,需要对clob中的字符集进行转换。

Fetchoptions:指定当从源数据库抓取数据时的一些选项,本例指不从undo tablespace取数据,而是从表里直接抽取。

Exttrail:本地队列文件,extract将数据从数据库日志抓取后存放在该队列文件。

Discardfile:指定丢弃数据的存放位置。

Dynamicresolution:指定当extract从日志抓取变化数据时,根据当前的需要,动态解析表名,从而加快抓取进程的启动速度。

Table <schema>.<table_name>:指定要从源系统抓取那些表的数据,这里schema不能用通配符,table_name可以用通配符。

配置传输进程

GGSCI>add extract pump1,exttrailsource ./dirdat/lt

EXTRACT added

GGSCI>add rmttrail ./dirdat/lt,extract pump1

指定传输起始点

GGSCI> alter extract pump1 extseqno <seq>, extrba <ba>

GGSCI>alter extract pump1 begin 2012-1-2 11:23:10

参考样例

抽取配置

GGSCI (centerdb-prod) 2> edit params ext1

extract ext1

setenv (NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK)

setenv (ORACLE_SID="orcl")

userid ggs,password ggs

REPORT AT 01:59

reportrollover at 02:00

WARNLONGTRANS 2h,CHECKINTERVAL 3m

TRANLOGOPTIONS convertucs2clobs

FETCHOPTIONS NOUSESNAPSHOT

DBOPTIONS ALLOWNOLOGGING

ignorereplicates

tranlogoptions excludeuser ggate

exttrail /oracle/ogg/dirdat/ea

discardfile /oracle/ogg/dirrpt/dt,append,megabytes 100

dynamicresolution

TABLE vip_system.CIM_MAPEXCHANGECODE;

TABLE vip_system.CIM_PERSONMAIN;

TABLE vip_system.CIM_SUBSCRIBE;

TABLE vip_system.CUSTOMER_BASICINFO;

TABLE vip_system.CUSTOMER_SERVICE;

TABLE vip_system.CUS_GROUP;

GGSCI (oracle0.example.com) 2> add extract ext1, tranlog, begin now

添加抽取进程的生成文件

GGSCI (oracle0.example.com) 3> add exttrail /oracle/ogg/dirdat/ea,extract ext1

增加投递功能

GGSCI (centerdb-prod) 2>edit params pump1

extract pump1

userid ggs,password ggs

rmthost 172.19.16.45,mgrport 7809

rmttrail /home/oracle/ogg/dirdat/lt

passthru

table vip_system.*;

table gbox.*;

table weixin.*;

table tzzh.*;

----------------------------------------------

在源端增加投递进程

GGSCI (oracle0.example.com) 4> add extract pump1,exttrailsource /oracle/ogg/dirdat/ea , begin now

增加投递到远程的文件

GGSCI (oracle0.example.com) 5> add rmttrail /home/oracle/ogg/dirdat/lt ,extract pump1

3、配置目标端的应用进程

设置检查点

GGSCI>edit params GLOBAL

CHECKPOINT TABLE ggate.checkpoint

GGSCI>dblogin userid <userid>,password <password>

GGSCI>add checkpointtable

增加复制进程组

GGSCI>add replicat rep1,exttral ./dirdat/lt

GGSCI>edit param rep1

replicat rep1

userid ggate, password ggate50

assumetargetdefs

reperror default, discard

dynamicresolution

discardfile /oracle/goldengate/dirdat/rep1_discard.txt, append, megabytes 10

DDL

map center_admin.*, target center_admin.*;

指定应用进程起始点

GGSCI> alter extract rep1 extseqno <seq>, extrba <ba>

GGSCI>alter extract rep1 begin 2012-1-2 11:23:10

参考样例

GGSCI (localhost.localdomain) 58> edit params mgr

port 7809

dynamicportlist 7800-8000

autorestart er *

autorestart extract *,waitminutes 2,retries 5

purgeoldextracts /home/oracle/ogg/dirdat/lt*,usecheckpoints,minkeepdays 1,maxkeepdays 2

在源和目标都要端添加checkpoint表:

配置全局参数文件

vi /home/oracle/ogg/GLOBALS

--------------------------------

checkpointtable ggs.checkpoint

--------------------------------

GGSCI (oracle0.example.com) 1> dblogin userid ggs, password ggs

GGSCI (oracle0.example.com) 2> add checkpointtable ggs.checkpoint

#################################################################

GGSCI (localhost.localdomain) 59> edit params rep1

replicat rep1

SETENV(NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK")

userid ggs, password ggs

assumetargetdefs

reperror default, discard

discardfile /home/oracle/ogg/dirdat/rep1_discard.txt, purge, megabytes 1000

dynamicresolution

DDL INCLUDE MAPPED &

EXCLUDE MAPPED OBJTYPE 'TRIGGER' &

EXCLUDE MAPPED OBJTYPE 'JOB' &

EXCLUDE MAPPED OPTYPE TRUNCATE

DDLERROR DEFAULT IGNORE RETRYOP

map vip_system.*, target vip_system.*;

map gbox.*, target gbox.*;

map weixin.*, target weixin.*;

map tzzh.*, target tzzh.*;

增加复制进程

GGSCI (install0.example.com) 2> add replicat rep1,exttrail /home/oracle/ogg/dirdat/lt , nodbcheckpoint

GoldenGate安装配置的更多相关文章

  1. [转]Oracle GoldenGate安装配置

    ref:http://blog.sina.com.cn/s/blog_5d29418d0101cvyx.html 1 简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软 ...

  2. Goldengate双向复制配置

    一.Goldengate双向复制配置 1.1.在进行如下配置之前,先在源数据库source system(原来的目标数据库)端 添加辅助的redolog配置: SQL>alter databas ...

  3. Oracle GoldenGate常用配置端口

    1 简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数 ...

  4. ogg的安装配置 配置双向同步(含DDL)

    第一部分 先配置单向同步(含DDL) 一 源端安装GoldenGate 创建用户 创建目录 mkdir -p /opt/ogg chmod -R 777 /opt/ogg chown -R oracl ...

  5. GoldenGate DB11gr2配置手册

    GoldenGate DB11gr2配置手册 源端数据库配置 1.1源端数据库打开Archive Log: SQL>shutdown immediate; SQL>startup moun ...

  6. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  7. Hive on Spark安装配置详解(都是坑啊)

    个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...

  8. ADFS3.0与SharePoint2013安装配置(原创)

    现在越来越多的企业使用ADFS作为单点登录,我希望今天的内容能帮助大家了解如何配置ADFS和SharePoint 2013.安装配置SharePoint2013这块就不做具体描述了,今天主要讲一下怎么 ...

  9. Hadoop的学习--安装配置与使用

    安装配置 系统:Ubuntu14.04 java:1.7.0_75 相关资料 官网 下载地址 官网文档 安装 我们需要关闭掉防火墙,命令如下: sudo ufw disable 下载2.6.5的版本, ...

随机推荐

  1. 【转载】mysql常用函数汇总

    转载地址:http://www.jb51.net/article/40179.htm 一.数学函数ABS(x)   返回x的绝对值BIN(x)   返回x的二进制(OCT返回八进制,HEX返回十六进制 ...

  2. 部分类Partial

    Partial告诉编译器,一个类,结构,接口的定义源代码可能要分散到一个或者多个源文件中. 在下面的情况下用Partial类型: (1) 类型特别大,不宜放在一个文件中实现.(2) 一个类型中的一部分 ...

  3. 深入理解java虚拟机(五)垃圾收集器

    垃圾收集器 垃圾收集器是垃圾收集算法的具体实现.Java规范对垃圾收集器的实现没有做任何规定,因此不同的虚拟机提供的垃圾收集器可能有很大差异.HotSpot虚拟机1.7版本使用了多种收集器.如下图. ...

  4. 学习python3

    定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 (). 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定 ...

  5. 16、Semantic-UI之模态窗口

    16.1 定义模态窗口 示例:定义基础的模态窗口 <!DOCTYPE html> <html lang="en"> <head> <met ...

  6. memcached整理の编译

    memcached是一个自由&开放源码, 高性能,分布式的内存对象缓存系统. nosql相对于传统关系型数据库的"行与列",NoSQL 的鲜明特点为k-v 存储(memca ...

  7. Linq的使用场景简介和认识

    一:C#的一个分支Linq 二:学Linq需要有一些基础知识 1. var 隐式类型 2. 匿名类型/匿名方法 3. 自动属性 4. 委托/泛型的委托 5. lambda 6. 扩展方法 7. 对象初 ...

  8. Linq研究

    微软在.NET 3.5中加入了LINQ技术,作为配套改进了C#语言,加入了Lambda表达式,扩展方法,匿名类型等新特性用以支持LINQ.微软同时提出了要使用声明式编程,即描述计算规则,而不是描述计算 ...

  9. c#设计模式系类:亨元模式

    一.引言 在软件开发过程中,如果我们需要重复使用某个对象的时候,如果我们重复地使用new创建这个对象的话,这样我们在内存就需要多次去申请内存空间了,这样可能出现内存使用越来越多的情况,这样的问题是非常 ...

  10. ASP.NET MVC实现一个用户只能登录一次 单用户登录

    现在许多网站都要求登录后才能进行进一步的操作,当不允许多用户同时登录一个帐号时,就需要一种机制,当再登录一个相同的帐号时,前面登录的人被挤下线,或者禁止后面的人登录.这里实现的是前一种功能. 网上有许 ...