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
|
|