Chinaunix首页 | 论坛 | 博客
  • 博客访问: 224804
  • 博文数量: 35
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 938
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-12 14:52
文章分类

全部博文(35)

文章存档

2016年(4)

2015年(5)

2014年(16)

2013年(10)

我的朋友

分类: 系统运维

2014-08-20 14:05:47

GoldenGate

一对一实施方案

 

一、安装GoldenGate

*源库需要开启归档

安装GoldenGate:源和目标都需要安装

1、创建GoldenGate安装目录:

Mkdir p /opt/oracle/gg11

2、修改环境变量:

Export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_BASE/gg11:$LD_LIBRARY_PATH

export PATH=$ORACLE_HOME/bin:$ORACLE_BASE/gg11:$PATH

3、安装GoldenGate 注:要对应数据库版本的gg安装包

Tar xvf fbo_ggs_Linux_x64_ora11g_64bit.tar

cd /opt/oracle/gg11

Ggsci

GGSCI (centos6) 1>

GGSCI (centos6) 1>create subdirs

 

二、配置GoldenGate

 

装完GoldenGate后需要执行两步操作,Source端。

Sql> alter database add supplemental log data;

Sql> alter system switch logfile;

Sql> desc v$database

Sql> select supplemental_log_data_min from v$database;

Sourcetarget把库都起来,并创建gg用户

Sql>create user ggusr identified by ggusr default tablespace users;

Sql>grant connect,resource to ggusr;

 

1、配置GoldenGate  MGR    SourceTarget都要配置。

Ggsci

Ggsci(dg1) 1> edit params mgr   创建manager初始化参数文件。

--this is the minimal configuration of manager process   注释

Port 7809

Ggsci(dg1) 2>Start mgr   启动

Ggsci(dg1) 3>Info mgr   查启动信息

Ggsci(dg1) 4>quit

Pef |grep ora

    

2、在Source

Ggsci

Ggsci(dg1) 1> dblogin userid system, password zsht2014  //红字是用户密码

Ggsci(dg1) 2> add trandata ggusr.*     源数据要捕获的表

Ggsci(dg1) 3> info trandata ggusr.*

源数据库端配置

 

一、增加Primary Extract

1GGSCI (centos6) 3> add extract eiexkk,tranlog,begin now,threads 2   //数字代表节点

---抽取进程,负责抓取SourceDB中变化的数据。

2GGSCI (centos6) 4> edit params eiexkk

Extract eiexkk

Userid ggusr, password ggusr

exttrail ./dirdat/kk

DDL INCLUDE ALL

GETTRUNCATES

GETUPDATES

Table ogg_dbbak.*;                         //红色代表用户

3GGSCI (centos6) 6> add exttrail ./dirdat/kk,extract eiexkk,megabytes 5 //数字代表抽取文件多大。

EXTTRAIL added.

 

二、增加Pump Extract1 用于向目标1进行数据复制

1GGSCI (centos6) 7> add extract extpp,exttrailsource ./dirdat/kk

EXTRACT added.

 

2GGSCI (centos6) 10> edit params extpp

EXTRACT extpp

userid system,password zsht2014

RMTHOST 192.168.31.201, MGRPORT 7809

RMTTRAIL ./dirdat/kk

TABLE ogg_dbbak.*;

3GGSCI (centos6) 11> add rmttrail ./dirdat/kk,extract extpp,megabytes 5

RMTTRAIL added.

 

三、启动复制进程:

GGSCI (centos6) 16> start extract eiexkk

GGSCI (centos6) 17> start extract extpp

GGSCI (centos6) 19> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                           

EXTRACT     RUNNING     EXTKK      00:00:00      00:00:11    

EXTRACT     RUNNING     EXTPP      00:00:00      00:00:00    

 

目标数据库配置:

1.edit params ./globals

 checkpointtable system.ggchkpttab   

 Ggschema ggusr

2Ggsci

GGSCI (centos7) 7> dblogin userid system, password zsht2014

GGSCI (centos7) 7> add checkpointtable system.ggchkpttab

3,增加Replicat

GGSCI (centos7) 3> add replicat repm1,exttrail ./dirdat/kk  //如果出现错误加上checkpointtable system.ggchkpttab  

REPLICAT added.

----复制进程,将抽取到队列中的文件解析后写进TargetDB

4GGSCI (centos7) 5> edit params repm1

REPLICAT REPM1

USERID system, password zsht2014

HANDLECOLLISIONS

ASSUMETARGETDEFS

DISCARDFILE ./dirrpt/REPM1.DSC, PURGE

GETTRUNCATES

GETUPDATES

Dynamicresolution

DDL INCLUDE ALL

MAP oggtest.*, TARGET oggtest.*;

5GGSCI (centos7) 36> start replicat repm1

 

GoldenGate DDL配置方案:

一、在源端配置。 注:(每个充当源的数据库都要配置,如多主,双向环境)

1,关闭Oracle 10G回收站机制,11G可以开启。

10g可以用:

Sql> alter system set recyclebin=off; 关闭

Sql> alter system set recyclebin=on; 开启

11g可以用:

Sql> alter system set recyclebin=off deferred; 关闭

Sql> alter system set recyclebin=on deferred; 开启

2,授予权限

SQL> grant execute on utl_file to ggusr;

3,编辑Global参数,加入以下内容:

Ggschema ggusr

4,执行配置脚本:列表如下

marker_setup.sql

ddl_setup.sql

role_setup.sql

grant the role to all goldengate extract users

ddl_enable.sql

install and use the optional performance tool

4.1)执行marker_setup脚本

脚本安装marker系统,这部分为启用DLL支持所必备,执行该脚本时会提示输入GoldenGate管理帐户schema

SQL> @marker_setup.sql

Marker setup script

Enter Oracle GoldenGate schema name:ggusr

4.2) 执行ddl_setup脚本

执行该脚本要确认关闭掉所有ORACLE会话,未被关闭的会话会以列表形式显示,执行过程中会要求希望对象属主,并选择安装模式。如果是初次安装就选择“INITIALSETUP”,该模式假设当前没有任何GoldenGate DDL对象存在,如果存在则会删除并重建。如果是重新安装,则应该选择“NORMAL”。具体执行示例如下

SQL> @ddl_setup.sql

4.3) 执行role_setup脚本

该操作会重建DDL同步所需的权限,授予GoldenGate中的DDL对象以DML权限,执行示例如下:

SQL> @role_setup.sql

4.4) 按照上面返回的提示,执行授权操作,注意是将权限授予执行Extract/GGSCI或其它管理操作的用户,我们这里的情况看显然是ggate,执行命令如下:

SQL> grant ggs_ggsuser_role to ggusr;

4.5) 执行ddl_enable脚本

启用DDL触发器,以捕获DDL操作:

SQL> @ddl_enable.sql

4.6) 安装性能优化工具(可选项)

要提高DDL触发器的性能,可以通过ddl_pin脚本,该脚本会将触发器使用的包加载到内存,以此提高效率。该脚本执行时需要引用dbms_shared_pool系统包,因此在使用ddl_pin脚本前需要确保dbms_shared_pool可用

SQL> @?/rdbms/admin/dbmspool.sql

4.7) 执行ddl_pin脚本需要指定GoldenGate管理员schema名称,例如:

SQL> @ddl_pin ggusr

 

 

配置完成,验证数据同步。

阅读(16976) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~