# トリガーモードでCDCを設定する

以下は、特定のパブリッシャー/サブスクライバーシナリオの場合に1回だけ実行する必要のある設定ステップです。

## 手順1: パブリッシャーの設定

### 手順

1. CDC専用のデータベース接続を設定。
2. データが置かれているデータベースへの接続を設定。

### タスクの結果

データベース接続を設定する方法は、[データベースメタデータを一元管理](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0/centralizing-database-metadata)をご覧ください。

情報メモ注: MS SQL Serverで作業している場合は、2つの接続を同じデータベースに設定する必要がありますが、2つの異なるスキーマを使用します。

![MS SQL Serverでの同じデータベースへの2つの接続の例。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/cdc_trigger_publisher.png)

## ステップ2: ソーステーブルの識別

データ変更をキャプチャーするテーブルを識別するには、新たに作成したデータ接続を右クリックしてソーステーブルのスキーマを取得し、それをリポジトリーファイルシステムにロードします。この例では、ソーステーブルはpersonです。

![接続からのpersonソーステーブルの例。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/cdc_trigger_identifysourcetable.png)

## 手順3: サブスクライバーテーブルの作成

### 手順

1. データ接続ノードの下でCDC Foundationフォルダーを右クリックし、コンテキストメニューから[Create CDC] (CDCを作成)を選択します。[Create Change Data Capture] (CDCを作成)ダイアログボックスが開きます。
2. [Create Change Data Capture] (CDCを作成)ダイアログボックスで、[Set Link Connection] (リンク接続を設定)フィールドの横の[...]ボタンをクリックして、CDC専用のデータベース接続を選択します。

   他のCDCモードもサポートするOracleなどのデータベースの場合は、このステップでデータ変更をキャプチャーするオプションとして[Trigger mode] (トリガーモード)を必ず選択してください。

   ![Oracleデータベース用の\[Trigger mode\] (トリガーモード)オプションと\[XStream mode\] (XStreamモード)オプション。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/cdc_trigger_subscriber_create2.png)
3. [Create Subscriber] (サブスクライバーの作成)をクリックし、[Create Subscriber and Execute SQL Script] (サブスクライバーの作成とSQLスクリプトの実行)ダイアログボックスを開きます。
4. [Execute] (実行)をクリックして表示されているSQLスクリプトを実行し、[Close] (閉じる)をクリックしてダイアログボックスを閉じます。
5. [Create Change Data Capture] (CDCを作成)ダイアログボックスで[Finish] (終了)をクリックします。

   [CDC Foundation]フォルダーに、CDCのデータベース接続とサブスクライバーテーブルスキーマが表示されます。

## ステップ4: ソーステーブルにサブスクライブし、サブスクリプションを有効にする

### このタスクについて

サブスクライバーがサブスクライブするテーブルを指定してから、サブスクリプションを有効にする必要があります。

### 手順

1. ソーステーブルに関連スキーマを右クリックし、[add CDC] (CDCの追加)を選択します。[Create Subscriber and Execute SQL Script] (サブスクライバーの作成とSQLスクリプトの実行)ダイアログボックスが表示されます。

   情報メモ警告: CDCシステムで変更が加えられた行を識別できるよう、監視対象のソーステーブルにはプライマリキーが必要です。ソーステーブルスキーマにプライマリキーがない場合は、CDC環境を設定できません。

   情報メモ注: Oracleデータベースの場合、CDCシステムは監視対象ソーステーブルのエイリアスを作成します。これは、変更テーブルと関連付けられているビューの作成時に、識別子の長さに起因する問題を回避するために役立ちます。設定済みのCDCシステムの場合、テーブル名は保持されます。
2. [Create Subscriber and Execute SQL Script] (サブスクライバーの作成とSQLスクリプトの実行)ダイアログボックスで、キャッチするイベントを確認します: [Insert] (挿入)、[Update] (アップデート)、または[Delete] (削除)。
3. [Execute] (実行)をクリックして表示されているSQLスクリプトを実行し、[Close] (閉じる)をクリックしてダイアログボックスを閉じます。

   CDC Foundationフォルダーに、キャッチテーブルスキーマと対応するビュースキーマが表示されます。
4. ソーステーブルに加えられた変更を表示させる場合は、[Table schemas] (テーブルスキーマ)フォルダーでテーブルを右クリックし、[View All Changes] (すべての変更を表示)を選択して[View All Changes] (すべての変更を表示)ダイアログボックスを開きます。

   ![\[View All Changes\] (変更をすべて表示)ダイアログボックスの概要。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/cdc_trigger_viewchanges_dbox.png)
5. [Finish] (終了)をクリックしてダイアログボックスを閉じます。