配色: 字号:
GoldenGate 单向复制配置方法
2014-07-14 | 阅:  转:  |  分享 
  
GoldenGate单向复制配置方法

(2013-06-1818:03:07)

转载▼

分类:oracle常用命令 GoldenGate单向复制配置方法



实验环境:centos5.5(64bit)+oracle10g(64bit)+golbengate



注意:选择golbengate的版本

oraclegolbengate官方下载地址:

http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html

所有操作都在oracle用户下进行

(golbengate以下简称ogg)



一、源端安装配置

1、安装ogg

mkdir-p/u01/oracle/ggate

cd/u01/oracle/ggate

解压ogg文件包

tarxvf文件包名



2、配置oracle用户的环境变量

vi~/.bash_profile

在文件末尾添加

exportLD_LIBRARY_PATH=$ORACLE_HOME/lib:/u01/oracle/ggate

exportGGATE_HOME=/u01/oracle/ggate

如果本来有LD_LIBRARY_PATH,可以将后面的参数添加到原来后面



配置完成后执行:source~/.bash_profile



3、创建ogg目录

cd/u01/oracle/ggate

./ggsci(进入goldengate命令行界面)

createsubdirs

exit



4、查看配置数据库归档

sqlplus"/assysdba"

selectlog_mode,supplemental_log_data_min,force_loggingfromv$database;



LOG_MODESUPPLEMEFOR

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

ARCHIVELOGNONO

如果结果是NO,执行下面操作,为IMPLICIT和YES就跳过配置归档这一步:

altersystemsetlog_archive_format=''%s_%t_%r.log''scope=spfile;

altersystemsetlog_archive_dest_1=''location=/u01/oracle/arc'';

shutdownimmediate;

startupmount;

alterdatabasearchivelog;

alterdatabaseforcelogging;(开启强制日志模式)

alterdatabaseopen;

alterdatabaseaddsupplementallogdata(primarykey,unique)columns;

archiveloglist;(查看归档是否已经起来)



5、关闭oracle回收站

altersystemsetrecyclebin=offscope=spfile;



6、配置复制的DDL支持

创建用户授权:



createuserggateidentifiedbyggatedefaulttablespaceuserstemporarytablespacetempquotaunlimitedonusers;

grantconnect,resource,dbatoggate;

grantexecuteonutl_filetoggate;

grantrestrictedsessiontoggate;

@$GGATE_HOME/marker_setup.sql;

输入:GGATE

@$GGATE_HOME/ddl_setup.sql;

@$GGATE_HOME/role_setup.sql;

grantGGS_GGSUSER_ROLEtoggate;

@$GGATE_HOME/ddl_enable.sql;



7、创建源端用户(用于同步的用户)

createusersenderidentifiedbyggatedefaulttablespaceuserstemporarytablespacetempquotaunlimitedonusers;

grantdba,connect,resourcetoggate;

grantselectonv_$sessiontoggate;



8、配置manager

cd/u01/oracle/ggate

./ggsci(进入goldengate命令行)

editparamsmgr

输入:PORT7809

保存退出



9、配置源端复制队列

同样是在goldengate命令行里做

addextractext1,tranlog,beginnow

addexttrail/u01/oracle/ggate/dirdat/lt,extractext1

editparamsext1

输入如下内容:

extractext1

useridggate,passwordggate

rmthost目标机,mgrport7809

rmttrail/u01/oracle/ggate/dirdat/lt

ddlincludemappedobjnamesender.;

tablesender.;

保存退出,用infoall查看一下状态,此时的状态应该为运行状态,如有问题请查看日志报错



关闭进程:

stopmgr

stopext1



二、目标端安装配置

1、安装ogg(方法如上)

2、配置环境变量(方法如上)

3、创建ogg目录(方法如上)

4、创建目标端用户

createuserggateidentifiedbyggatedefaulttablespaceuserstemporarytablespacetempquotaunlimitedonusers;

createuserreceiveridentifiedbyggatedefaulttablespaceuserstemporarytablespacetempquotaunlimitedonusers;(接收同步的用户)

grantconnect,resource,dbatoggate;

grantexecuteonutl_filetoggate;

grantrestrictedsessiontoggate;

grantconnect,resource,dbatoreceiver;

grantselectonv_$sessiontoreceiver;



5、配置replicat

./ggsci

editparams./GLOBALS

输入:

GGSCHEMAggate

CHECKPOINTTABLEggate.checkpoint

保存退出



editparamsmgr

输入:PORT7809

保存退出



6、在goldengate命令行登录数据库

dbloginuseridggate,passwordggate

addcheckpointtableggate.checkpoint(增加检测点)

addreplicatrep1,exttrail/u01/oracle/ggate/dirdat/lt,checkpointtableggate.checkpoint(增加同不队列)

editparamsrep1

添加如下内容:

replicatrep1

ASSUMETARGETDEFS

useridggate,passwordggate

discardfile/u01/oracle/ggate/dirdat/rep1_discard.txt,append,megabytes10

DDLincludeall

mapsender.,targetreceiver.;

保存退出



配置完成



分别在源端、目标端增加

mkdir-p/u01/oracle/ggate/dirdat/lt



三、在goldengate命令行开启

源端:startmanager

startext1

目标:startmanager

startrep1



四、测试:



源端:createtablesender.test(empidnumber(4),namesvarchar2(10),oldagenumber(3));

目标:selectfromreceiver.test;



五、维护相关

1、ogg常用命令

启动manager:startmanager

启动extract:startextractextn

启动replicat:startreplicatrepn

停止manager:stopmanager

停止extract:stopextractextn

停止replicat:stopreplicatrepn

删除extract:deleteextractextn

删除replicat:deleteextractrepn

查看ogg状态:infoall

修改manager参数:editparamsmgr

修改extract参数:editparamsextn

修改replicat参数:editparamsrepn

修改全局参数:editparams./GLOBAL

2、日志路径

$OGG_HOME/ggserr.log

3、ogg开机自启

操作系统设置:

(1)用oracle用户建立/oracle/ogg/autostart/info.txt,文件内容如下:

shdat

startmgr

(2)chmodxinfo.txt

(3)用oracle用户建立/oracle/ogg/autostart/startmgr.sh,文件内如下:

/oracle/ogg/ggsciparamfile/oracle/ogg/autostart/info.txt>>/oracle/ogg/autostart/log.txt

(4)chmodxstartmgr.sh

(5)用root用户编辑/etc/rc.local,添加如下信息:

su-oracle-c"/oracle/ogg/autostart/startmgr.sh"

ogg设置:

在ogg中主进程是manager进程,使用startmgr启动。可以在mgr进程中添加一些参数用来在启动mgr进程的同时启动extract和replicat进程。

(1)以下是extract端的mgr参数配置

GGSCI(gg01)130>editparamsmgr

PORT7809

DYNAMICPORTLIST7800-7909

--启动mgr进程启动启动extract进程

AUTOSTARTEXTRACT

--extract异常终止时会自动启动,每5分钟尝试重新启动所有的extract进程,一共尝试3次,5分钟清零

AUTORESTARTEXTRACT,RETRIES3,WAITMINUTES5,RESETMINUTES10



(2)配置目标端replicat进程自启动,在mgr参数中添加如下

GGSCI(gg02)140>editparamsmgr

PORT7809

--动态端口,当指定端口不可用时,会从以下列表中选择一个可用端口

DYNAMICPORTLIST7800-7909

--自动启动replicat进程

AUTOSTARTREPLICAT

--当replicat进程异常终止时会自动启动,每5分钟尝试重新启动所有的replicat进程,一共尝试5次

AUTORESTARTREPLICAT,WAITMINUTES2,RETRIES5

--mgr每隔1小时检查extract延时情况,超5分钟作为信息记录log中,超过7分钟作为警告记录log中

LAGREPORTHOURS1

LAGINFOMINUTES5

LAGCRITICALMINUTES7

--删除10天前的trail文件

PURGEOLDEXTRACTS/oracle/ogg/dirdat/,USECHECKPOINTS,MINKEEPDAYS10



献花(0)
+1
(本文系忧郁_小刚首藏)