# 前提条件

データのランディングまたはレプリケートをする前に、次の前提条件を満たすようにします。

* Data Movement gateway サーバーに、必要な driver をインストールする

  情報メモ

  これは、Data Movement gateway を使用することを選択した場合のみ必要です。Data Movement gateway の利点と必要なタイミングについては、[Qlik データ ゲートウェイ - データ移動](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm) を参照してください。

* データ ソースに必要な権限を付与する

* データ ソースのコネクタを構成する

## R4Z 製品の z/OS へのインストール

IBM DB2 for z/OS ソースを使用する前に、最初に z/OS に R4Z 製品をインストールして構成する必要があります。

1. [製品のダウンロード](https://community.qlik.com/t5/Downloads/tkb-p/Downloads)に移動します。

2. Qlik [データ統合] を選択します。

3. [製品] リストで、Qlik Replicate を選択します。

4. [リリース] リストで、Data Movement gateway バージョンのリリース日 (年と月) に対応する Qlik Replicate バージョンを選択します。たとえば、Data Movement gateway のバージョンが 2024.5.54 (Year.Month.Build) の場合、May 2024 を選択します。

5. [リリース番号] リストで、 [初回リリース] を選択します。

6. ダウンロード リンク列で、QlikReplicate\_&lt;version&gt;\_r4z.zip のリンクをクリックしてダウンロードを開始します。

7. ダウンロードしたら、z/OS データ ソースにインストールします。

インストールと構成に関する指示については、[R4Zのインストールと構成](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Global_Common/Content/SharedReplicateHDD/R4Z_Install_Config/concept-design.htm) を参照してください。

## ドライバーのインストールと設定

driver のインストールは、ドライバー インストール ユーティリティを使用する (推奨) か、手動で実行できます。手動インストールは、ドライバー インストール ユーティリティで問題が発生した場合にのみ実行するようにしてください。

### ドライバー インストール ユーティリティを使用したドライバーのインストール

このセクションでは、必要な driver のインストール方法を説明しました。このプロセスでは、driver をダウンロードし、必要なフォルダー (以下を参照) にコピーし、自動的にインストールして設定するスクリプトを実行します。また、必要に応じて driver の更新やアンインストールを行うスクリプトを実行することもできます。

### インストールの準備

* データ移動 ゲートウェイ サーバーに Python 3.6.x 以降 がインストールされていることを確認します。

  Python は、ほとんどの Linux 配布に前もってインストールされています。お使いのシステムにインストールされている Python のバージョンは、次のコマンドを実行することで確認できます。

  python3 --version

* IBM の Web サイトから IBM Data Server Client「&lt;version&gt;\_linuxx64\_client.tar.gz」をダウンロードします。サポートされているバージョンは、/opt/qlik/gateway/movement/drivers/manifests/db2.yaml の binary-artifacts にあります。ダウンロードが完了したら、ファイルを次の場所にコピーします。

  /opt/qlik/gateway/movement/drivers/db2

### driver のインストール

driver をするには:

1. Data Movement gateway サービスを停止します。

   sudo systemctl stop repagent

2. 必要に応じて、サービスが停止されたことを確認します。

   sudo systemctl status repagent

   ステータスは次のようになっているはずです。

   Active: inactive (dead) since &lt;timestamp&gt; ago

3. データ移動 ゲートウェイ マシンで、作業ディレクトリを次に変更します:

   opt/qlik/gateway/movement/drivers/bin

4. 次のコマンドを実行します:

   構文:

   ./install db2

   それ以外の場合は、driver の EULA が表示されます。

5. 次のいずれかを実行します。

   * 何度も [Enter] を押すと、EULA 全体をスクロールできます。
   * 何度もスペースバーを押すと、EULA 全体をスピーディにスクロールできます。
   * q を押すと、ライセンス テキストが終了し、EULA 受諾オプションが表示されます。

6. 次のいずれかを実行します。

   * 「y」を入力して [Enter] を押すと、EULA が受諾され、インストールが開始します。

   * 「n」を入力して [Enter] を押すと、EULA が拒否され、インストールが終了します。

   * 「v」を入力して [Enter] を押すと、EULA が再表示されます。

   driver がインストールされます。

7. インストールが終了するまで待ってから (「完了しました!」と表示されます)、Data Movement gateway サービスを開始します。

   sudo systemctl start repagent

8. 必要に応じて、サービスが開始されたことを確認します。

   sudo systemctl status repagent

   ステータスは次のようになっているはずです。

   Active: active (running) since &lt;timestamp&gt; ago

### driver の更新

提供された driver をインストールする前に前のバージョンの driver をアンインストールしたい場合は、更新コマンドを実行します。

driver を更新するには:

1. Data Movement gateway サービスを停止します。

   sudo systemctl stop repagent

2. 必要に応じて、サービスが停止されたことを確認します。

   sudo systemctl status repagent

   ステータスは次のようになっているはずです。

   Active: inactive (dead) since &lt;timestamp&gt; ago

3. データ移動 ゲートウェイ マシンで、作業ディレクトリを次に変更します:

   opt/qlik/gateway/movement/drivers/bin

4. 次のコマンドを実行します:

   構文:

   ./update db2

   それ以外の場合は、driver の EULA が表示されます。

5. 次のいずれかを実行します。

   * 何度も [Enter] を押すと、EULA 全体をスクロールできます。
   * 何度もスペースバーを押すと、EULA 全体をスピーディにスクロールできます。
   * q を押すと、ライセンス テキストが終了し、EULA 受諾オプションが表示されます。

6. 次のいずれかを実行します。

   * 「y」を入力して [Enter] を押すと、EULA が受諾され、インストールが開始します。
   * 「n」を入力して [Enter] を押すと、EULA が拒否され、インストールが終了します。
   * 「v」を入力して [Enter] を押すと、最初から EULA をレビューできます。

   古い driver がアンインストールされ、新しい driver がインストールされます。

7. インストールが終了するまで待ってから (「完了しました!」と表示されます)、Data Movement gateway サービスを開始します。

   sudo systemctl start repagent

8. 必要に応じて、サービスが開始されたことを確認します。

   sudo systemctl status repagent

   ステータスは次のようになっているはずです。

   Active: active (running) since &lt;timestamp&gt; ago

### driver のアンインストール

driver をアンインストールする場合は、アンインストール コマンドを実行します。

driver をアンインストールするには:

1. このコネクタを使用するように構成されているすべてのタスクを停止します。

2. データ移動 ゲートウェイ マシンで、作業ディレクトリを次に変更します:

   opt/qlik/gateway/movement/drivers/bin

3. 次のコマンドを実行します:

   構文:

   ./uninstall db2

   driver がアンインストールされます。

### ドライバーの手動インストール

自動ドライバーのインストールが正常に完了しなかった場合にのみ、driver を手動でインストールするようにしてください。

#### Linux ODBC クライアント パッケージ

以下の [Linux データサーバークライアント](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/IBM4DB2-zos/prerequisites-zos.htm#Linux) で説明するように、完全な ODBC クライアント パッケージをインストールするか、データ サーバー クライアントのみをインストールするかを選択できます。

情報メモ

「enableWLB」ドライバー オプションはサポートされていません。接続を強制的に並列シスプレックス内の別の LPAR に自動的に切り替える (つまり「フェイルオーバー」) には、ドライバー構成で「enableACR」を「true」に、「enableWLB」を「false」に設定します。

Data Movement gateway マシンで、シェル プロンプトを開き、次の手順を実行します。

1. Data Movement gateway サービスを停止します。

   sudo systemctl stop repagent

2. 必要に応じて、サービスが停止されたことを確認します。

   sudo systemctl status repagent

   ステータスは次のようになっているはずです。

   Active: inactive (dead) since &lt;timestamp&gt; ago

3. v11.5.8\_linuxx64\_server\_dec.tar.gz をインストールし、「CLIENT」オプションを選択します。

4. Data Movement gateway マシンに DB2 インスタンスがない場合、次のコマンドを実行して DB2 インスタンスを作成します。

   `adduser <db2_instance_name>`

   `/opt/ibm/db2/V11.5/instance/db2icrt <db2_instance_name>`

5. 作業ディレクトリを &lt;Data Movement gateway\_Install\_Dir&gt;/bin に変更します。

6. DB2 ドライバーの場所を Linux ライブラリ パスに追加します。

   これを行うには、次の行を **site\_ arep\_login.sh** ファイルへのドライバー場所をコピーします。

   `export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/lib`

   ここでの `path` は、ドライバーへの CLIENT パスです。

   **例 (インスタンス名として db2clnt1 を使用):**

   `export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/db2clnt1/sqllib/lib:/home/db2clnt1/sqllib/lib64/gskit
   `

   `export DB2INSTANCE=db2clnt1`

7. 必要に応じて、ドライバーの場所がコピーされていることを確認します。

   ```
   cat site_arep_login.sh
                           
   ```

8. /etc の下の odbcinst.ini ファイルに次のエントリを追加します。

   `[IBM DB2 ODBC DRIVER]`

   `Driver = /home/db2clnt1/sqllib/lib/libdb2o.so`

   `fileusage=1`

   `dontdlclose=1`

9. Data Movement gateway サービスを起動します。

   sudo systemctl start repagent

10. 必要に応じて、サービスが開始されたことを確認します。

    sudo systemctl status repagent

    ステータスは次のようになっているはずです。

    Active: active (running) since &lt;timestamp&gt; ago

#### Linux データサーバークライアント

1. v11.5.9\_linuxx64\_client.tar.gz を [IBM Fix Central](https://www.ibm.com/support/fixcentral/swg/downloadFixes?parent=ibm~Information%20Management&product=ibm/Information+Management/IBM+Data+Server+Client+Packages&release=11.5.*&platform=All&function=fixId&fixids=DSClients-115-linuxx64-RECOMMENDED&includeRequisites=0&includeSupersedes=0&downloadMethod=http) からダウンロードして、ファイルを抽出します。

2. Data Movement gateway サービスを停止します。

   ```
   sudo service repagent stop
                           
   ```

3. 必要に応じて、サービスが停止されたことを確認します。

   ```
   sudo service repagent status
                           
   ```

   ステータスは次のようになっているはずです。

   Active: inactive (dead) since &lt;timestamp&gt; ago

4. 作業ディレクトリを /opt/client に変更して、`db2_install` を実行します。

5. RSP ファイル (下記の サンプル RSP ファイル を参照) を作成してから、次のコマンド (/opt/client から) を実行します:

   `./db2setup -r /file-path/client.rsp`

6. /etc の下の odbcinst.ini ファイルに次のエントリを追加します。

   `[IBM DB2 ODBC DRIVER]` `Driver = /opt/ibm/db2/V11.5/lib64/libdb2o.so` `fileusage=1` `dontdlclose=1`

7. Data Movement gateway サービスを起動します。

   ```
   sudo service repagent start
                           
   ```

8. 必要に応じて、サービスが開始されたことを確認します。

   `sudo service repagent status`

   ステータスは次のようになっているはずです。

   Active: active (running) since &lt;timestamp&gt; ago

サンプル RSP ファイル

```
*-----------------------------------------------------
* Generated response file used by the DB2 Setup wizard
* generation time: 2/18/22 4:10 PM
*-----------------------------------------------------
*  Product Installation
LIC_AGREEMENT       = ACCEPT
PROD       = CLIENT
FILE       = /opt/ibm/db2/V11.5
INSTALL_TYPE       = TYPICAL
* ----------------------------------------------
*  Instance properties
* ----------------------------------------------
INSTANCE       = inst1
inst1.TYPE       = client
*  Instance-owning user
inst1.NAME       = qlik
inst1.UID       = 1000
inst1.GROUP_NAME       = qlik
inst1.HOME_DIRECTORY       = /home/qlik
inst1.AUTOSTART       = NO
*-----------------------------------------------
*  Installed Languages
*-----------------------------------------------
LANG       = EN
		
```

### サーバー側の ODBC セットアップ

ODBC 初期化ファイルの PLANNAME= 値で指定された、ODBC に使用されるプランをバインドします。既定の名前は DSNACLI です。BIND ジョブは、DB2 インストール元の SDSNSAMP ライブラリの、メンバー DSNTIJCL にあります。

DB2CLI bind コマンドを使用して、ODBC 提供のパッケージを目的のソース z/OS DB2 サブシステムにバインドします。このアクションについては、IBM ウェブサイトの[『Configuring your developer and runtime environment』](https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.1.0/com.ibm.db2.luw.apdv.cli.doc/doc/r0007866.html)に記載されています。バインド ユーティリティの例を含む DB2CLI ユーティリティの詳細については、IBM ウェブサイトの『[db2cli - DB2 interactive CLI command](https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.1.0/com.ibm.db2.luw.admin.cmd.doc/doc/r0002045.html)』を参照してください。

## 必要な権限

Data Movement gateway がソース テーブルからデータを抽出できるようにする (フル ロードおよび変更データ キャプチャ) には、IBM DB2 for z/OS コネクタ設定で指定されたユーザーに次の権限を付与する必要があります。

* EXECUTE - UDTF を読み取る IFI (変更データ キャプチャにのみ必要)
* SELECT - ソース テーブルおよび次のシステム カタログ テーブル:
  * SYSIBM.SYSDUMMY1
  * SYSIBM.SYSTABLES
  * SYSIBM.SYSTABLESPACE
  * SYSIBM.SYSPARMS
  * SYSIBM.SYSROUTINES
  * SYSIBM.SYSCOLUMNS
  * SYSIBM.SYSLGRNX
  * SYSIBM.SYSTABLEPART
* MONITOR2 - IFI セッションを開始できるようにするため (変更データ キャプチャにのみ必要)

## データ変更のキャプチャ

IBM DB2 for z/OS からの変更をキャプチャするために、Data Movement gateway は、外部ルーチンとして呼び出されるユーザー定義テーブル関数 (UDTF) である、特別なプログラムを使用します。このプログラム (ロード モジュール) と UDTF は、変更をキャプチャする前に z/OS システムにインストールして構成する必要があります。DBA によって実行されるインストール手順は、[R4Zのインストールと構成](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Global_Common/Content/SharedReplicateHDD/R4Z_Install_Config/concept-design.htm) に記載されています。

さらに、変更をキャプチャするすべてのテーブルに、DATA CAPTURE CHANGES 属性を設定する必要があります。これは手動で行うか、コネクタ の設定で [Automatically enable DATA CAPTURE CHANGES] (DATA CAPTURE CHANGES を自動で有効にする) (管理者権限が必要) オプションを有効 (既定) にしておくことで、Data Movement gateway に許可できます。