はじめに

みなさん、こんにちは。
Oracle Cloud Infrastructure 検証チームです。

今回は、先日リリースされたFree 23c 版の
Oracle GoldenGate Free 23c を使って、Oracle Cloud Infrastructure (以下OCI) のOracle Database 23c Free 間でデータ連携の検証
を実施しましたので、2回に分けてご紹介したいと思います。

ホットな話題ですね!
今回の執筆者はOCI関連資格4冠を達成しました!に登場した事業部員です。
当社でトップクラスのOracleの技術力を持つプラチナホルダーです!

前提知識

Oracle GoldenGate Free とは

以下、Oracle GoldenGate Free 23c 公式ドキュメントよりの抜粋です。

Oracle® Using Oracle GoldenGate Free 23c
F61894-10
September 2023

https://docs.oracle.com/en/middleware/goldengate/free/23/uggfe/overview.html#GUID-DAB00642-B1F7-4D94-957B-C7F3E14CAE43
2 概要

=======================================================

Oracle GoldenGate Freeとは

GoldenGate Freeは、Oracleが提供しているクラス最高のレプリケーション・ソフトウェアの初期バージョンです。アプリケーション・データベース管理者(DBA)は、
GoldenGate Freeにより、簡素化されたユーザー・インタフェースで単純なデータ・レプリケーション・プロセスを作成しながら、基本概念を知ることができます。

…(中略)…

GoldenGate Freeの用途
次の目的でGoldenGate Freeを使用できます:

・開発環境またはテスト環境として
・本番環境*として(データベースが20GB以下の場合)
・学習環境におけるトレーニング・ツールとして
* Oracle GoldenGate Freeは、Oracleサポートの対象ではありません。GoldenGate Freeに関する質問は、GoldenGate Freeコミュニティ・フォーラムで投稿できます。

…(中略)…

概念
GoldenGate Freeの使用を始める前に、次の概念と、一般的に使用されるその他の用語を理解しておいてください。

  • レシピ: レシピは、データ・レプリケーションの一般的なユースケース用のパイプライン・テンプレートです。すばやく簡単に開始するには、レシピに従います。
  • 接続: 接続には、データ・ストアやその他のGoldenGateインスタンスへのネットワーク接続詳細が含まれます。
  • パイプライン: パイプラインは、レシピのインスタンスです。これにより、ソース接続、適用するレプリケーション・アクションのタイプ、およびターゲット接続を選択できるようになります。パイプラインを開始すると、レプリケーション・プロセスをリアルタイムで監視できます。
  • Oracle GoldenGate Freeコンソール: GoldenGate Freeのメイン・ユーザー・インタフェース。ここで、データベース接続やパイプラインを作成し管理します。
  • Extract: データを抽出(取得)するためにソース・データベースに対して実行されるプロセス。
  • Replicat: ターゲット・データベースにデータを提供するプロセス。

=======================================================

GoldenGate Free はシンプルな構成要素またはガイド付きレシピを使用することで、データ・レプリケーション・プロセスを設計、実行、調整、監視する際の基本を学ぶことができるんですね~。
一部使用制限はあるものの無償で気軽に、GoldenGate を試せるのもこのGoldenGate Free 製品のメリットです。

検証実施前の準備

検証実施前の前提条件として、下記準備作業が事前に完了していることとします。

  • OCI 上のコンピュート・インスタンスにGoldenGate Free 23c 製品がインストール済みでありデプロイメントの構成が完了済みであること
  • OCI 上の2つのコンピュート・インスタンスにOracle Database 23c Free – Developer Release 製品がインストール済みでありデータベースに接続可能であること(この2つのデータベースをソース・データベース用とターゲット・データベース用に使用します。)
  • GoldenGate Free と2つのデータベース間が相互にネットワーク接続可能であること
  • Web ブラウザでGoldenGate Free コンソールに接続可能であること

今回の検証環境の構築と検証実施の手順の作成にあたっては下記Oracle GoldenGate Free 公式ドキュメントを参考にしております。

Oracle® Using Oracle GoldenGate Free 23c
F61894-10
September 2023

https://docs.oracle.com/en/middleware/goldengate/free/23/uggfe/start.html#GUID-D4BFD976-AA02-4D0B-B22D-B00254F3A6C4
1 はじめに

https://docs.oracle.com/en/middleware/goldengate/free/23/uggfe/replicate.html#GUID-B5BCFBAE-0286-4D23-A0EB-8E35EB8F5CC2
3 レプリケート

https://docs.oracle.com/en/middleware/goldengate/free/23/uggfe/manage.html#GUID-45CC7911-1568-4930-B86D-61CEF14B59E5
4 管理

https://docs.oracle.com/en/middleware/goldengate/free/23/uggfe/monitor.html#GUID-D84DFD46-3CD7-41FB-B140-4741BEB6A3F1
5 監視

検証内容のサマリー

今回の検証内容を実施した順に以下に記載しています。全2回で掲載予定です。

  1. 接続の作成
  2. パイプラインの作成 (次回)
  3. パイプラインの停止と開始 (次回)
  4. データ同期確認 (次回)

それでは説明と準備が整いましたので検証していきましょう。

接続の作成

GoldenGate Free コンソールに接続

GoldenGate Free コンソールに接続します。[ユーザー名(Username)]と[パスワード(Password)]を入力し、[ログイン(Log in)]をクリックします。

GoldenGate Free ホームページが表示されます。

ソース・データベース用の接続の作成

GoldenGate Free ホームページで[接続の作成(Create connection)]をクリックします。

[一般の情報(General Information)]ページで[データベース接続名(Database Connection Name)]に任意の接続名を入力します。[次(Next)]をクリックします。

[接続の詳細(Connection details)]ページで以下を実施します。

  • [接続ロール(Connection role)]で[ソース(Source)]を選択します。
  • [接続タイプ(Connection type)]のドロップダウンから[基本(Basic)]を選択します。
  • [ホスト名(Hostname)]にデータベースのホスト名を入力します。
  • [ポート(Port)]にデータベースのポート番号を入力します。
  • [データベースタイプ(Database type)]で[21c バージョンのPDBまたはそれ以上のバージョン(Pluggable database (PDB) in Oracle Database 21c or above)]を選択します。
  • [プラガブルデータベースサービス名(Pluggable database service name(PDB)]を入力します。
  • [使用可能なSYSDBA権限(SYSDBA privileges available)]をチェックします。
  • [管理者資格証明ダイアログ(Administrator Credentials)]で[管理者権限を持つユーザ(User with admin privilege)]に[sys]と入力し、[管理者ユーザのパスワード(Password for admin user)]に[sysのパスワード]を入力し、[OK]をクリックします。

[接続の詳細(Connection details)]ページに戻り[次(Next)]をクリックします。

[GoldenGate 管理者ユーザー(GoldenGate admin user)]ページで以下を実施します。

  • [GoldenGate 管理者データベース・ユーザーの追加(Add GoldenGate admin database user)]をチェックします。
  • [ユーザー名(Username)](通常はggadmin)と[パスワード(Password)]を入力します。
  • [次(Next)]をクリックします。

[構成(Configuration)]ページで以下を実施します。

  • [使用可能なSYSDBA権限(SYSDBA privileges available)]をチェックします。
  • [分析の実行(Run analysis)]をクリックします。
  • 生成されたスクリプト全体を確認します。
  • スクリプト全体確認後に[SQLスクリプトを確認しその推奨される変更をデータベースに適用します(I have reviewed the SQL script and am aware of the changes it will apply to my database.)]をチェックします。
  • [SQLの実行(Run SQL)]をクリックします。
  • [データベース準備結果(Prepare database result)]で[Preparation succeeded]を確認し、[OK]をクリックします。

[構成(Configuration)]ページに戻り[次(Next)]をクリックします。
[確認(Confirmation)]ページで接続詳細サマリーを確認します。
[データベース接続(Database connections)]の一覧ページで[ソース・データベース用の接続]が正常に作成されていることを確認します。

ターゲット・データベース用の接続の作成

GoldenGate Free ホームページで[接続の作成(Create connection)]をクリックします。

[一般の情報(General Information)]ページで[データベース接続名(Database Connection Name)]に任意の接続名を入力します。[次(Next)]をクリックします。

[接続の詳細(Connection details)]ページで以下を実施します。

  • [接続ロール(Connection role)]で[ターゲット(Target)]を選択します。
  • [接続タイプ(Connection type)]のドロップダウンから[基本(Basic)]を選択します。
  • [ホスト名(Hostname)]にデータベースのホスト名を入力します。
  • [ポート(Port)]にデータベースのポート番号を入力します。
  • [データベースタイプ(Database type)]で[21c バージョンのPDBまたはそれ以上のバージョン(Pluggable database (PDB) in Oracle Database 21c or above)]を選択します。
  • [プラガブルデータベースサービス名(Pluggable database service name(PDB)]を入力します。
  • [使用可能なSYSDBA権限(SYSDBA privileges available)]をチェックします。
  • [管理者資格証明ダイアログ(Administrator Credentials)]で[管理者権限を持つユーザ(User with admin privilege)]に[sys]と入力し、[管理者ユーザのパスワード(Password for admin user)]に[sysのパスワード]を入力し、[OK]をクリックします。

[接続の詳細(Connection details)]ページに戻り[次(Next)]をクリックします。

[GoldenGate 管理者ユーザー(GoldenGate admin user)]ページで以下を実施します。

  • [GoldenGate 管理者データベース・ユーザーの追加(Add GoldenGate admin database user)]をチェックします。
  • [ユーザー名(Username)](通常はggadmin)と[パスワード(Password)]を入力します。
  • [次(Next)]をクリックします。

[構成(Configuration)]ページで以下を実施します。

  • [使用可能なSYSDBA権限(SYSDBA privileges available)]をチェックします。
  • [分析の実行(Run analysis)]をクリックします。
  • 生成されたスクリプト全体を確認します。
  • スクリプト全体確認後に[SQLスクリプトを確認しその推奨される変更をデータベースに適用します(I have reviewed the SQL script and am aware of the changes it will apply to my database.)]をチェックします。
  • [SQLの実行(Run SQL)]をクリックします。
  • [データベース準備結果(Prepare database result)]で[Preparation succeeded]を確認し、[OK]をクリックします。

[構成(Configuration)]ページに戻り[次(Next)]をクリックします。[確認(Confirmation)]ページで接続詳細サマリーを確認します。[データベース接続(Database connections)]の一覧ページで[ターゲット・データベース用の接続]が正常に作成されていることを確認します。

さいごに

いかがでしたしょうか?
今回はソース・データベース用の接続とターゲット・データベース用の接続を作成しました。
次回はパイプラインの作成とデータ同期確認を実施します。

是非次回もご覧ください!

Oracle Cloudに関するお問い合わせはこちらからお願いします!

投稿者プロフィール

技術チーム
技術チーム
DBひとりでできるもんを盛り上げるべく、技術チームが立ち上がり早6年。ひとりでできるもんと言いつつ、技術者が読んでプッとなるような、極めてピンポイントでマニアックな技術ネタを執筆しています!