DBMotoを使用し、AS/400からミラーリングを行う場合、
ジャーナルを参照して変更点をターゲットDBに対して転送を行います。
AS/400のジャーナル起動イメージが「*BOTH」の場合は問題なくミラーリングを行うことができますが、
「*AFTER」で起動している場合、そのままではミラーリングが実行できないため、
追加で下記の設定を実施する必要があります。
・ターゲットテーブルに対してINT系のカラムを追加
・DBMotoのフィールドマッピング設定にて、AS/400のRecord IDと追加したカラムをマッピング
ターゲットテーブルに対してINT系のフィールドを追加する
ターゲットテーブルに対してINT系のカラムを追加する必要があります。
※Syniti DR(DBMotoのVersion 9.6以降)をご利用の場合、Decimal型、サイズ:15でカラムを追加する必要があります。
DBMotoのテーブル作成画面から作成する際には、下記画面のようにSQLで指定します。
※SPL_IDというINT型のカラムを作成しました。
すでにテーブルが作成されている場合は、クライアントツールなどを使用しターゲットテーブルに対して直接カラムを追加してください。
カラムを追加後、DBMotoコンソールより対象テーブルを右クリック、主キーの設定をクリックします。
すでにテーブルに定義されている主キーをDBMotoコンソールより解除し、
追加したSPL_IDカラムを主キーとして設定します。
上記のようにSPL_IDカラムが主キーとして設定されていることを確認します。
DBMotoのフィールドマッピング設定にて、AS/400のRecord IDと追加したカラムをマッピング
DBMotoでレプリケーションを作成します。
トランザクションIDを取得する際に以下の警告メッセージが表示されますが、「はい」をクリックします。
フィールドをマッピングする時に追加したSPL_IDカラムを右クリックし、
関数へのマッピングをクリックします。
関数プログラム画面にて、左下ペインの「値」より、「ログフィールド」を選択、
右下ペインより「!RecordID」 をダブルクリックし設定が赤枠内に反映されていることを確認します。
下記画面のように設定ができていれば完成です。
関連したトピックス
- Syniti Data Replication (旧DBMoto)でのスクリプトの書き方④:レプリケーションスクリプト
- 主キー(PK)もDBMoto仮想PKも指定せずに差分レプリケーションを行うには?
- レプリケーション対象テーブル構成変更後のSyniti Data Replication (旧DBMoto) マッピング対応について
- Syniti Data Replication (DBMoto) の監視方法について
- データレプリケーションソリューションに求められる9つのポイント
- DBMOTOLIB Libraryの手動での作成方法(AS/400)【リアルタイムレプリケーションツールDBMoto】
- PostgreSQLからの差分連携(LSA)セットアップ手順【Syniti DR】
- データ分析基盤へもSyniti Data Replication(旧DBMoto)で簡単レプリケーション! Google BigQueryへの接続方法
- HiT JDBC/DB2 新機能リリースノート:Ver4.13 / 4.16 / 4.17
- 多様化するデータは小回りの利くツールでガバナンスの徹底を