OBEY
スクリプトは、cURLおよび管理クライアントで実行するOBEYコマンドとして使用でき、ビジネス・レポート・シナリオをテストできます。次のトピックで使用可能なスクリプトを使用して、次のことができます:
-
データ・レプリケーション環境を追加し、作成されたプロセスをスクリプトが正常に実行された後に表示します。
-
コミットされたDMLおよびDDL操作について、日次、毎時および合計の件数を報告する統計レポートを確認します。
-
データ・レプリケーション環境を削除し、テスト後に環境が削除されたことを確認します。
OBEYファイルを使用したデータ・レプリケーションのカスケード環境の追加
次のOBEYスクリプトをコピーして使用し、インストール済のデータベースにカスケード型のOracle GoldenGateデータ・レプリケーション環境を設定します。
ノート:
サンプル・スクリプトでは、データベース・サーバーの名前と値、パラメータ値、Extract、Replicatおよびその他のプロセスを使用します。このスクリプトを機能させるには、環境に応じてこれらの値を変更する必要があります。--
-- 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
OBEYファイルを作成したら、管理クライアントで実行するシェル・スクリプトを作成します:
#!/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
ソースから中間およびターゲット・サーバーへのカスケード環境レプリケーションの確認
次のOBEYスクリプトをコピーして使用し、レプリケートされたデータがソース(dbnorth)から中間(dbsouth)に転送され、中間からターゲット(dbwest)ホストに送信されるかどうかを確認します。
ノート:
サンプル・スクリプトでは、データベース・サーバーの名前と値、パラメータ値、Extract、Replicatおよびその他のプロセスを使用します。このスクリプトを機能させるには、環境に応じてこれらの値を変更する必要があります。#!/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
OBEYを使用したカスケード環境設定の削除
ノート:
サンプル・スクリプトでは、データベース・サーバーの名前と値、パラメータ値、Extract、Replicatおよびその他のプロセスを使用します。このスクリプトを機能させるには、環境に応じてこれらの値を変更する必要があります。
--
-- 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
OBEYファイルを作成したら、管理クライアントで実行するシェル・スクリプトを作成します:
#!/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