前言

goldengate 11g 在oracle 11g rac 上的配置 (源是rac+asm , 目标是单数据库实例)

源端:

1. 配置tnsnames

[oracle@rac1 admin]$ more tnsnames.ora

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.

sunrac =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = rac1)(PORT = 1522))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = sunrac)

)

)

ASM =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = rac1)(PORT = 1522))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = +ASM)

(SID_NAME = +ASM1)

)

)

我只是测试,所以只在第一个节点上做

2. 数据库环境准备,添加最小附加日志

SQL> alter database add supplemental log data;

Database altered.

SQL> alter system switch logfile;

System altered.

SQL> select supplemental_log_data_min from v$database;

SUPPLEME

--------

YES

创建测试表:

SQL> conn test/test

Connected.

SQL> create table mxm (id int,name varchar2(80));

Table created.

SQL> begin

2 for i in 1 .. 1000000 loop

3 insert into mxm values (i,'mic');

4 end loop;

5 commit;

6 end;

7 /

PL/SQL procedure successfully completed.

SQL> select count(*) from mxm;

COUNT(*)

----------

1000000

SQL> select bytes/1024/1024 from user_segments where segment_name='MXM'; ---看一下数据量,最后好算算传输率

BYTES/1024/1024

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

16

创建goldengate 用户并赋予dba 权限(避免权限的麻烦)

SQL> create user ogg identified by ogg;

User created.

SQL> grant dba to ogg;

Grant succeeded.

3. 安装ogg

4. 配置ogg mgr

[oracle@rac1 goldengate]$ ./ggsci

GGSCI (rac1) 1> create subdirs

配置mgr 端口:

GGSCI (rac1) 1> edit param mgr

GGSCI (rac1) 2> view param mgr

PORT 7809

GGSCI (rac1) 3> start mgr

GGSCI (rac1) 4> info all

5.配置抽取进程和传输进程

GGSCI (rac1) 3> edit param exttest

GGSCI (rac1) 4> view param exttest

extract exttest

userid ogg@sunrac,password ogg

tranlogoptions asmuser sys@asm,asmpassword Beijing123 --登录asm的

exttrail ./dirdat/mm

table test.mxm;

GGSCI (rac1) 6> edit param pumptest

GGSCI (rac1) 7> view param pumptest

extract pumptest

rmthost 192.168.56.109,mgrport 7809,compress

rmttrail ./dirdat/mm

passthru

table test.mxm;

GGSCI (rac1 as ogg@SUNRAC1) 10> add extract exttest,tranlog,Begin Now threads 2 --因为我的rac 是2个节点的,所以是threads 2

EXTRACT added.

GGSCI (rac1 as ogg@SUNRAC1) 11> add exttrail ./dirdat/mm,extract exttest,megabytes 5

EXTTRAIL added.

GGSCI (rac1 as ogg@SUNRAC1) 12> add extract pumptest,exttrailsource ./dirdat/mm --添加source dir

EXTRACT added.

GGSCI (rac1 as ogg@SUNRAC1) 14> add rmttrail ./dirdat/mm,extract pumptest,megabytes 5 --添加remote dir

RMTTRAIL added.

添加trandata

GGSCI (rac1) 15> dblogin userid ogg@sunrac,password ogg

Successfully logged into database.

GGSCI (rac1 as ogg@SUNRAC1) 16> add trandata test.mxm

6. 配置init 进程

GGSCI (rac1) 2> edit param inittest

GGSCI (rac1) 4> view param inittest

extract inittest

userid ogg,password ogg

rmthost 192.168.56.109,mgrport 7809

rmttask replicat,group initrep --目标端init接收进程名

table test.mxm;

GGSCI (rac1) 6> add extract inittest, sourceistable

EXTRACT added.

目标端

1. 创建相应的表

SQL> create table mxm (id int,name varchar2(80));

Table created.

2. 安装ogg

3. 配置mgr

GGSCI (oracledg) 1> edit param mgr

GGSCI (oracledg) 2> view param mgr

PORT 7809

ACCESSRULE, PROG *, IPADDR 192.168.56.101, ALLOW --没有这行,inittest 进程无法启动目标端的initrep进程

GGSCI (oracledg) 4> start mgr

GGSCI (oracledg) 5> edit params ./GLOBALS

GGSCI (oracledg) 6> view params ./GLOBALS

ggschema ogg

CHECKPOINTTABLE ogg.checkpointtab

GGSCI (oracledg) 8> dblogin userid ogg,password ogg

Successfully logged into database.

GGSCI (oracledg as ogg@mic) 9> add checkpointtable

4. 配置rep 进程

GGSCI (oracledg as ogg@mic) 11> edit param reptest

GGSCI (oracledg as ogg@mic) 12> view param reptest

replicat reptest

userid ogg,password ogg

HANDLECOLLISIONS

ASSUMETARGETDEFS

discardfile ./dirrpt/reptest.dsc,append

map test.mxm, target test.mxm;

GGSCI (oracledg as ogg@mic) 13> add replicat reptest,exttrail ./dirdat/mm

REPLICAT added.

5.配置initrep 的进程

GGSCI (oracledg as ogg@mic) 16> edit param initrep --名字必须和inittest进程中的配置一样

GGSCI (oracledg as ogg@mic) 17> view param initrep

replicat initrep

userid ogg,password ogg

ASSUMETARGETDEFS

discardfile ./dirrpt/initrep.dsc,append,megabytes 100

map test.mxm, target test.mxm;

开始同步和初始化

源端:

GGSCI (rac1) 5> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING

EXTRACT STOPPED EXTTEST 00:00:00 02:46:12

EXTRACT STOPPED PUMPTEST 00:00:00 02:43:19

这里看不到inittest 进程

启动抽取进程

GGSCI (rac1) 6> start exttest

Sending START request to MANAGER ...

EXTRACT EXTTEST starting

启动pump进程

GGSCI (rac1) 8> start pumptest

Sending START request to MANAGER ...

EXTRACT PUMPTEST starting

GGSCI (rac1) 9> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING

EXTRACT RUNNING EXTTEST 00:00:00 00:00:11

EXTRACT RUNNING PUMPTEST 00:00:00 00:00:02

启动inittest 进程

GGSCI (rac1) 10> start inittest -- 这个进程可以直接连通目标端的initrep进程,所以目标端不用再启动initrep进程

Sending START request to MANAGER ...

EXTRACT INITTEST starting

模拟插入数据

SQL> begin

2 for i in 1000000 .. 1000100 loop

3 insert into mxm values (i,'mic');

4 dbms_lock.sleep(10);

5 end loop;

6 commit;

7 end;

8 /

目标端

启动rep进程,

GGSCI (oracledg as ogg@mic) 1> start reptest

Sending START request to MANAGER ...

REPLICAT REPTEST starting

这里不需要启动initrep进程

源端

观察inittest进程情况

GGSCI (rac1) 12> view report inittest

...

2019-02-26 14:48:31 WARNING OGG-06439 No unique key is defined for table MXM. All viable columns will be used to represent the key, but may not guarantee uniqueness. KEYCOLS

may be used to define the key.

2019-02-26 14:48:31 INFO OGG-06509 Using the following key columns for source table TEST.MXM: ID, NAME.

2019-02-26 14:48:37 INFO OGG-02911 Processing table TEST.MXM.

***********************************************************************

* ** Run Time Statistics ** *

***********************************************************************

Report at 2019-02-26 14:52:39 (activity since 2019-02-26 14:48:31)

Output to initrep:

From Table TEST.MXM:

# inserts: 1000052

# updates: 0

# deletes: 0

# discards: 0

REDO Log Statistics

Bytes parsed 0

Bytes output 76893373

可以看到初始或进程完成,用时大概4分钟多

停止insert sql,并查询总行数

SQL> select count(*) from mxm;

COUNT(*)

----------

1000121

目标端

SQL> select count(*) from mxm;

COUNT(*)

----------

1000121

至此,goldengate 同步initial load初始化配置完成 , 但是用4分钟的时间传输了16M的数据,性能实在太差了。

作者:米考

原文链接:https://www.cnblogs.com/mikao/p/10437530.html

oracle如何增加initial,golden gate 加initial load 在rac 上的配置相关推荐

  1. oracle golden gate原理和安装配置

    oracle golden gate使用配置 我们采用oracle 11g数据库对应的golden gate传统模式配置: oracle golden gate的逻辑架构: oracle golden ...

  2. Oracle Golden Gate 系列一 -- GG 架构 说明

    一. GoldenGate 下载地址 官网可以直接下载: http://www.oracle.com/technetwork/middleware/goldengate/downloads/index ...

  3. Oracle Golden Gate 系列十二 -- GG 数据初始化装载二 基于SCN 的初始化 说明 与 示例...

    一.初始化说明 GG实施过程中,初始化是一个重要的工作,尤其是要初始化的数据较多,并且系统又是7*24的时. 对于静态初始化,把业务停掉,DB 上的数据就不会有变化,这时候,我们可以用expdp/im ...

  4. Oracle Golden Gate概要

    Oracle GoldenGate简介 Oracle Golden Gate用于源数据库与目标数据库的数据复制备份:可以在异构的环境(各种操作系统和数据库)之间实现数据亚秒级的实时复制备份:以及可以在 ...

  5. Oracle Golden Gate 系列十六 -- 配置 GG 安全 说明 与 示例

    由于GoldenGate所需的用户权限较大,而每个GoldenGate进程配置文件中都需要设置该用户和密码用于数据库登陆,出于安全性的考虑,建议将密码进行加密. 官方文档上介绍的加密有如下三种方法: ...

  6. Oracle Golden Gate

    Oracle Golden Gate 系列 小结 花了大半个月的时间小研究了一下Oracle Golden Gate. 先简单的说说自己学习GG的一个过程.参考资料都是官方文档,官网的链接如下: ht ...

  7. Oracle Golden Gate 系列 小结

    花了大半个月的时间小研究了一下Oracle Golden Gate. 先简单的说说自己学习GG的一个过程. 参考资料都是官方文档,官网的链接如下: http://download.oracle.com ...

  8. Oracle Golden Gate 系列十五 -- GG Trails 说明

    一.Trails 说明 理论知识在系列一里有说明,这里在拿出来看一下: Oracle Golden Gate 系列一 -- GG 架构 说明 http://blog.csdn.net/tianleso ...

  9. Oracle Golden Gate 系列十七 -- GG 一对多 real-time data distribution 说明 与 示例

    一.官网说明 A datadistribution configuration is a one-to-many configuration. Oracle GoldenGatesupports sy ...

最新文章

  1. 力扣(LeetCode)刷题,简单题(第9期)
  2. 如何修改linux时间? 校正linux系统的时间
  3. IOS学习之IOS沙盒(sandbox)机制和文件操作之NSFileManager(三)
  4. CABasicAnimation使用总结
  5. C#调C++生成的dll报0x800736B1错误
  6. 图之DFS与BFS的复杂度分析
  7. 装完系统还要装什么_家里装了空调还要装空气净化系统吗?会不会太浪费了?...
  8. elementui 上传七牛_element ui使用上传组件上传文件到七牛(qiniu-js)
  9. redis演练(1) 搭建redis服务
  10. Django auth认证
  11. Windows phone 8.1 MessageBox 变了哦!
  12. CDN实战:访问苹果开发者网站太慢、访问github太慢
  13. Apizza在线接口工具如何支持RESTful Path 参数
  14. Homebrew国内加速
  15. 串级控制PID 炉温控制
  16. Unity中实现解析XML文件
  17. PyTorch常用5个抽样函数
  18. 如何注册腾讯云个人账号(图文教程)
  19. 伯克利AI实验室最新发文:公布用于机器人抓取的Dexterity Network (Dex-Net) 2.0数据集...
  20. dockerfile volume

热门文章

  1. JavaGui实现英雄联盟换肤展示效果
  2. 沸腾20年的互联网,趋于平静,新型开发生态,如日中天
  3. 【cocosStdio系列】之UI控件下
  4. unity Shuriken粒子系统 ---飞镖系统?
  5. Android知识汇总
  6. 看了会哭,APP推广沙龙高手分享精华纪要版
  7. pycinrad学习入门笔记,数据为雷达新旧格式基数据、pup产品数据
  8. 稀缺荐读 认知天性 荐读
  9. Manjaro kde 18.0安装与基本配置
  10. java+springboot基于性别网上学习特征问卷调查及可视化系统