前提条件
次のセクションでは、IBM DB2 for LUW コネクタを使用するための前提条件について説明します。
データのランディングまたはレプリケートをする前に、次の前提条件を満たすようにします。
-
Data Movement gateway サーバーに、必要な driver をインストールする
情報メモこれは、Data Movement gateway を使用することを選択した場合のみ必要です。Data Movement gateway の利点と必要なタイミングについては、Qlik Data Gateway - データ移動 を参照してください。
-
データ ソースに必要な権限を付与する
-
データ ソースのコネクタを構成する
ドライバーのセットアップ
driver のインストールは、ドライバー インストール ユーティリティを使用する (推奨) か、手動で実行できます。手動インストールは、ドライバー インストール ユーティリティで問題が発生した場合にのみ実行するようにしてください。
ドライバー インストール ユーティリティを使用したドライバーのインストール
このセクションでは、必要な driver のインストール方法を説明しました。このプロセスでは、driver をダウンロードし、必要なフォルダー (以下を参照) にコピーし、自動的にインストールして設定するスクリプトを実行します。また、必要に応じて driver の更新やアンインストールを行うスクリプトを実行することもできます。
インストールの準備
-
データ移動 ゲートウェイ サーバーに Python 3.6.x 以降 がインストールされていることを確認します。
Python は、ほとんどの Linux 配布に前もってインストールされています。お使いのシステムにインストールされている Python のバージョンは、次のコマンドを実行することで確認できます。
python3 --version
-
IBM の Web サイトから IBM Data Server Client「<version>_linuxx64_client.tar.gz」をダウンロードします。サポートされているバージョンは、/opt/qlik/gateway/movement/drivers/manifests/db2.yaml の binary-artifacts にあります。ダウンロードが完了したら、ファイルを次の場所にコピーします。
/opt/qlik/gateway/movement/drivers/db2
driver のインストール
driver をするには:
-
Data Movement gateway サービスを停止します。
sudo systemctl stop repagent
-
オプションで、サービスが停止されたことを確認します。
sudo systemctl status repagent
ステータスは次のようになっているはずです。
Active: inactive (dead) since <timestamp> ago
-
データ移動 ゲートウェイ マシンで、作業ディレクトリを次に変更します:
opt/qlik/gateway/movement/drivers/bin
-
次のコマンドを実行します。
構文:
./install db2
それ以外の場合は、driver の EULA が表示されます。
-
以下のいずれかを行います。
- 何度も [Enter] を押すと、EULA 全体をスクロールできます。
- 何度もスペースバーを押すと、EULA 全体をスピーディにスクロールできます。
- q を押すと、ライセンス テキストが終了し、EULA 受諾オプションが表示されます。
-
以下のいずれかを行います。
- 「y」を入力して [Enter] を押すと、EULA が受諾され、インストールが開始します。
- 「n」を入力して [Enter] を押すと、EULA が拒否され、インストールが終了します。
-
「v」を入力して [Enter] を押すと、EULA が再表示されます。
-
インストールが終了するまで待ってから (「完了しました!」と表示されます)、Data Movement gateway サービスを開始します。
sudo systemctl start repagent
-
必要に応じて、サービスが開始されたことを確認します。
sudo systemctl status repagent
ステータスは次のようになっているはずです。
Active: active (running) since <timestamp> ago
driver がインストールされます。
driver の更新
提供された driver をインストールする前に前のバージョンの driver をアンインストールしたい場合は、更新コマンドを実行します。
driver を更新するには:
-
Data Movement gateway サービスを停止します。
sudo systemctl stop repagent
-
オプションで、サービスが停止されたことを確認します。
sudo systemctl status repagent
ステータスは次のようになっているはずです。
Active: inactive (dead) since <timestamp> ago
-
データ移動 ゲートウェイ マシンで、作業ディレクトリを次に変更します:
opt/qlik/gateway/movement/drivers/bin
-
次のコマンドを実行します。
構文:
./update db2
それ以外の場合は、driver の EULA が表示されます。
-
以下のいずれかを行います。
- 何度も [Enter] を押すと、EULA 全体をスクロールできます。
- 何度もスペースバーを押して、EULA 全体をスピーディにスクロールします。
- q を押すと、ライセンス テキストが終了し、EULA 受諾オプションが表示されます。
-
以下のいずれかを行います。
- 「y」を入力して [Enter] を押すと、EULA が受諾され、インストールが開始します。
- 「n」を入力して [Enter] を押すと、EULA が拒否され、インストールが終了します。
- 「v」を入力して [Enter] を押すと、最初から EULA をレビューできます。
-
インストールが終了するまで待ってから (「完了しました!」と表示されます)、Data Movement gateway サービスを開始します。
sudo systemctl start repagent
-
必要に応じて、サービスが開始されたことを確認します。
sudo systemctl status repagent
ステータスは次のようになっているはずです。
Active: active (running) since <timestamp> ago
古い driver がアンインストールされ、新しい driver がインストールされます。
driver のアンインストール
driver をアンインストールする場合は、アンインストール コマンドを実行します。
driver をアンインストールするには:
-
このコネクタを使用するように構成されているすべてのタスクを停止します。
-
データ移動 ゲートウェイ マシンで、作業ディレクトリを次に変更します:
opt/qlik/gateway/movement/drivers/bin
-
次のコマンドを実行します。
構文:
./uninstall db2
driver がアンインストールされます。
ドライバーの手動インストール
自動ドライバーのインストールが正常に完了しなかった場合にのみ、driver を手動でインストールするようにしてください。
Data Movement gateway マシンで、シェル プロンプトを開き、次の手順を実行します。
-
Data Movement gateway サービスを停止します。
sudo systemctl stop repagent
-
オプションで、サービスが停止されたことを確認します。
sudo systemctl status repagent
ステータスは次のようになっているはずです。
Active: inactive (dead) since <timestamp> ago
- IBM Data Client v11.5.8_linuxx64_server_t.tar.gz をインストールします。「CLIENT」のインストールを選択します。
-
Data Movement gateway マシンに DB2 インスタンスがない場合、次のコマンドを実行して DB2 インスタンスを作成します。
adduser <db2_instance_name>
/opt/ibm/db2/V11.5/instance/db2icrt <db2_instance_name>
-
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
-
odbcinst.ini という名前の新しいファイルを /etc の下に作成して、次のエントリを追加します。
[IBM DB2 ODBC DRIVER]
Driver = /home/db2clnt1/sqllib/lib/libdb2o.so
fileusage=1
dontdlclose=1
-
Data Movement gateway サービスを起動します。
sudo systemctl start repagent
-
必要に応じて、サービスが開始されたことを確認します。
sudo systemctl status repagent
ステータスは次のようになっているはずです。
Active: active (running) since <timestamp> ago
-
IBM DB2 for LUW 接続設定を、 IBM DB2 for LUW の説明通りに定義し、 [接続のテスト] をクリックします。
次のエラーが表示された場合は、以下を実行してください。
Cannot connect to DB2 LUW Server ODBC unknown error.
RetCode: SQL_ERROR SqlState: NativeError: -1390 Message: [unixODBC][IBM][CLI Driver] SQL10007N Message "0" could not be retrieved. Reason code: "3". ODBC general error.
-
次のコマンドを実行します。
/opt/ibm/db2/V11.5/bin /db2cli writecfg add -database <db_name_from_コネクタ_connection_settings> -host <server_name_from_コネクタ_connection_settings> -port <port_from_コネクタ_connection_settings>
-
Data Movement gatewaybin ディレクトリ (<install_dir>/bin) に変更します。次に、上記のように Data Movement gateway サービスを停止して開始します。
-
データベースで CDC を有効化する
CDC (変更データ キャプチャ) を有効にするには:
- データベースを回復可能に設定 - 変更をキャプチャするには、Data Movement gateway ではデータベースを回復可能に構成する必要があります。データベース構成パラメーター LOGARCHMETH1 および LOGARCHMETH2 のいずれかまたは両方が OFF に設定されていない場合、データベースは回復可能です。
-
権限 - Qlik ユーザーには、次の権限が付与されている必要があります。
-
SYSADM または DBADM
-
DATAACCESS
-
-
IBM DB2 for LUW からのデータ キャプチャを有効にするには、次のようにソース テーブルを作成する必要があります。
CREATE / ALTER TABLE table-name …. DATA CAPTURE CHANGES [INCLUDE LONGVAR COLUMNS];
コネクタ 設定で [自動的にデータ キャプチャの変更を有効にする (管理者権限が必要)] を選択してこの操作を実行するように Data Movement gateway を構成するか、これを手動で行うことができます。
[自動的にデータ キャプチャの変更を有効にする (管理者権限が必要)] オプションが選択されている場合、Data Movement gateway はタスクの実行開始時に ALTER TABLE 操作を実行します。タスクがすでに実行されている間に、テーブル選択パターンに一致する新しいテーブルが追加 (ソース データベースに) された場合、Data Movement gateway は、上記の DATA CAPTURE CHANGE 属性で作成された場合にのみ、そのテーブルからの変更をキャプチャします。