0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GoldenGate Veridata23cを試す(2) JavaAgent編

Posted at

はじめに

Oracle GoldenGate Veridata 23c を試すシリーズの第2段階として Java Agent 環境を整えます。Java Agent は突合対象となる Source および Target となる表を保持するデータベースからそれぞれ表データをハッシュ値で取得し、突合ジョブを実行する Veridata Server へ渡す重要な役割を担います。

環境について

今回の環境は(1)でインストール・環境構築したOracle GoldenGate Veridata 23c (23.1.0.0.0)を利用します。

  • Oracle Software Delivery Cloud から V1046346-01.zip をダウンロードし展開
  • Oracle Linux 8.7 (5.15.0-3.60.5.1.el8uek.x86_64)
  • ここでは以下の赤枠をVeridata Server として Agent も含める構成とする

veridata23c_00.png
GoldenGate Veridata 23c マニュアルより

Java Agent は Veridata Server が稼働するノードにインストール済みなので、これを使用しますが、Veridata Serverと同じノードでは無く、それぞれ Source / Target となる Database Server にインストールするケースもあります。この場合は、各Database Serverで runInstaller を起動し、”Oracle GoldenGate Veridata Agent” を選択します。

実装の手順および実行

1. JDK17の準備
Veridata Java Agent にも JDK17が必要となるが、(1)インストール編で準備済みなのでそのまま使用する

export JAVA_HOME=/home/oracle/jdk-17.0.12
export PATH="$JAVA_HOME/bin:$PATH"

[oracle@vdtserver ~]$ java -version
java version "17.0.12" 2024-07-16 LTS
Java(TM) SE Runtime Environment (build 17.0.12+8-LTS-286)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.12+8-LTS-286, mixed mode, sharing)

2. Java Agent の導入と起動
今回は Source および Target 用にそれぞれ Java Agent を準備する。

ディレクトリ: /u01/app/oracle/product/GoldenGate/java_agent/agent01 ディレクトリ: /u01/app/oracle/product/GoldenGate/java_agent/agent02

それぞれ、agent_config.sh を実行してディレクトリに Agent 環境を準備する

[oracle@vdtserver ~] cd /u01/app/oracle/product/GoldenGate/Veridata/agent
[oracle@vdtserver ~] ./agent_config.sh /u01/app/oracle/product/GoldenGate/java_agent/agent01
[oracle@vdtserver ~] ./agent_config.sh /u01/app/oracle/product/GoldenGate/java_agent/agent02

Agent プロパティのサンプルファイルをコピーしてagent.properties を準備する

[oracle@vdtserver ~] cp agent.properties.sample agent.properties

Java_Agent00.png

Agent.properties のイメージ

agent_property00.png

  • agent.properties 内で最低限必要と思われる以下を編集する

agent_property0a.png

Source : Agent1

server.port=7862
server.jdbcDriver=ojdbc11-23.2.0.0.jar
database.url=jdbc:oracle:thin:@sourcedbsrv:1521/pdb1903a
server.driversLocation=/u01/app/oracle/product/GoldenGate/Veridata/agent/drivers/

Target : Agent2

server.port=7863
server.jdbcDriver=ojdbc11-23.2.0.0.jar
database.url=jdbc:oracle:thin:@targetdbsrv:1521/pdb1903a
server.driversLocation=/u01/app/oracle/product/GoldenGate/Veridata/agent/drivers/

各Agentをそれぞれ起動する

[oracle@vdtserver ~] ./agent.sh start agent.properties

Agent実行時は特に何もメッセージ等が表示されないが、logは以下から参照できる

/u01/app/oracle/product/GoldenGate/java_agent/agent01/logs
…
[2025-04-09T14:55:31.690+09:00] [veridata] [NOTIFICATION] [OGGV-60010] [oracle.veridata.agent] [tid: 17] [ecid: 0000POP7XDN8Dwn5KnS4ye1bxWj7000002,0] Starting session 5
[2025-04-09T14:55:31.691+09:00] [veridata] [NOTIFICATION] [OGGV-60011] [oracle.veridata.agent] [tid: 17] [ecid: 0000POP7XDN8Dwn5KnS4ye1bxWj7000002,0] Session 5 stopped
[2025-04-09T14:55:31.693+09:00] [veridata] [NOTIFICATION] [OGGV-60010] [oracle.veridata.agent] [tid: 17] [ecid: 0000POP7XDN8Dwn5KnS4ye1bxWj7000002,0] Starting session 6
[2025-04-09T14:55:31.695+09:00] [veridata] [NOTIFICATION] [OGGV-60011] [oracle.veridata.agent] [tid: 17] [ecid: 0000POP7XDN8Dwn5KnS4ye1bxWj7000002,0] Session 6 stopped
[2025-04-09T14:55:31.697+09:00] [veridata] [NOTIFICATION] [OGGV-60010] [oracle.veridata.agent] [tid: 24] [ecid: 0000POP7ZBl8Dwn5KnS4ye1bxWj7000004,0] Starting session 7
[2025-04-09T14:55:31.703+09:00] [veridata] [NOTIFICATION] [OGGV-60037] [oracle.veridata.agent] [tid: 24] [ecid: 0000POP7ZBl8Dwn5KnS4ye1bxWj7000004,0] JDBC driver version: 23.2.0.0.0
[2025-04-09T14:55:31.703+09:00] [veridata] [NOTIFICATION] [OGGV-60023] [oracle.veridata.agent] [tid: 24] [ecid: 0000POP7ZBl8Dwn5KnS4ye1bxWj7000004,0] user 'scott' connected to 'Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production[[
Version 19.26.0.0.0'
…

【注意】
特にマニュアルに記載は無いがパラメータは主に start <-> stop を使用した。

[oracle@ptvm44 agent01]$ ./agent.sh
agent_int.sh start|run|stop|reloadLog|version|debug

最後に

今回は Source / Target 共に Oracle Database を想定しており、Java Agent による接続・突合のための環境設定となっていますが、GoldenGate 同様にVeridataもまた様々なデータベースと連携可能であり、そのために Java (JDBC接続)だけでなく、C Agent (主にNonStop系) も使用可能になっています。
次回は、実際の突合ジョブの生成と実行を軸に進めます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?