OBEY

Scripts are available in cURL and as OBEY commands to be run in Admin Client, to test the business reporting scenario. You can use the scripts available in the following topics to:
  • Add a data replication environment and view the processes that are created after the scripts runs successfully.

  • Check the statistical reports for Daily, Hourly, and Total committed DML and DDL operations.

  • Delete the data replication environment and verify that the environment was deleted after testing.

Add a Cascading Environment for Data Replication Using OBEY Files

Copy and use the following OBEY script to set up a cascaded Oracle GoldenGate data replication environment on an pre-installed database.

Note:

The given sample script uses names and values of database server, parameter values, Extract, Replicat, and other processes. You must change these values according to your environment for this script to work.
--
-- Add Credentials
--

CONNECT https://north:9001 DEPLOYMENT depl_north AS ggma PASSWORD GGma_23ai !
ALTER CREDENTIALSTORE ADD USER ggadmin@dbnorth ALIAS ggnorth DOMAIN OracleGoldenGate PASSWORD ggadmin

CONNECT https://south:9101 DEPLOYMENT depl_south AS ggma PASSWORD GGma_23ai !
ALTER CREDENTIALSTORE ADD USER ggadmin@dbsouth ALIAS ggsouth DOMAIN OracleGoldenGate PASSWORD ggadmin

CONNECT https://west:9201 DEPLOYMENT depl_west AS ggma PASSWORD GGma_23ai !
ALTER CREDENTIALSTORE ADD USER ggadmin@dbwest ALIAS ggwest  DOMAIN OracleGoldenGate PASSWORD ggadmin
INFO CREDENTIALSTORE

--
-- Add Schematandata, Checkpointtable, and Heartbeattable
--

CONNECT https://north:9001 DEPLOYMENT depl_north AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggnorth DOMAIN OracleGoldenGate
ADD SCHEMATRANDATA hr
ADD HEARTBEATTABLE

CONNECT https://south:9101 DEPLOYMENT depl_south AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggsouth DOMAIN OracleGoldenGate
ADD SCHEMATRANDATA hr
ADD CHECKPOINTTABLE ggadmin.ggs_checkpointtable
ADD HEARTBEATTABLE

CONNECT https://west:9201 DEPLOYMENT depl_west AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggwest DOMAIN OracleGoldenGate
ADD CHECKPOINTTABLE ggadmin.ggs_checkpointtable
ADD HEARTBEATTABLE

--
-- Add Extract and DistPath at source instance
--

CONNECT https://north:9001 DEPLOYMENT depl_north AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggnorth DOMAIN OracleGoldenGate

ADD EXTRACT extn INTEGRATED TRANLOG BEGIN NOW 
REGISTER EXTRACT extn database
ADD EXTTRAIL north/ea, EXTRACT extn
START EXTRACT extn

ADD DISTPATH dpns SOURCE trail://north:9002/services/v2/sources?trail=north/ea TARGET wss://south:9103/services/v2/targets?trail=north/da !
START DISTPATH dpns

INFO ALL
INFO DISTPATH ALL

--
-- Add Replicat, Extract, and DistPath at intermediate instance
--

CONNECT https://south:9101 DEPLOYMENT depl_south AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggsouth DOMAIN OracleGoldenGate

ADD REPLICAT repn, PARALLEL, EXTTRAIL north/da, CHECKPOINTTABLE ggadmin.ggs_checkpointtable 
START REPLICAT repn

ADD EXTRACT exts INTEGRATED TRANLOG BEGIN NOW
REGISTER EXTRACT exts database
ADD EXTTRAIL south/ea, EXTRACT exts
START EXTRACT exts

ADD DISTPATH dpsw SOURCE trail://north:9102/services/v2/sources?trail=south/ea TARGET wss://west:9203/services/v2/targets?trail=south/da !
START DISTPATH dpsw

INFO ALL
INFO DISTPATH ALL

--
-- Add Replicat at target instance
--

CONNECT https://west:9201 DEPLOYMENT depl_west AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggwest DOMAIN OracleGoldenGate

ADD REPLICAT reps, PARALLEL, EXTTRAIL south/da, CHECKPOINTTABLE ggadmin.ggs_checkpointtable
START REPLICAT reps

INFO ALL
INFO DISTPATH ALL

DISCONNECT
After creating the OBEY file, create a shell script to run in Admin Client:
#!/bin/bash

# Clean up environment
/home/oracle/scripts/misc/cleanup.sh > /dev/null

# Copy parameter file (usually edited with EDIT PARAMs)
cp EXTN.prm /u01/app/oracle/deployments/depl_north/conf/ogg
cp REPN.prm /u01/app/oracle/deployments/depl_south/conf/ogg
cp EXTS.prm /u01/app/oracle/deployments/depl_south/conf/ogg
cp REPS.prm /u01/app/oracle/deployments/depl_west/conf/ogg

# Run the GoldenGate Obey script
echo "obey add_replication_cascading.oby" | adminclient

Check a Cascading Environment Replication from Source to Intermediate to Target Server

Copy and use the following OBEY script to check if the replicated data is transmitted from source (dbnorth) to intermediate (dbsouth) and intermediate to the target (dbwest) host.

Note:

The given sample script uses names and values of database server, parameter values, Extract, Replicat, and other processes. You must change these values according to your environment for this script to work.
#!/usr/bin/bash

sqlplus -s  /nolog  << EOF

set lines 100
col firstname     format a30
col last_name     format a30
col employee_id   format 9999
col salary        format 999999.99
col department_id format 999

-- Connect to DBNorth
connect  ggadmin/ggadmin@dbnorth

PROMPT
PROMPT Source Database:

select employee_id, first_name, last_name, salary, department_id
  from hr.employees 
  where department_id = 60;

-- Connect to DBSouth
connect  ggadmin/ggadmin@dbsouth

PROMPT Intermediate Database:

select employee_id, first_name, last_name, salary, department_id
  from hr.employees
  where department_id = 60;

-- Connect to DBWest
connect  ggadmin/ggadmin@dbwest

PROMPT Target Database:

select employee_id, first_name, last_name, salary, department_id
  from hr.employees
  where department_id = 60;

EOF
exit

Remove the Cascading Environment Set Up Using OBEY

Note:

The given sample script uses names and values of database server, parameter values, Extract, Replicat, and other processes. You must change these values according to your environment for this script to work.

--
-- Remove objects from WEST
--

CONNECT https://west:9201 DEPLOYMENT depl_west   AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggwest DOMAIN OracleGoldenGate

KILL REPLICAT reps
DELETE REPLICAT reps

DELETE CHECKPOINTTABLE ggadmin.ggs_checkpointtable !
DELETE HEARTBEATTABLE !

ALTER CREDENTIALSTORE DELETE USER ggadmin@dbwest ALIAS ggwest DOMAIN OracleGoldenGate

PURGE EXTTRAIL south/da

--
-- Remove objects from SOUTH
--

CONNECT https://south:9101 DEPLOYMENT depl_south AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggsouth DOMAIN OracleGoldenGate

KILL REPLICAT repn
DELETE REPLICAT repn

STOP DISTPATH dpsw
DELETE DISTPATH dpsw

KILL EXTRACT exts
DELETE  EXTRACT exts

DELETE SCHEMATRANDATA hr
DELETE CHECKPOINTTABLE ggadmin.ggs_checkpointtable !
DELETE HEARTBEATTABLE !

ALTER CREDENTIALSTORE DELETE USER ggadmin@dbsouth ALIAS ggsouth  DOMAIN OracleGoldenGate

PURGE EXTTRAIL north/da
PURGE EXTTRAIL south/ea

--
-- Remove objects from NORTH
--

CONNECT https://north:9001 DEPLOYMENT depl_north AS ggma PASSWORD GGma_23ai !
DBLOGIN USERIDALIAS ggnorth DOMAIN OracleGoldenGate

STOP DISTPATH dpns
DELETE DISTPATH dpns

KILL   EXTRACT extn
DELETE EXTRACT extn

INFO ALL
INFO DISTPATH ALL

DELETE SCHEMATRANDATA hr
DELETE HEARTBEATTABLE !

ALTER CREDENTIALSTORE DELETE USER ggadmin@dbnorth ALIAS ggnorth DOMAIN OracleGoldenGate 

PURGE EXTTRAIL north/ea

DISCONNECT

After creating the OBEY file, create a shell script to run in Admin Client:
#!/bin/bash

# Run the GoldenGate Obey script
echo "obey delete_replication_cascading.oby" | adminclient

# Clean up environment
/home/oracle/scripts/misc/cleanup.sh > /dev/null