Download Golden gate software from https://edelivery.oracle.com
Source Database : ORADB1 : 12c
Target Database : ORADB2 : 19c
Ogg : Version 19.1.0.0.4 OGGCORE_19.1.0.0.0_PLATFORMS_191017.1054_FBO
mkdir /u01/app/oracle/product/ogg/ --> for GG_HOME
mkdir /home/oracle/gg_install/ --> (optional) To store zip file
update .bash_profile with below GG_HOME
export GG_HOME=/u01/app/oracle/product/ogg/
cd /home/oracle/gg_install/
unzip 191004_fbo_ggs_Linux_x64_shiphome.zip
Response file :
/home/oracle/gg_install/fbo_ggs_Linux_x64_shiphome/Disk1/response
Backup the response file and then edit it.
vi oggcore.rsp and update below parameters.
INSTALL_OPTION=ORA19c
SOFTWARE_LOCATION=/u01/app/oracle/product/ogg/
DATABASE_LOCATION=/u01/app/oracle/product/<<DATABASE_VERSION>>/dbhome_1
INVENTORY_LOCATION=/u01/app/oraInventory
UNIX_GROUP_NAME=oinstall
Installation :
cd /home/oracle/gg_install/fbo_ggs_Linux_x64_shiphome/Disk1/
./runInstaller -silent -showProgress -waitforcompletion -responseFile /home/oracle/gg_install/fbo_ggs_Linux_x64_shiphome/Disk1/response/oggcore.rsp
Log Details : check /u01/app/oraInventory/logs/silentInstallYYYY-DD-MM_HH-MM-SSPM.log
cd $GGHOME
./ggsci
ON Source and Target database create a gg user.
sqlplus / as sysdba
create user ggsowner identified by ggsowner default tablespace users temporary tablespace temp;
Grant dba to ggsowner;
If Unidirectional replication you can enable supplemental logging on source only. For Bidirectional enable on both Source and Target.
alter database add supplemental log data;
select supplemental_log_data_min from v$databse;
alter database force logging;
Here I'm using test schema for replication.
ggsci> DBLOGIN USERID ggsowner, PASSWORD ggsowner
GGSCI (ogg1.localdomain as ggsowner@oradb1) 65> ADD TRANDATA Test.*
Do initial load using datapump ( Impdp/expdp )
SOURCE and TARGET MGR PARAM :
GGSCI (ogg1.localdomain as ggsowner@oradb1) 66> edit params mgr
PORT 7809
DYNAMICPORTLIST 7821-7830
PURGEOLDEXTRACTS /u01/app/oracle/product/ogg/dirdat/*, USECHECKPOINTS, MINKEEPDAYS 3
GGSCI (ogg1.localdomain as ggsowner@oradb1) 68> start mgr
EXTRACT PARAM FILE on source:
GGSCI (ogg1.localdomain as ggsowner@oradb1) 70> edit params EXTHR
EXTRACT EXTHR
USERID ggsowner, PASSWORD ggsowner
EXTTRAIL /u01/app/oracle/product/ogg/dirdat/et
DDL INCLUDE ALL
TABLE TEST.*;
GGSCI (ogg1.localdomain as ggsowner@oradb1) 71> register extract EXTHR, database
GGSCI (ogg1.localdomain as ggsowner@oradb1) 72> add extract EXTHR, integrated tranlog, BEGIN NOW
GGSCI (ogg1.localdomain as ggsowner@oradb1) 73> add exttrail /u01/app/oracle/product/ogg/dirdat/et,extract EXTHR
Datapump PARAM FILE on source:
GGSCI (ogg1.localdomain as ggsowner@oradb1) 75> edit params pext
EXTRACT pext
RMTHOST 192.168.29.34, MGRPORT 7809
RMTTRAIL /u01/app/oracle/product/ogg/dirdat/rt
PASSTHRU
TABLE TEST.*;
GGSCI (ogg1.localdomain as ggsowner@oradb1) 78> register extract PEXT, database
GGSCI (ogg1.localdomain as ggsowner@oradb1) 80> add extract PEXT, exttrailsource /u01/app/oracle/product/ogg/dirdat/et
GGSCI (ogg1.localdomain as ggsowner@oradb1) 81> add rmttrail /u01/app/oracle/product/ogg/dirdat/rt,extract PEXT
GGSCI (ogg1.localdomain as ggsowner@oradb1) 82> start *
GGSCI (ogg1.localdomain as ggsowner@oradb1) 83> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING EXTHR 00:00:04 00:00:01
EXTRACT RUNNING PEXT 00:00:00 00:00:04
on TARGET :
REPLICAT PARAMs
sqlplus> alter system set enable_goldengate_replication=TRUE;
ggsci> edit params REP
REPLICAT REP
USERID ggsowner, PASSWORD ggsowner
ASSUMETARGETDEFS
ddlerror default ignore retryop
MAP TEST.*, TARGET TEST.*;
GGSCI (ogg2.localdomain) 44> dblogin userid ggsowner, password ggsowner
GGSCI (ogg2.localdomain as ggsowner@oradb2) 7> add checkpointtable ggsowner.checkpoint_table
GGSCI (ogg2.localdomain as ggsowner@oradb2) 8> edit params ./GLOBALS
GGSOWNER.CHECKPOINT_TABLE
GGSCI (ogg2.localdomain as ggsowner@oradb2) 2> add replicat rep, integrated exttrail /u01/app/oracle/product/ogg/dirdat/rt
GGSCI (ogg2.localdomain as ggsowner@oradb2) 16> start *
GGSCI (ogg2.localdomain as ggsowner@oradb2) 16> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
REPLICAT RUNNING REP 00:00:00 00:00:01
sqlplus / as sysdba
conn test/test
create table ggtest1 as select * from sys.dba_objects where rownum<20;
Now check on target side :
seelct object_name,object_type from dba_objects where owner='TEST';
You can monitor ggserr.log located under $GG_HOME for updates and errors.
To configure BIDIRECTIONAL REPLICATION :
using the same methods as above
Add extract and pump on target side.
Add a replicat on source side.
Refer below:
SOURCE :
TARGET :
No comments:
Post a Comment