首页 > 代码库 > Oracle GoldenGate Install For Linux

Oracle GoldenGate Install For Linux

DownLoad:

http://edelivery.oracle.com 

 
 
Prepare(Source And Target DB):
 
Add Environment Varible
vi /home/oracle/.bash_profile
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/opt/ogg
 
Configure Database
alter database archivelog;
alter database force logging;
alter database add supplemental log data;
ALTER SYSTEM SET recyclebin = OFF scope=spfile; for Oracle 11g ,need to be restart
 
 
Create OGG User:
sqlplus / as sysdba
create user ogg identified by ogg;
grant dba to ogg;
 
 
GGSCI (testdb) 1> edit params ./GLOBAL
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
 
For ddl同步,需要执行以下脚本:
marker_setup.sql –该脚本安装marker系统,这部分为启用DLL支持所必备,执行该脚本时会提示输入GoldenGate管理帐户schema名.
ddl_setup –执行该脚本要确认关闭掉所有ORACLE会话,未被关闭的会话会以列表形式显示,执行过程中会要求希望对象属主,并选择安装模式。如果是初次安装就选择“INITIALSETUP”,该模式假设当前没有任何GoldenGate DDL对象存在,如果存在则会删除并重建。如果是重新安装,则应该选择“NORMAL”.
role_setup –该操作会重建DDL同步所需的权限,授予GoldenGate中的DDL对象以DML权限.
ddl_enable –启用DDL触发器,以捕获DDL操作.
要提高DDL触发器的性能,可以通过ddl_pin脚本,该脚本会将触发器使用的包加载到内存,以此提高效率。该脚本执行时需要引用dbms_shared_pool系统包,因此在使用ddl_pin脚本前需要确保dbms_shared_pool可用。
@?/rdbms/admin/dbmspool.sql
ddl_pin –执行ddl_pin脚本需要指定GoldenGate管理员schema名称.
然后,用于同步DDL操作的对象就创建完成了。
 
 
Source DB:
 
GGSCI (ogg1) 1>  create subdirs
 

GGSCI (ogg1) 75> edit param mgr



PORT 7809

userid ogg,password ogg

PURGEOLDEXTRACTS ./dirdat/k1*,USECHECKPOINTS,MINKEEPFILES 10

AUTORESTART ER *, RETRIES 3, WAITMINUTES 5

PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30

PURGEMARKERHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30

 
 
 
##########datapump
GGSCI (ogg1) 4>> add extract dpump,exttrailsource /opt/ogg/dirdat/k1
EXTRACT added.
 
GGGSCI (ogg1) 4> add rmttrail  /opt/ogg/dirdat/k1, extract dpump
RMTTRAIL added.
 
GGSCI (ogg1) 76> edit param dpump

extract dpump
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
userid ogg, password ogg
rmthost 192.168.56.13, mgrport 7809
rmttrail /opt/ogg/dirdat/k1
DYNAMICRESOLUTION
table zbdba.*;

 
 
 
###########extract
GGSCI (ogg1) 1> dblogin userid ogg,password ogg
Successfully logged into database.
GGSCI (ogg1) 2> add extract ext1,tranlog, begin now
EXTRACT added.
GGSCI (ogg1) 4>add exttrail /opt/ogg/dirdat/k1, extract ext1
EXTTRAIL added.
 
 
GGSCI (ogg1) 78> edit param ext1

EXTRACT EXT1
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
USERID ogg,PASSWORD ogg
exttrail /opt/ogg/dirdat/k1
DYNAMICRESOLUTION
DDL INCLUDE MAPPED
DDLOPTIONS ADDTRANDATA,REPORT
FETCHOPTIONS, USESNAPSHOT, NOUSELATESTVERSION, MISSINGROW REPORT
STATOPTIONS REPORTFETCH
WARNLONGTRANS 1H, CHECKINTERVAL 5M
TABLE zbdba.*;

 
start manager
start dpump
start ext1
 
 
GGSCI (ogg1) 16> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     DPUMP       00:00:00      00:00:07   
EXTRACT     RUNNING     EXT1        00:00:00      00:00:03  

 
 
 
 
Target DB:
 
GGSCI (ogg2) 1>  create subdirs
edit param mgr 
PORT 7809
userid ogg,password ogg
PURGEOLDEXTRACTS ./dirdat/k1*,USECHECKPOINTS,MINKEEPFILES 10
AUTORESTART ER *, RETRIES 3, WAITMINUTES 5
PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30
PURGEMARKERHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30
 
 
Create Replicat 
GGSCI (ogg2) 1>  view param ./GLOBALS
GGSCHEMA ogg
CHECKPOINTTABLE ogg.checkpoint
GGSCI (ogg2) 1> dblogin userid ogg,password ogg
GGSCI (ogg2) 2> add checkpointtable  ogg.checkpoint
 
Successfully created checkpoint table OGG.CHECKPOINT.
 
GGSCI (ogg2) 2>  add replicat rep1,exttrail /opt/ogg/dirdat/k1, checkpointtable ogg.checkpoint
REPLICAT added.
 
 
GGSCI (ogg2) 19> edit param rep1

REPLICAT rep1
ASSUMETARGETDEFS
USERID ogg, PASSWORD ogg
discardfile ./dirdat/rep1_discard.txt,append,megabytes 5
DDL INCLUDE MAPPED
DDLOPTIONS REPORT
BATCHSQL
DBOPTIONS DEFERREFCONST
DBOPTIONS LOBWRITESIZE 102400
HANDLECOLLISIONS
DDLERROR DEFAULT DISCARD RETRYOP MAXRETRIES 5 RETRYDELAY 20
–grouptransops 1
–maxtransops 1
APPLYNOOPUPDATES –解决不能更新操作
MAP zbdba.*, TARGET zbdba.*;

 
 
start manager

GGSCI (ogg2) 23> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    STOPPED     REP1        00:00:00      00:00:03  

 
 
Test Data(Source and Target DB):
create tablepsace zbdab datafile ‘/opt/oracle/oradata/zbdba.dbf‘ size 100m;
create zbdba identified by oracle default tablespace zbdba;
grant dba to zbbda;
 
 
On Source DB:
 
User data pump:
expdp zbdba/oracle DIRECTORY=dumpdir
           DUMPFILE=zbdba.dmp LOGFILE=zbdba.log
           SCHEMAS=zbdba JOB_NAME=exp_zbdba_schema
 
 
scp data to target DB
 
 
On Target DB:
impdp zbdba/oracle DIRECTORY=dumpdir
           DUMPFILE=zbdba.dmp SCHEMAS=zbdba
           JOB_NAME=imp_zbdba_schema 
 

GGSCI (ogg2) 24> start rep1

Sending START request to MANAGER …
REPLICAT REP1 starting

 
GGSCI (ogg2) 26> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    RUNNING     REP1        00:00:00      00:00:07  

 
 
On Source DB:

create table test as select * from dba_objects;

 
 
 
 
 
 
Monitor OGG(Source And Target DB):
tail -100f ggserr.log 
 
 
 
 

Oracle GoldenGate Install For Linux