pureQuery クライアント最適化対応のアプリケーションをテスト環境から実稼働環境にマイグレーションする場合、最適な結果を得るには、推奨情報に従います。
最終的なターゲットの環境にできるだけ似た環境でキャプチャーを実行し、テストすることを推奨します。
ただし、多くの場合、テスト環境と実稼働環境を同じにできないことがあります。
テスト環境と実稼働環境の違いについて、以下のような例があります。
- テスト・システムで DB2® for Linux、UNIX、または Windows のデータベースを使用するが、
実稼働環境では DB2 for z/OS® データベースを使用することがある。
- テスト・システムで、実動システムとは異なるバージョンのデータベースを使用することがある。
アプリケーションをマイグレーションする前に、スキーマ情報が 2 つの環境で一致していることを確認する必要があります。
どちらの環境も、以下のいずれかの方法でスキーマを使用します。
- 両方のシステムが同じスキーマ定義を使用する。
- 両方のシステムが非修飾テーブル名を使用する。
実動システムで SQL ステートメントを動的から静的に実行するように切り替える場合は、その結果をテストする必要があります。
テストする項目の例は、以下のとおりです。
- ターゲット・データベース上でのバインド操作が成功することを確認する。
- SQL ステートメントの静的実行により返される結果が、そのステートメントを動的実行した場合の結果と同じになることを確認する。
- ステートメントを静的に実行した場合、そのステートメントを動的に実行した場合と同様にアプリケーションが実行されることを確認する。
パッケージ名、コレクションなどの実動固有の属性を含む pureQueryXML ファイルの再構成が必要な場合があります。
実動固有のオプションを含む pureQueryXML ファイルで Configure ユーティリティーを実行した後、StaticBinder を使用して、実動システム上に最終パッケージを作成できます。
z/OS のエンコード方式の考慮事項
pureQuery Runtime ユーティリティーは、UTF-8 でエンコードされたファイルで動作します。
SQL データをキャプチャーする場合は、SQL データを含む pureQueryXML ファイルが UTF-8 エンコードで作成されます。
UTF-8 でエンコードされたファイルのオープンに使用される、vi などの z/OS UNIX System Services コマンドは機能しない場合があります。
このファイルに対して、iconv コマンドを実行してエンコードの変換が必要な場合があります。
例えば、ファイル capture.xml を IBM-1047 エンコードに変換するには、以下のコマンドを使用します。
iconv -f UTF-8 -t IBM-1047 capture.xml > capture_1047.xml
変換後、vi を使用して capture_1047.xml を開き、内容を表示できます。
ただし、pureQueryRuntime で変換されたファイルは使用できません。
UTF-8 エンコードのファイルを使用する必要があります。
pureQuery Runtime ユーティリティーは UTF-8 でエンコードされたファイルで動作するため、
元のファイル capture.xml を pureQuery Runtime ユーティリティーに使用する必要があります。
FTP を使用して z/OS システムからワークステーションへファイルを転送して、表示および処理する場合は、バイナリー・モードでファイルを転送する必要があります。
その他に、UTF-8 でエンコードされたファイルを編集可能なエディターを使用するようにします。