hリリース情報 IBM(R) DB2(R) ユニバーサル・データベース リリース情報 バージョン 7 -- フィックスパック 5 本マニュアルに関するご意見やご感想は、次の URL からお送りください。今後の参 考にさせていただきます。 http://www.ibm.com/jp/manuals/main/mail.html なお、日本 IBM 発行のマニュアルはインターネット経由でもご購入いただけます。 詳しくは http://www.ibm.com/jp/manuals/ の「ご注文について」をご覧ください。 (URL は、変更になる場合があります)  原  IBM(R)DB2(R) Universal Database Release Notes Version 7 -- 典: FixPak 5  発  日本アイ・ビー・エム株式会社 行:  担  ナショナル・ランゲージ・サポート 当: 第1刷 2001.11 (C) Copyright International Business Machines Corporation 2000, 2001. All rights reserved. ------------------------------------------------------------------------ 目次 * 目次 * まえがき ------------------------------------------------------------------------ 最初にお読みください * フィックスパック 5 の特長 * 製品情報 o 2.1 DB2 (Solaris 版) バージョン 7 でサポートしている CPU o 2.2 日本語 Linux 版 および中国語 (簡体字) Linux 版 の DB2 の追加 ロケール設定 o 2.3 Linux での DBCS の制限 o 2.4 Microsoft Internet Explorer 上でのコントロール・センターの問 題 o 2.5 コントロール・センター機能の喪失 o 2.6 DB2 UDB への Netscape CD 添付の打ち切り o 2.7 XML Readme ファイルでのエラー o 2.8 DB2 バージョン 7.2 での新規のビジネス・インテリジェンス機能強 化 o 2.9 フィックスパック 2A 以降が原因で IBM DB2 OLAP Server に起こる 問題 o 2.10 WebSphere 3.5.5 を使用時のセグメント化違反 * オンライン資料 (HTML、PDF、および Search) の注釈 o 3.1 Windows 2000 オペレーティング・システムでサポートされている Web ブラウザー o 3.2 Solaris 版 DB2 オンライン情報の検索 o 3.3 OS/2 上で TCP/IP を使用するよう NetQuestion を切り替える o 3.4 Netscape を立ち上げようとした場合のエラー・メッセージ o 3.5 UNIX ベース・システム上での Adobe Acrobat Reader の構成要件 o 3.6 SQL 解説書は 1 つの PDF ファイルで提供されます ------------------------------------------------------------------------ インストールおよび構成 * 一般インストール、移行、および構成情報 o 4.1 すべてのサポートされる DB2 クライアントのインストール・パッケ ージをダウンロード o 4.2 追加が必要な Solaris パッチ・レベル o 4.3 Netscape LDAP ディレクトリー・サポート + 4.3.1 Netscape LDAP スキーマの拡張 o 4.4 Windows ME、Windows XP および Windows 2000 Datacenter エディ ション・プラットフォームのサポート + 4.4.1 Windows XP + 4.4.1.1 制約事項 + 4.4.2 Windows ME + 4.4.2.1 制約事項 + 4.4.3 Windows 2000 Datacenter Server o 4.5 Windows 2000 に DB2 をインストール o 4.6 Windows 2000 Terminal Server の管理モードでの DB2 の実行 o 4.7 Microsoft SNA サーバー および SNA マルチ・サイト・アップデー ト (2 フェーズ・コミット) のサポート o 4.8 IBM Communications Server for Windows NT (CS/NT) にユーザー ID とパスワードを 定義 + 4.8.1 ノード定義 o 4.9 取りはずし可能ドライブが接続されていない場合に DB2 インストー ラーが停止することがあります o 4.10 Windows 2000 で CLP を使用したときのエラー SQL1035N o 4.11 特別レジスターで定義した視点による移行の実行 o 4.12 IPX/SPX プロトコル・サポート (Windows 2000 版) o 4.13 前バージョンの DB2 をアップグレードする前に DB2 の処理を停止 o 4.14 別の DB2 製品がすでにインストールされている場合はインストー ル後に db2iupdt を実行 o 4.15 DB2 コントロール・センターを実行するために Linux 環境を設定 o 4.16 Linux (S/390 版) 用の DB2 ユニバーサル・データベース・エンタ ープライズ・エディションおよび DB2 コネクト エンタープライズ・エ ディション o 4.17 Linux (S/390 版) でのデータ損失の可能性 o 4.18 DB2 Linux の Gnome および KDE Desktop Integration o 4.19 Solaris カーネル構成パラメーター (推奨値) o 4.20 DB2 ユニバーサル・データベース・エンタープライズ - 拡張エデ ィション (UNIX 版) 概説およびインストール o 4.21 shmseg カーネル・パラメーター (HP-UX) o 4.22 IBM Visual Warehouse コントロール・データベースの移行 o 4.23 db2uiddl コマンドを用いた固有索引の移行 o 4.24 64 ビット AIX バージョンのインストール・エラー + 4.24.1 SMIT の使用 o 4.25 移行中のエラー o 4.26 IBM(R) DB2(R) コネクト ライセンスの活動化 + 4.26.1 ライセンス・センターを使用したライセンス・キーのイン ストールおよび ライセンス・タイプの設定 + 4.26.2 db2licm コマンドを使用したライセンス・キーのインスト ールおよび ライセンス・タイプの設定 + 4.26.3 分散インストールの場合のライセンスの考慮事項 o 4.27 ウェアハウス・コントロール・データベースへのアクセス o 4.28 エンタープライズ・エディション UNIX CD-ROM の試用製品 o 4.29 DB2 コネクト エンタープライズ・エディション UNIX CD-ROM の試 用製品 o 4.30 コード・ページおよび言語サポート情報 - 訂正 * データ・リンク・マネージャー 概説およびインストール o 5.1 AIX 5.1 でのサポート o 5.2 Dlfm 開始の失敗のメッセージ :「接頭部の afsfid を取得中にエラ ー」 o 5.3 アーカイブ・ファイルへの Tivoli Storage Manager クラスの設定 o 5.4 DFS クライアント・イネーブラーのディスク・スペース要件 o 5.5 AIX におけるデータ・リンク・ファイル・マネージャー・バックエ ンド・プロセスのモニター o 5.6 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: DCE-DFS 環境における追加のインストールの注意点 o 5.7 "dlfm add_prefix" コマンドの失敗 o 5.8 dlfm 停止時にコピー・デーモンが停止しないなど、まれな現象が発 生した場合 o 5.9 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: db2setup ユーティリティーを使用して DB2 データ・リンク・ マネージャーをインストール o 5.10 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: DCE-DFS インストール後の作業 o 5.11 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: smit を使用して DB2 データ・リンク・マネージャーを手動で インストール o 5.12 DB2 データ・リンク DFS クライアント・イネーブラー o 5.13 DB2 データ・リンク・マネージャー (Solaris 版) のインストール および構成 o 5.14 Windows NT のデータ・リンクでのアドミニストレーター・グルー プ権限 o 5.15 データ・リンク・ファイル・システム・フィルター (DLFF) インス トールのロギングの最小化 + 5.15.1 インストール後のメッセージのロギング + 5.15.2 Sun Solaris システム上でのログオンの最小化 o 5.16 DATALINK リストア o 5.17 データ・リンク・マネージャーの削除 o 5.18 SMIT を使用して DLFM コンポーネントをアンインストールすると 他のファイル・セットも除去される可能性があります o 5.19 開始する前のホスト名の判別 o 5.20 データ・リンク・ファイル・マネージャーの操作: DB2 データベー スから DB2 データ・リンク・マネージャーをドロップした後のクリーン アップ o 5.21 dlfm Client_conf が失敗した場合のユーザー処置 o 5.22 DLFM1001E (新規エラー・メッセージ) o 5.23 DLFM セットアップ構成ファイル・オプション o 5.24 ファイルのリストア中に起こりうる問題 o 5.25 AIX 上でのデータ・リンク/DFS スクリプト dmapp_prestart 実行 時エラー o 5.26 Tivoli Space Manager とデータ・リンクとの統合 + 5.26.1 制約事項と制限 o 5.27 第 4 章 DB2 データ・リンク・マネージャー (AIX 版) のインスト ールおよび構成 + 5.27.1 一般的なインストールの注意点 + 5.27.1.1 DB2 ファイル・マネージャー・バージョン 5.2 か ら DB2 データ・リンク・マネージャー・バージョン 7 への 移行 o 5.28 第 6 章 AIX でのインストールの検査 + 5.28.1 NFS 環境での回避策 * インストールおよび構成補足 o 6.1 第 5 章 UNIX オペレーティング・システムへの DB2 クライアント のインストール + 6.1.1 HP-UX カーネル構成パラメーター o 6.2 第 12 章 お持ちのアプリケーションの実行 + 6.2.1 ランタイム・クライアントを使用するデータベース・ユーテ ィリティーのバインド + 6.2.2 ODBC を使用しての DB2 への UNIX クライアント・アクセス o 6.3 第 24 章 複数データ・ソース・アクセス用の統合システムのセット アップ + 6.3.1 統合システム + 6.3.2 制約事項 + 6.3.3 DB2 リレーショナル・コネクトのインストール + 6.3.3.1 Windows NT サーバーへの DB2 リレーショナル・コ ネクトのインストール + 6.3.3.2 UNIX サーバーへの DB2 リレーショナル・コネクト のインストール o 6.4 第 26 章 Oracle データ・ソースへのアクセス + 6.4.1 記述の誤り o 6.5 Sybase データ・ソースへのアクセス + 6.5.1 統合サーバーへの Sybase データ・ソースの追加 + 6.5.1.1 ステップ 1: 環境変数の設定およびプロファイル・ レジストリーの更新 (AIX および Solaris の場合のみ) + 6.5.1.2 ステップ 2: Sybase クライアント・ソフトウェアへ の DB2 のリンク (AIX および Solaris の場合のみ) + 6.5.1.3 ステップ 3: DB2 インスタンスの再生 (AIX および Solaris の場合のみ) + 6.5.1.4 ステップ 4: interfaces ファイルの作成およびセッ トアップ + 6.5.1.5 ステップ 5: ラッパーの作成 + 6.5.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の 設定 + 6.5.1.7 ステップ 7: サーバーの作成 + 6.5.1.8 ステップ 8: オプション: CONNECTSTRING サーバ ー・オプションの設定 + 6.5.1.9 ステップ 9: ユーザー・マッピングの作成 + 6.5.1.10 ステップ 10: 表および視点のニックネームの作成 + 6.5.2 Sybase コード・ページの指定 o 6.6 ODBC による Microsoft SQL Server データ・ソースへのアクセス (新しい章) + 6.6.1 統合サーバーへの Microsoft SQL Server データ・ソースの 追加 + 6.6.1.1 ステップ 1: 環境変数の設定 (AIX の場合のみ) + 6.6.1.2 ステップ 2: シェル・スクリプトの実行 (AIX の場 合のみ) + 6.6.1.3 ステップ 3: オプション: DB2_DJ_COMM 環境変数の 設定 (AIX の場合のみ) + 6.6.1.4 ステップ 4: DB2 インスタンスの再生 (AIX の場合 のみ) + 6.6.1.5 ステップ 5: ラッパーの作成 + 6.6.1.6 ステップ 6: サーバーの作成 + 6.6.1.7 ステップ 7: ユーザー・マッピングの作成 + 6.6.1.8 ステップ 8: 表および視点のニックネームの作成 + 6.6.1.9 ステップ 9: オプション: ODBC トレースの取得 + 6.6.2 Microsoft SQL Server コード・ページの検討 (Windows NT の場合のみ) o 6.7 Informix データ・ソースへのアクセス (新しい章) + 6.7.1 統合サーバーへの Informix データ・ソースの追加 + 6.7.1.1 ステップ 1: 環境変数の設定およびプロファイル・ レジストリーの更新 + 6.7.1.2 ステップ 2: Informix クライアント・ソフトウェア への DB2 のリンク + 6.7.1.3 ステップ 3: DB2 インスタンスの再生 + 6.7.1.4 ステップ 4: Informix sqlhosts ファイルの作成 + 6.7.1.5 ステップ 5: ラッパーの作成 + 6.7.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の 設定 + 6.7.1.7 ステップ 7: サーバーの作成 + 6.7.1.8 ステップ 8: ユーザー・マッピングの作成 + 6.7.1.9 ステップ 9: 表、視点、および Informix 同義語の ニックネームの作成 ------------------------------------------------------------------------ 管理 * 管理の手引き o 7.1 入手可能な更新 * 管理の手引き: 計画 o 8.1 第 8 章 物理データベース設計 + 8.1.1 表スペース設計上の考慮事項 + 8.1.1.1 データが RAID 上に配置されている場合の表スペー ス・パフォーマンスの最適化 o 8.2 付録 D. 各国語サポート (NLS) + 8.2.1 国別 / 地域別コードおよびコード・ページのサポート + 8.2.2 インポート / エクスポート / ロードに関する 考慮事項 -- コード・ページ 1394 および 5488 の制約 * 管理の手引き : パフォーマンス o 9.1 システム一時表スキーマ o 9.2 第 8 章 操作パフォーマンス + 9.2.1 ブロック・ベースのバッファー・プール + 9.2.1.1 ブロック・ベースのバッファー・プールの例 o 9.3 第 10 章 プロセッサーの追加による構成の拡大縮小 + 9.3.1 分割したデータベースにノードを追加する際の問題 o 9.4 DB2 レジストリーと環境変数 + 9.4.1 パフォーマンス変数への修正 + 9.4.2 各種レジストリー変数への修正および追加 + 9.4.3 汎用レジストリー変数の修正および追加 * 管理の手引き : インプリメンテーション o 10.1 第 8 章 データベースの回復 + 10.1.1 中断入出力の使用法 * サテライト管理 手引きおよび解説書 o 11.1 バージョン 7.2 DB2 パーソナル・エディションおよび DB2 ワーク グループ・エディションを サテライトとしてセットアップ + 11.1.1 前提条件 + 11.1.1.1 インストール上の考慮事項 + 11.1.2 同期化のためのバージョン 7.2 システムの構成 + 11.1.3 エンタープライズ・エディション・システムでのフィック スパック 2 以上の インストール + 11.1.3.1 DB2 制御サーバーとして使用するためにバージョン 6 DB2 エンタープライズ・エディションを アップグレード + 11.1.4 バージョン 6 コントロール・センター および サテライト 管理センター のアップグレード * コマンド解説書 o 12.1 入手可能な更新 o 12.2 db2updv7 - データベースをバージョン 7 現行修正レベルに更新 o 12.3 REBIND + Missing value o 12.4 db2inidb - ミラーリングされたデータベースの初期化 + 12.4.1 使用法情報 o 12.5 GET ROUTINE コマンドの追加オプション + GET ROUTINE * データ回復と高可用性の手引きと解説書 o 13.1 データ回復と高可用性の手引きと解説書がオンラインで使用可能 o 13.2 LOGRETAIN=CAPTURE の場合の新たなバックアップおよびリストア動 作 o 13.3 NEWLOGPATH2 は、DB2_NEWLOGPATH2 と呼ばれるようになりました o 13.4 DB2 データ・リンク・マネージャー (AIX または Solaris 版) の バックアップ方式の選択 o 13.5 Tivoli Storage Manager -- LAN フリー・データ転送 * データ移動ユーティリティー 手引きおよび解説書 o 14.1 エクスポート、インポート、およびロードの LOB ファイル・ハン ドルの変更 + 14.1.1 IXF 考慮事項 o 14.2 インポート、エクスポート、およびロード・ユーティリティーに対 するコード・ページ・サポート o 14.3 db2relocatedb (新規コマンド) + db2relocatedb - データベースの再配置 o 14.4 db2move -- 使用可能な新規オプション + db2move ツールを使用したデータの移動 o 14.5 第 2 章 インポート + 14.5.1 バッファー挿入を行うインポートを使用 o 14.6 第 3 章 ロード + 14.6.1 ロード操作後の保留状態 + 14.6.2 ロード制約事項と制限 + 14.6.3 totalfreespace ファイル・タイプ修飾子 o 14.7 第 4 章 オートローダー + 14.7.1 rexecd - 認証を YES に設定している場合はオートローダ ーの実行に必須 o 14.8 fork 中にオートローダーが停止する場合があります o 14.9 付録 C. エクスポート/インポート/ロード・ユーティリティー・フ ァイル形式 * DB2 レプリケーションの手引きおよび解説書 o 15.1 レプリケーションおよび非 IBM サーバー o 15.2 Windows 2000 上のレプリケーション o 15.3 SQL ファイルの保管時に知られているエラー o 15.4 DB2 保守 o 15.5 Web 上の Data Difference Utility o 15.6 第 3 章 データ・レプリケーション・シナリオ + 15.6.1 レプリケーションのシナリオ o 15.7 第 5 章 レプリケーションの計画 + 15.7.1 表および列名 + 15.7.2 DATALINK レプリケーション + 15.7.3 LOB の制約事項 + 15.7.4 レプリケーションの計画 o 15.8 第 6 章 レプリケーション環境のセットアップ + 15.8.1 任意の場所で更新 (Update-anywhere) の前提条件 + 15.8.2 レプリケーション環境のセットアップ o 15.9 第 8 章 問題判別 o 15.10 第 9 章 キャプチャー・プログラムおよびアプライ・プログラム (AS/400 版) o 15.11 第 10 章 キャプチャー・プログラムおよびアプライ・プログラム (OS/390 版) + 15.11.1 DB2 DataPropagator (OS/390 版) の前提条件 + 15.11.2 OS/390 での UNICODE および ASCII エンコード・スキー ム + 15.11.2.1 エンコード・スキームの選択 + 15.11.2.2 エンコード・スキームの設定 o 15.12 第 11 章 キャプチャー・プログラムおよびアプライ・プログラム (UNIX 版) + 15.12.1 UNIX および Windows でのキャプチャー・プログラムとア プライ・プログラムの環境変数の設定 o 15.13 第 14 章 表の構造 o 15.14 第 15 章 キャプチャー・プログラムとアプライ・プログラムのメ ッセージ o 15.15 付録 A キャプチャー・プログラムおよびアプライ・プログラムを アプリケーション内で開始する * システム・モニター 手引きおよび解説書 o 16.1 db2ConvMonStream * 問題判別の手引き o 17.1 ユーザーがログオンしていないときに DB2 を Windows 95、 Windows 98、 または Windows ME で開始 o 17.2 第 1 章 効果的なトラブルシューティングの手段 + 17.2.1 問題分析および環境データ収集用のツール + 17.2.1.1 収集データ出力 + 17.2.1.2 detailed_system_info.html の表示 + 17.2.1.3 DB2 サポート・ツールの構文を一時に 1 ページに 表示 o 17.3 第 2 章 DB2 ユニバーサル・データベース・サーバーの障害追及 o 17.4 第 8 章 DB2 データ・リンク・マネージャーのトラブルシューティ ング * 64 ビット・プラットフォームで DB2 ユニバーサル・データベースを使用する o 18.1 第 5 章 構成 + 18.1.1 LOCKLIST + 18.1.2 shmsys:shminfo_shmmax o 18.2 第 6 章 制約事項 * XML エクステンダー 管理およびプログラミング * MQSeries o 20.1 DB2 MQSeries 関数のインストールおよび構成 + 20.1.1 MQSeries のインストール + 20.1.2 MQSeries AMI のインストール + 20.1.3 DB2 MQSeries 関数を使用可能にする o 20.2 MQSeries メッセージ・スタイル o 20.3 メッセージ構造 o 20.4 MQSeries 関数の概説 + 20.4.1 制約事項 + 20.4.2 エラー・コード o 20.5 使用のシナリオ + 20.5.1 基本メッセージング + 20.5.2 メッセージの送信 + 20.5.3 メッセージの取り出し + 20.5.4 アプリケーション間接続 + 20.5.4.1 要求/応答通信 + 20.5.4.2 発行/サブスクリプション o 20.6 enable_MQFunctions + enable_MQFunctions o 20.7 disable_MQFunctions + disable_MQFunctions ------------------------------------------------------------------------ 管理ツール * ツールを実行前の追加のセットアップ o 21.1 Linux 上の浮動小数点スタックを使用不可にする o 21.2 日本語版 Linux 環境で必要な特定の Java レベル * コントロール・センター o 22.1 DB2 サーバー (VSE および VM 版) の管理化 o 22.2 コントロール・センターの Java 1.2 サポート o 22.3 Windows オペレーティング・システムでオンライン・ヘルプを使用 時の 「無効なショートカット」エラー o 22.4 キーボード・ショートカットの不作動 o 22.5 OS/2 版 Java コントロール・センター o 22.6 Windows オペレーティング・システム上のジャーナルで完了したジ ョブを表示する際の 「ファイル・アクセスが拒否されました」エラー o 22.7 複数サイト更新テスト接続 o 22.8 DB2 (OS/390 版) のコントロール・センター o 22.9 DB2 (OS/390 版) コントロール・センターの修正 o 22.10 「地理情報層の作成」ダイアログへの変更点 o 22.11 DB2 コントロール・センターの障害追及情報 o 22.12 UNIX ベース・システム上でのコントロール・センターの障害追及 o 22.13 OS/2 上での infopop の問題 o 22.14 jdk11_path 構成パラメーターのヘルプ o 22.15 スクリプト・センターまたはジャーナルを使用中の Solaris シス テム・エラー (SQL10012N) o 22.16 DPREPL.DFT ファイルのヘルプ o 22.17 複数のコントロール・センター・アプレットの立ち上げ o 22.18 アプレットとして実行中のコントロール・センターのオンライ ン・ヘルプ o 22.19 コントロール・センターをアプレット・モードで実行 (Windows 95) o 22.20 大きな照会結果の操作 * コマンド・センター o 23.1 コマンド・センターの対話式ページでステートメント終止符を認識 * インフォメーション・センター o 24.1 Windows オペレーティング・システムでの「無効なショートカッ ト」エラー o 24.2 Netscape がすでにオープンしているときに、Netscape Navigator の外部 Web リンクをオープンする (UNIX ベース・システム) o 24.3 インフォメーション・センター開始時の問題 * ウィザード o 25.1 データベース作成ウィザードの拡張サイズの設定 o 25.2 MQSeries 補助ウィザード o 25.3 OLE DB 補助ウィザード o 25.4 ストアード・プロシージャー・ビルダーを使用した OS/390 用の Java ストアード・プロシージャーの構築 ------------------------------------------------------------------------ ビジネス・インテリジェンス * ビジネス・インテリジェンス・チュートリアル o 26.1 改訂されたビジネス・インテリジェンス・チュートリアル * DB2 ユニバーサル・データベース クイック・ツアー * データウェアハウスセンター 管理の手引き o 28.1 入手可能な更新 o 28.2 ウェアハウス・サーバーの機能強化 o 28.3 OS/390 エージェントを使用して Trillium バッチ・システム JCL を実行 o 28.4 データウェアハウスセンターの 2 つの新規サンプル・プログラム o 28.5 更新された DB2 ウェアハウス・マネージャーによる ETI.Extract (R) 移行プログラム の管理 o 28.6 共通ウェアハウス・メタデータ交換 (CWMI) を使用したインポート およびエクスポート + 28.6.1 入門 + 28.6.2 メタデータのインポート + 28.6.3 インポート・ユーティリティー実行後のメタデータの更新 + 28.6.4 メタデータのエクスポート o 28.7 タグ言語メタデータ・インポート / エクスポート・ユーティリテ ィー + 28.7.1 キー定義 + 28.7.2 ステップおよび処理のスケジュール o 28.8 SAP ステップ情報 + 28.8.1 SAP ステップの出力パラメーターを指定した場合の遅延 + 28.8.2 入力パラメーター値は SAP ステップ間で共用されています + 28.8.3 SAP ステップ実行時のアクセス違反エラー o 28.9 SAP コネクター情報 + 28.9.1 SAP コネクター・インストール上の制約事項 + 28.9.2 GetDetail BAPI のパフォーマンス * DB2 OLAP スターター・キット o 29.1 OLAP Server Web サイト o 29.2 サポートされるオペレーティング・システム・サービス・レベル o 29.3 UNIX での DB2 OLAP スターター・キットを完了する o 29.4 Solaris 操作環境用の追加構成 o 29.5 すべてのオペレーティング・システム用の追加構成 o 29.6 ODBC を OLAP スターター・キット用に構成 + 29.6.1 UNIX システム上でのデータ・ソースの構成 + 29.6.1.1 環境変数の構成 + 29.6.1.2 odbc.ini ファイルの編集 + 29.6.1.3 データ・ソースの odbc.ini ファイルへの追加 + 29.6.1.4 DB2 の ODBC 設定の例 + 29.6.1.5 Oracle の ODBC 設定の例 + 29.6.2 UNIX システムでの OLAP メタデータ・カタログの構成 + 29.6.3 Windows システムでのデータ・ソースの構成 + 29.6.4 Windows システムでの OLAP メタデータ・カタログの構成 + 29.6.5 データ・ソースを構成したら o 29.7 OLAP スターター・キット・デスクトップからのログイン + 29.7.1 スターター・キットのログインの例 o 29.8 OLAP スターター・キットのサンプル・データベースを手動で 作成 および構成する o 29.9 アプリケーションを OLAP スターター・キット・バージョン 7.2 に移行 o 29.10 既知の問題および制限事項 o 29.11 OLAP スプレッドシート・アドイン EQD ファイルの欠落 * 情報カタログ・マネージャー管理の手引き o 30.1 情報カタログ・マネージャー初期設定ユーティリティー + 30.1.1 + 30.1.2 ライセンス交付の問題 + 30.1.3 インストールの問題 o 30.2 情報カタログ・マネージャーの機能強化 o 30.3 情報カタログ・マネージャー と Sybase の Windows 環境での非互 換性 o 30.4 DB2 バージョン 7 情報カタログ・マネージャーによる DB2 バージ ョン 5 情報カタログへのアクセス o 30.5 情報カタログのセットアップ o 30.6 別の製品とのメタデータの交換 o 30.7 flgnxoln コマンドでのメタデータの交換 o 30.8 MDISDGC コマンドでのメタデータの交換 o 30.9 プログラムの呼び出し * 情報カタログ・マネージャー・プログラミングの手引きおよび解説書 o 31.1 情報カタログ・マネージャー理由コード * 情報カタログ・マネージャー 使用者の手引き * 情報カタログ・マネージャー: オンライン・メッセージ o 33.1 FLG メッセージへの修正 + 33.1.1 メッセージ FLG0260E + 33.1.2 メッセージ FLG0051E + 33.1.3 メッセージ FLG0003E + 33.1.4 メッセージ FLG0372E + 33.1.5 メッセージ FLG0615E * 情報カタログ・マネージャー: オンライン・ヘルプ o 34.1 Web 用情報カタログ・マネージャー * DB2 ウェアハウス・マネージャー インストールの手引き o 35.1 入手できる「DB2 ウェアハウス・マネージャー・インストールの手 引き」の更新 o 35.2 ウェアハウス・トランスフォーマーのソフトウェア要件 * 照会パトローラー管理の手引き o 36.1 DB2 照会パトローラー・クライアントの分離コンポーネント o 36.2 ノード状況の変更 o 36.3 dqpmigrate を使用した DB2 照会パトローラーのバージョン 6 か らの移行 o 36.4 照会管理の使用可能化 o 36.5 制御表の表スペースのロケーション o 36.6 dqpstart コマンドの新しいパラメーター o 36.7 iwm_cmd コマンドの新しいパラメーター o 36.8 新しいレジストリー変数: DQP_RECOVERY_INTERVAL o 36.9 Query Administrator の開始 o 36.10 ユーザー管理 o 36.11 ジョブ・キューの作成 o 36.12 コマンド行インターフェースの使用 o 36.13 クエリー・イネーブラー注意事項 o 36.14 ブランク列ページを返すことができる DB2 クエリー・パトローラ ー・トラッカー o 36.15 照会パトローラーおよびレプリケーション・ツール o 36.16 クエリー・パトローラーのパフォーマンス改善 o 36.17 バージョン 6 で作成された照会パトローラー・ユーザー用の EXECUTE 特権の消失 o 36.18 照会パトローラーの制約事項 o 36.19 付録 B. DB2 照会パトローラー・クライアントのトラブルシュー ティング ------------------------------------------------------------------------ アプリケーション開発 * 管理 API 解説書 o 37.1 db2ArchiveLog (新規 API) + db2ArchiveLog o 37.2 db2ConvMonStream o 37.3 db2DatabasePing (新規 API) + db2DatabasePing - データベースの Ping o 37.4 db2HistData o 37.5 db2HistoryOpenScan o 37.6 db2XaGetInfo (新規 API) + db2XaGetInfo - リソース・マネージャー用情報の取得 o 37.7 db2XaListIndTrans (sqlxphqr を 入れ替える新規 API) + db2XaListIndTrans - 未確定トランザクションをリストする o 37.8 db2GetSnapshot - スナップショットの取得 o 37.9 ログ・レコードの喪失 o 37.10 sqlaintp - エラー・メッセージの取得 o 37.11 sqlbctcq - 表スペース・コンテナー照会のクローズ o 37.12 sqleseti - クライアント情報の設定 o 37.13 sqlubkp - データベースのバックアップ o 37.14 sqlureot - 表の再編成 o 37.15 sqlurestore - データベースのリストア o 37.16 AIX 拡張共有メモリー・サポートに関するドキュメンテーショ ン・エラー (EXTSHM) o 37.17 SQLFUPD + 37.17.1 locklist o 37.18 SQLEDBDESC * DB2 アプリケーション構築の手引き o 38.1 入手可能な更新 * アプリケーション開発の手引き o 39.1 入手可能な更新 o 39.2 IBM OLE DB Provider (DB2 UDB 版) * CLI の手引きおよび解説書 o 40.1 ランタイム・クライアントを使用するデータベース・ユーティリテ ィーのバインド o 40.2 CLI アプリケーションで静的 SQL の使用 o 40.3 JDBC/ODBC/CLI 静的プロファイル の制限 o 40.4 ADT トランスフォーム o 40.5 第 1 章 CLI の概要 + 40.5.1 DB2 CLI と組み込み SQL の相違 o 40.6 第 3 章 拡張フィーチャーの使用法 + 40.6.1 マルチスレッド・アプリケーションの書き込み + 40.6.2 DB2 CLI ユニコード・アプリケーションの作成 + 40.6.2.1 ユニコード関数 + 40.6.2.2 新しいデータ・タイプと有効な変換 + 40.6.2.3 古いキーワード/パッチ値 + 40.6.2.4 ユニコード・データベースのリテラル + 40.6.2.5 新しい CLI 構成キーワード + 40.6.3 トランザクション・モニターとしての Microsoft Transaction Server (MTS) + 40.6.4 スクロール可能カーソル + 40.6.4.1 サーバー側のスクロール可能カーソル・サポート (OS/390) + 40.6.5 複合 SQL の使用 + 40.6.6 ストアード・プロシージャーの使用 + 40.6.6.1 CLI でのストアード・プロシージャーの記述 + 40.6.6.2 CLI ストアード・プロシージャーおよび自動バイン ド o 40.7 第 4 章 CLI/ODBC の構成とサンプル・アプリケーションの実行 + 40.7.1 構成キーワード + 40.7.1.1 CURRENTFUNCTIONPATH + 40.7.1.2 SKIPTRACE o 40.8 第 5 章 DB2 CLI 関数 + 40.8.1 SQLBindFileToParam - LOB ファイル参照を LOB パラメー ターにバインド + 40.8.2 SQLColAttribute -- 列属性を戻す + 40.8.3 SQLGetInfo - 一般情報の取得 + 40.8.4 SQLGetLength - ストリング値の長さの検索 + 40.8.5 SQLNextResult - 次の結果セットを別のステートメント・ ハンドルに関連付ける + 40.8.5.1 目的 + 40.8.5.2 構文 + 40.8.5.3 関数の引き数 + 40.8.5.4 使用法 + 40.8.5.5 戻りコード + 40.8.5.6 診断 + 40.8.5.7 制約事項 + 40.8.5.8 参照 + 40.8.6 SQLSetEnvAttr - 環境属性の設定 + 40.8.7 SQLSetStmtAttr -- ステートメント関連のオプションの設 定 o 40.9 付録 C. DB2 CLI および ODBC + 40.9.1 ODBC ユニコード・アプリケーション + 40.9.1.1 ODBC ユニコードと非ユニコード・アプリケーショ ン o 40.10 付録 D 拡張スカラー関数 + 40.10.1 日時関数 o 40.11 付録 K DB2 CLI/ODBC/JDBC トレース機能の使用 * メッセージ解説書 o 41.1 入手可能な更新 o 41.2 メッセージの更新 + 41.2.1 SQL2554N 新規理由コード 12 + 41.2.2 追加の新規メッセージおよび SQLSTATE * SQL 解説書 o 42.1 入手可能な SQL 解説書 の更新 o 42.2 新しい関数とプロシージャーの使用可能化 o 42.3 MQSeries 情報 + 42.3.1 スカラー関数 + 42.3.1.1 MQPUBLISH + 42.3.1.2 MQREADCLOB + 42.3.1.3 MQRECEIVECLOB + 42.3.1.4 MQSEND + 42.3.2 表関数 + 42.3.2.1 MQREADALLCLOB + 42.3.2.2 MQRECEIVEALLCLOB + 42.3.3 MQSeries 関数でサポートされるようになった CLOB データ o 42.4 データ・タイプ情報 + 42.4.1 データ・タイプのプロモーション + 42.4.2 データ・タイプ間のキャスト + 42.4.3 割り当てと比較 + 42.4.3.1 ストリング割り当て + 42.4.3.2 ストリング比較 + 42.4.4 結果データ・タイプの規則 + 42.4.4.1 ユニコード・データベースの文字および漢字ストリ ング + 42.4.5 ストリング変換の規則 + 42.4.6 式 + 42.4.6.1 連結演算子 + 42.4.7 述部 o 42.5 ユニコード情報 + 42.5.1 スカラー関数およびユニコード o 42.6 ユニコード・データベースのより大きな索引キー + 42.6.1 ALTER TABLE + 42.6.2 CREATE INDEX + 42.6.3 CREATE TABLE o 42.7 GET DIAGNOSTICS ステートメントの追加オプション + GET DIAGNOSTICS ステートメント o 42.8 副選択内の ORDER BY + 42.8.1 全選択 + 42.8.2 副選択 + 42.8.3 order-by-clause + 42.8.4 select-statement + SELECT INTO ステートメント + 42.8.5 OLAP 関数 (window-order-clause) o 42.9 GET_ROUTINE_SAR プロシージャー用の新規入力引き数 o 42.10 SET INTEGRITY ステートメントに必要な許可 * ユニコード更新 o 43.1 入門 + 43.1.1 DB2 ユニコード・データベースおよびアプリケーション + 43.1.2 資料の更新 ------------------------------------------------------------------------ ホスト・システムへの接続 * DB2 コネクト 使用者の手引き o 44.1 増加する DB2 コネクト・データ転送速度 + 44.1.1 エクストラ照会ブロック + 44.1.2 RFC-1323 ウィンドウ・スケーリング * コネクティビティー補足 o 45.1 VM 環境でのアプリケーション・サーバーのセットアップ o 45.2 CLI/ODBC/JDBC 構成 PATCH1 および PATCH2 の設定 ------------------------------------------------------------------------ 追加の情報 * 追加の情報 o 46.1 DB2 Everywhere は DB2 Everyplace に変更されました o 46.2 DB2 UDB バージョン 7 のユーザー補助機能 + 46.2.1 キーボードによる入力および操作 + 46.2.1.1 キーボード入力 + 46.2.1.2 キーボード・フォーカス + 46.2.2 ディスプレイを見やすくする機能 + 46.2.2.1 高コントラスト・モード + 46.2.2.2 フォント設定 + 46.2.2.3 色の非依存 + 46.2.3 選べる警告キュー + 46.2.4 補助技術の互換性 + 46.2.5 利用しやすい資料 o 46.3 マウスが必要 o 46.4 「バインド・ファイルが見つかりません」のエラーで DB2 ランタ イム・クライアント結果からバインドを試みる o 46.5 サーチ・ディスカバリー o 46.6 HP-UX 11 のメモリー・ウィンドウ o 46.7 DB2 DFS クライアント・イネーブラーのアンインストール o 46.8 Windows NT 上でのクライアントの認証 o 46.9 統合システムの制約 o 46.10 MPP 区分表を用いた統合制限 o 46.11 DataJoiner 制約 o 46.12 Hebrew Information Catalog Manager for Windows NT o 46.13 DB2 の SNA SPM が Windows ブート後に失敗します o 46.14 Windows NT および Windows 2000 での DB2 に対するサービス・ アカウント要件 o 46.15 データウェアハウスセンター (DWC) で使用される すべてのユー ザー定義プログラムをコミットする o 46.16 Windows NT 上でのクライアント・サイド・キャッシング o 46.17 ライフ・サイエンス データ・コネクト + 46.17.1 新規ラッパー + 46.17.2 特記事項- o 46.18 SQL Assist の機能強化 o 46.19 バックアップおよびリストア・コマンドのヘルプ o 46.20 「ウェアハウス・マネージャー」は「DB2 ウェアハウス・マネー ジャー」 ------------------------------------------------------------------------ 付録 * 付録 A. 特記事項 o A.1 商標 ------------------------------------------------------------------------ まえがき DB2 ユニバーサル・データベース バージョン 7 フィックスパック 5 へようこそ! 注:このリリース情報はモノスペースのフォントでご覧ください。 DB2 ユニバーサル・データベースおよび DB2 コネクト・サポート・サイトは定期的 に 更新されます。最新情報については、 http://www.ibm.com/software/data/db2/udb/winos2unix/support を調べてくださ い。 この文書には、DB2 のマニュアルが印刷された時には使用できなかった 次の製品に 関する情報が含まれています。 IBM DB2 ユニバーサル・データベース パーソナル・エディション バージョン 7.2 IBM DB2 ユニバーサル・データベース ワークグループ・エディション バージョン 7.2 IBM DB2 ユニバーサル・データベース エンタープライズ・エディション バージョン 7.2 IBM DB2 データ・リンク・マネージャー バージョン 7.2 IBM DB2 ユニバーサル・データベース エンタープライズ拡張エディション バージョン 7.2 IBM DB2 クエリー・パトローラー バージョン 7.2 IBM DB2 パーソナル開発者版 バージョン 7.2 IBM DB2 ユニバーサル開発者版 バージョン 7.2 IBM DB2 データウェアハウス・マネージャー バージョン 7.2 IBM DB2 リレーショナル・コネクト バージョン 7.2 別のリリース情報は READCON.TXT としてインストールされ、 次の製品に対して提 供されます。 IBM DB2 コネクト パーソナル・エディション バージョン 7.2 IBM DB2 コネクト エンタープライズ・エディション バージョン 7.2 DB2 ライフ・サイエンス データ・コネクト製品の資料 は、IBM ソフトウェア・サ イト http://www.ibm.com/software/data/db2/lifesciencesdataconnect/library.html から ダウンロードできます。この製品に関する情報 は、 http://www.ibm.com/software/data/db2/lifesciencesdataconnect に てオンライ ンでご利用になれます。 以下のブックはフィックスパック 4 用に更新済みで、最新 の PDF が http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンライン でダウンロードできるようになって います。 これらの資料には、更新済みの解説 書への追加情報が記載されています。 すべての更新済み資料は CD でも入手可能で す。 この CD は、DB2 サービス経由で PTF 番号 U478862 を使用してご注文いただ けます。 DB2 サービスへの連絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 管理の手引き DB2 アプリケーション構築の手引き アプリケーション開発の手引き コマンド解説書 データ回復と高可用性の手引きと解説書 データウェアハウスセンター 管理の手引き メッセージ解説書 SQL 解説書 DB2 ウェアハウス・マネージャー インストールの手引き 新機能には、DB2 バージョン 7.2 の主要な機能強化の概説が含まれています。新機 能の バージョン 7.2 をお持ちでない場合 は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support で ご覧になれま す。また、ダウンロードも可能です。 製品の DB2 ファミリーの最新情報については、 無料購読の "DB2 magazine" を申 し込んでください。 マガジンのオンライン・エディションは、 http://www.db2mag.com から入手できます。 このサイトに、定期購読の申し込みに 関する説明があります。 注:リリース情報では、Windows NT の参照に言及するときは Windows 2000 も 含 まれます。4.4, Windows ME、Windows XP および Windows 2000 Datacenter エディション・プラットフォームのサポート にリストされている製品のコン テキストでは、特に断り書きがなければ、Windows XP についての参照も含ま れます。 注:ページの左方にあるリビジョン・バー (|) は、その行がリリース情報の 初版 発行以降に追加または変更されたものであることを示します。 ------------------------------------------------------------------------ 最初にお読みください ------------------------------------------------------------------------ フィックスパック 5 の特長 以下の新規情報が、このフィックスパックで追加されました。 ここではすべてを網 羅せずに、資料の主な変更点に焦点を当てます。 作業環境に関連するリリース情報 の該当セクションを参照し、 あらゆる関連アップデートを見逃さないよう注意して ください。 * ツールを実行前の追加のセットアップ * 2.3, Linux での DBCS の制限 * 2.10, WebSphere 3.5.5 を使用時のセグメント化違反 * 4.19, Solaris カーネル構成パラメーター (推奨値) * 5.15, データ・リンク・ファイル・システム・フィルター (DLFF) インストー ルのロギングの最小化 * 5.26, Tivoli Space Manager とデータ・リンクとの統合 * 9.4, DB2 レジストリーと環境変数 * 10.1.1, 中断入出力の使用法 * 12.4, db2inidb - ミラーリングされたデータベースの初期化 * 12.5, GET ROUTINE コマンドの追加オプション * 13.5, Tivoli Storage Manager -- LAN フリー・データ転送 * 14.4, db2move -- 使用可能な新規オプション * 23.1, コマンド・センターの対話式ページでステートメント終止符を認識 * 28.2, ウェアハウス・サーバーの機能強化 * 28.3, OS/390 エージェントを使用して Trillium バッチ・システム JCL を実 行 * 28.4, データウェアハウスセンターの 2 つの新規サンプル・プログラム * 36.2, ノード状況の変更 * 41.2, メッセージの更新 * 42.7, GET DIAGNOSTICS ステートメントの追加オプション * 42.8, 副選択内の ORDER BY * 42.9, GET_ROUTINE_SAR プロシージャー用の新規入力引き数 ------------------------------------------------------------------------ 製品情報 ------------------------------------------------------------------------ 2.1 DB2 (Solaris 版) バージョン 7 でサポートしている CPU UltraSparc より以前のバージョンの CPU はサポートしていません。 ------------------------------------------------------------------------ 2.2 日本語 Linux 版 および中国語 (簡体字) Linux 版 の DB2 の追加ロケール設 定 日本語版、または中国語 (簡体字) 版の Linux システムでコントロール・センター などの Java GUI ツールを使用したい場合は、追加ロケールの設定が必須となりま す。 日本語や中国語の文字は、この設定がないと正しく表示することができませ ん。 コントロール・センターに関するすべての呼び出しを行う前に、ユーザー・プ ロファイルに以下の設定を組み込むか、 コマンド行から実行してください。 日本語システムの場合: export LC_ALL=ja_JP 中国語 (簡体字) システムの場合: export LC_ALL=zh_CN ------------------------------------------------------------------------ 2.3 Linux での DBCS の制限 glibc 1.95、2.1、または 2.2 レベルの日本語、韓国語、中国語 (簡体字)、中国語 (繁体字) の Linux プラットフォームでは、DB2 UDB で使用されるいくつかの文字 を表示できません。これらのプラットフォームのいずれかを使用している場合は、 IBM コード・ページに特有の文字、それらの文字に続いて入力された文字を DB2 コ マンド行で表示することはできません。 ------------------------------------------------------------------------ 2.4 Microsoft Internet Explorer 上でのコントロール・センターの問題 Internet Explorer (IE) セキュリティー・オプション設定によって起きる問題があ ります。 コントロール・センターは無符号の jar を使用するため、システム情報 へのアクセス は、セキュリティー・マネージャーによって使用不可となります。 この問題をなくすには、IE のセキュリティー・オプションを次のように再構成して ください。 1. 「表示」メニュー (IE4) または 「ツール」メニュー (IE5) で 「インターネ ット・オプション」を選択する。 2. 「セキュリティー」ページで「信頼済みサイト・ゾーン」を 選択する。 3. サイトの追加...をクリックする。 4. コントロール・センターの Web サーバーを信頼済みサイト・リストに追加す る。 コントロール・センター Web サーバーが同じ定義域にある場合、 Web サーバー名のみ (定義域名の指定をしない) を追加することが有効な可能性が あります。 例: http://ccWebServer.ccWebServerDomain http://ccWebServer 注:この URL を入力する際には、接頭部 https:// を 使用するか、または オプション「このゾーンのサイトにはすべてサーバーの 確認 (https:) を必要とする」を選択解除してこのサイトを追加できるようにする必要 があります。 5. 「OK」をクリックする。 6. 「設定...」(IE4) また は「レベルのカスタマイズ...」(IE5) をクリックす る。 7. 「Java --> Java の許可」へスクロールダウンし、 「カスタム」を選択す る。 8. 「Java カスタム設定...」をクリックする。 9. 「権限の編集」ページを選択する。 10. 「未署名のコンテンツ --> 未署名のコンテンツの実行 --> 追加の未署名の権 限 --> システム情報」までスクロールダウンし、 「有効にする」を選択す る。 11. 開いているウィンドウのそれぞれで「OK」をクリックする。 ------------------------------------------------------------------------ 2.5 コントロール・センター機能の喪失 フィックスパック 2 を DB2 サーバーに適用しても、下位レベルの コントロール・ センター・クライアントには問題は発生しません。ただし、DB2 バージョン 7.2 の 場合、下位レベルのコントロール・センター・クライアントはほぼすべての機能を 失います。 この場合の下位レベルとは、フィックスパック 6 以前のバージョン 6 クライアントと、 フィックスパック 2 以前のバージョン 7 クライアントを指しま す。バージョン 5 のクライアントには、影響はありません。 指定の修正により、影響を受ける クライアントがアップグレードされます。バージ ョン 6 クライアントはフィックスパック 6 またはそれ以降、 バージョン 7 クラ イアントはフィックスパック 2 またはそれ以降にアップグレードする必要がありま す。 ------------------------------------------------------------------------ 2.6 DB2 UDB への Netscape CD 添付の打ち切り Netscape CD は現在、DB2 UDB に添付されていません。Netscape 製品は http://www.netscape.com で 入手できます。 ------------------------------------------------------------------------ 2.7 XML Readme ファイルでのエラー DB2 XML エクステンダー 7.1 の README.TXT ファイルの「考慮事項」には、以下の ように 記述されています。 3. DB2 UDB のデフォルトのバージョンは DB2 UDB バージョン 7.1 です。DB2 UDB バージョン 6.1 を AIX および Solaris で使いたい場合には、DB2 UDB V6.1 インスタンスおよび DB2 UDB V6.1 ライブラリーで 実行していることを 確認してください。 これは誤りです。 DB2 XML エクステンダーは DB2 バージョン 7.1 および 7.2 で のみ サポートされます。 ファイル readme.aix、readme.nt、および readme.sun には、次の製品のソフトウ ェア要件が リストされています。 * FP1_U465423 またはそれ以降を適用した DB2 UDB 6.1 (AIX) * フィックスパック 3 をインストールした DB2 ユニバーサル・データベース・ バージョン 6.1 またはそれ以降 (NT) * フィックスパック FP1_U465424 またはそれ以降を適用した DB2 UDB バージョ ン 6.1 (Sun) これは誤りです。 DB2 XML エクステンダーは DB2 バージョン 7.1 または 7.2 を 必要とします。 ------------------------------------------------------------------------ 2.8 DB2 バージョン 7.2 での新規のビジネス・インテリジェンス機能強化 バージョン 7.2 の新機能およびその他の一部の文書で、バージョン 7.2 で新たに 追加された 新規のビジネス・インテリジェンス機能強化について紹介されていま す。 これらの機能強化は後日に入手できます。 ------------------------------------------------------------------------ 2.9 フィックスパック 2A 以降が原因で IBM DB2 OLAP Server に起こる問題 UNIX で IBM DB2 OLAP Server を使用する場合は、DB2 ユニバーサル・データベー ス V7 の フィックスパック 2A をインストールした後で DB2 OLAP Server に問題 が起こることがあります。 フィックスパック 2A およびそれ以降のフィックスパッ クでは、ユニコードをサポートする 新しい ODBC ドライバーがインストールされま すが、これらの新しいドライバーは DB2 OLAP Server では サポートされません。 DB2 OLAP Server での回避策としては、使用する ODBC ファイルを切り替えて、 非 ユニコード ODBC ドライバーがポイントされるようにします。 非ユニコード・ドライバーが名前変更されて、名前に「_36」が付けられるようにな りました。 たとえば Solaris の場合は、 ドライバー libdb2.so は libdb2_36.so に 名前変更されました。ODBC ドライバーの変更についての詳細は、 「OLAP セッ トアップおよび使用者の手引き 」の第 4 章「AIX、Solaris 操作環境、および HP-UX でのインストール」 の「SQL インターフェース用の ODBC のロードおよび構 成」を参照してください。 ------------------------------------------------------------------------ 2.10 WebSphere 3.5.5 を使用時のセグメント化違反 Linux390 で DB2 V7.2 フィックスパック 4 またはそれ以降と一緒に WebSphere 3.5.5 ユーザー・プロファイル・サンプルを実行中に、「SIGSEGV 11 (*) セグメン ト化違反」を受け取る場合があります。この問題は JDK の障害に関連しており、 JDK 1.2.2 および JDK 1.3 の両方で起きます。 さらに問題が他の JDBC アプリケーションに影響する可能性があります。 11 月の JDK 1.2.2 のサービス・リリースで、この問題を修正しています。1 月の サービス・リリースにおいて JDK 1.3 で修正されます。 この問題を回避するには、次のコマンドで JIT をオフにします。 export JAVA_COMPILER=NONE ------------------------------------------------------------------------ オンライン資料 (HTML、PDF、および Search) の注釈 ------------------------------------------------------------------------ 3.1 Windows 2000 オペレーティング・システムでサポートされている Web ブラウ ザー Windows 2000 版 Microsoft Internet Explorer のご使用をお勧めします。 Netscape をご使用になる場合は、以下の点についてご了承ください。 * Windows 2000 で Netscape を使用し、DB2 オンライン情報で検索を実行する と 完了までに長い時間がかかります。Netscape は使用可能な CPU リソース をすべて使用し、 無期限に実行するように見えます。検索結果が最終的に戻 るまでの間、 検索の実行依頼を行ってから、他のウィンドウをクリックし フ ォーカスを変更することをお勧めします。相応な検索時間が経過すると 検索 結果が戻ってきます。 * Netscape ブラウザー・ウィンドウでヘルプを呼んだ場合は 正しく表示されま すが、ブラウザー・ウィンドウが開いている場所から離れ、コントロール・セ ンターの 別の場所から後でヘルプを呼び出しても、ブラウザーには変化が起 こらない場合があります。 ブラウザー・ウィンドウを閉じて、再度ヘルプを 呼ぶと、正しいヘルプが表示されます。 この問題は 3.4, Netscape を立ち上 げようとした場合のエラー・メッセージ で、次のステップを実行すると解決 できる場合があります。 コントロール・センターでヘルプを呼ぶ前に、ブラ ウザー・ウィンドウを閉じると この問題をうまく避けることができる場合も あります。 * コントロール・センターでヘルプを呼ぶ場合、もしくはインフォメーション・ センターからトピックを 呼ぶ場合、エラー・メッセージが表示されることが あります。 これを解決するには 3.4, Netscape を立ち上げようとした場合の エラー・メッセージ で、次のステップを実行します。 ------------------------------------------------------------------------ 3.2 Solaris 版 DB2 オンライン情報の検索 Solaris 上で DB2 オンライン情報を検索する際に問題が発生した場合は、お使いの システムの カーネル・パラメーター /etc/system を確認してください。ここには DB2 の検索システム、NetQuestion が必要とするカーネル・パラメーターの最小値 が記述されています。 semsys:seminfo_semmni 256 semsys:seminfo_semmap 258 semsys:seminfo_semmns 512 semsys:seminfo_semmnu 512 semsys:seminfo_semmsl 50 shmsys:shminfo_shmmax 6291456 shmsys:shminfo_shmseg 16 shmsys:shminfo_shmmni 300 カーネル・パラメーターを設定するには、/etc/system の終わりに以下の 1 行を追 加します。 set = value 新しく加えた値、もしくは変更した値を有効にするにはシステムを再起動しなくて はなりません。 ------------------------------------------------------------------------ 3.3 OS/2 上で TCP/IP を使用するよう NetQuestion を切り替える OS/2 上で TCP/IP を使用するよう NetQuestion を切り替える説明が完全ではあり ません。 これらの説明にある *.cfg ファイルの場所は、 NetQuestion インストー ル・ディレクトリーのデータ・サブディレクトリーです。 以下のいずれかのコマン ドを使用して、NetQuestion インストール・ディレクトリーを 判別することができ ます。 echo %IMNINSTSRV% //for SBCS installations echo %IMQINSTSRV% //for DBCS installations ------------------------------------------------------------------------ 3.4 Netscape を立ち上げようとした場合のエラー・メッセージ Netscape を立ち上げようとした際、以下のようなエラー・メッセージが表示された 場合。 Cannot find file (or one of its components). パスとファイル名が正しいか、必要なライブラリーがすべて有効になっているか 確認してください。 「D:\Program Files\SQLLIB\CC\..\doc\html\db2help\XXXXX.htm」 を開くことが できませんでした。 Windows NT、95、もしくは 98 上でこの問題を解決するには、 次のステップを実行 してください。 1. 「スタート」メニューから、「プログラム」-->「Windows エクスプローラ」 を選びます。Windows エクスプローラが開きます。 2. Windows エクスプローラから、「表示」-->「オプション」を選びます。「オ プション」ウィンドウが開きます。 3. 「ファイル・タイプ」タブをクリックします。ファイル・タイプのページが開 きます。 4. 「登録されているファイル・タイプ」フィールドの Netscape Hypertext Document を反転表示させ、「編集」をクリックします。 「ファイル・タイプ の編集」ウィンドウが開きます。 5. 「アクション」フィールドで "Open" を反転表示させます。 6. 「編集」ボタンをクリックします。「アクションの編集」ウィンドウが開きま す。 7. 「DDE を使う」チェック・ボックスのチェックをはずします。 8. 「アクションを実行するアプリケーション」フィールドで、 "%1" が、ストリ ング (引用符、始めの引用符の前のブランク・スペースを含む) の 最後にな っていることを確認してください。 Windows 2000 でこのメッセージが出た場合は、次のステップを実行してください。 1. 「スタート」メニューから、 「Windows エクスプローラ」を選択します。 Windows エクスプローラが開きます。 2. Windows エクスプローラから「ツール --> フォルダ・オプション」を選択し ます。 「フォルダ・オプション」ノートブックが開きます。 3. 「ファイル・タイプ」タブをクリックします。 4. 「ファイル・タイプ」ページの「登録されているファイル・タイプ」フィール ドで、 HTM Netscape Hypertext Document を反転表示させ、 「詳細設定」を クリックします。 「ファイル・タイプの編集」ウィンドウが開きます。 5. 「アクション」フィールドで "open" をクリックします。 6. 「編集」ボタンをクリックします。「アクションの編集」ウィンドウが開きま す。 7. 「DDE を使う」チェック・ボックスのチェックをはずします。 8. 「アクションを実行するアプリケーション」フィールドで、 "%1" が、ストリ ング (引用符、始めの引用符の前のブランク・スペースを含む) の 最後にな っていることを確認してください。 9. 「OK」をクリックします。 10. HTML Netscape Hypertext Document および SHTML Netscape Hypertext Document ファイル・タイプで 4 から 8 までのステップを繰り返します。 ------------------------------------------------------------------------ 3.5 UNIX ベース・システム上での Adobe Acrobat Reader の構成要件 UNIX ベースのプラットフォーム上では、Acrobat Reader は英語版のみ提供されて います。 そのため英語以外の言語ロケール PDF ファイルを開こうとすると、 エラ ーが発生します。 これらのエラーは PDF ファイルに関するフォントのアクセスか 抽出の問題であると示していますが、 実際は、UNIX の英語以外の言語ロケール上 で、英語版の Acrobat Reader が正しく機能しない という現象によるものです。 そのような PDF ファイルを表示するためには、英語版の Acrobat Reader を立ち上 げる前に 以下のステップの 1 つを実行し、英語ロケールへ切り換えます。 * Acrobat Reader の起動スクリプトを編集し、スクリプト内の #!/bin/sh ステ ートメントの後ろに 以下の行を追加します。 LANG=C;export LANG Netscape Navigator やアプリケーションのヘルプ・メニューなどといった 他 のアプリケーションから Acrobat Reader が起動された場合、 この方法によ り正しい動作を保証しています。 * コマンド・プロンプトで LANG=C と入力し、Acrobat Reader の アプリケーシ ョン環境を英語に設定します。 より詳しい情報は、Adobe Systems (http://www.Adobe.com) にご連絡ください。 ------------------------------------------------------------------------ 3.6 SQL 解説書は 1 つの PDF ファイルで提供されます 各ブックの付録の 「DB2 ライブラリーの使用」 という SQL の解説書は PDF 形式 で 2 ボリュームになっています。これは正しくありません。 印刷物では 2 冊あり、その 2 冊に対応するフォームの番号も 正しいですが、PDF ファイルは 1 ファイルのみで構成されており、 その中に両方の内容が含まれてい ます。 その PDF ファイルのファイル名は db2s0x70 です。 ------------------------------------------------------------------------ インストールおよび構成 部分目次 * 一般インストール、移行、および構成情報 o 4.1 すべてのサポートされる DB2 クライアントのインストール・パッケ ージをダウンロード o 4.2 追加が必要な Solaris パッチ・レベル o 4.3 Netscape LDAP ディレクトリー・サポート + 4.3.1 Netscape LDAP スキーマの拡張 o 4.4 Windows ME、Windows XP および Windows 2000 Datacenter エディ ション・プラットフォームのサポート + 4.4.1 Windows XP + 4.4.1.1 制約事項 + 4.4.2 Windows ME + 4.4.2.1 制約事項 + 4.4.3 Windows 2000 Datacenter Server o 4.5 Windows 2000 に DB2 をインストール o 4.6 Windows 2000 Terminal Server の管理モードでの DB2 の実行 o 4.7 Microsoft SNA サーバー および SNA マルチ・サイト・アップデー ト (2 フェーズ・コミット) のサポート o 4.8 IBM Communications Server for Windows NT (CS/NT) にユーザー ID とパスワードを 定義 + 4.8.1 ノード定義 o 4.9 取りはずし可能ドライブが接続されていない場合に DB2 インストー ラーが停止することがあります o 4.10 Windows 2000 で CLP を使用したときのエラー SQL1035N o 4.11 特別レジスターで定義した視点による移行の実行 o 4.12 IPX/SPX プロトコル・サポート (Windows 2000 版) o 4.13 前バージョンの DB2 をアップグレードする前に DB2 の処理を停止 o 4.14 別の DB2 製品がすでにインストールされている場合はインストー ル後に db2iupdt を実行 o 4.15 DB2 コントロール・センターを実行するために Linux 環境を設定 o 4.16 Linux (S/390 版) 用の DB2 ユニバーサル・データベース・エンタ ープライズ・エディションおよび DB2 コネクト エンタープライズ・エ ディション o 4.17 Linux (S/390 版) でのデータ損失の可能性 o 4.18 DB2 Linux の Gnome および KDE Desktop Integration o 4.19 Solaris カーネル構成パラメーター (推奨値) o 4.20 DB2 ユニバーサル・データベース・エンタープライズ - 拡張エデ ィション (UNIX 版) 概説およびインストール o 4.21 shmseg カーネル・パラメーター (HP-UX) o 4.22 IBM Visual Warehouse コントロール・データベースの移行 o 4.23 db2uiddl コマンドを用いた固有索引の移行 o 4.24 64 ビット AIX バージョンのインストール・エラー + 4.24.1 SMIT の使用 o 4.25 移行中のエラー o 4.26 IBM(R) DB2(R) コネクト ライセンスの活動化 + 4.26.1 ライセンス・センターを使用したライセンス・キーのイン ストールおよび ライセンス・タイプの設定 + 4.26.2 db2licm コマンドを使用したライセンス・キーのインスト ールおよび ライセンス・タイプの設定 + 4.26.3 分散インストールの場合のライセンスの考慮事項 o 4.27 ウェアハウス・コントロール・データベースへのアクセス o 4.28 エンタープライズ・エディション UNIX CD-ROM の試用製品 o 4.29 DB2 コネクト エンタープライズ・エディション UNIX CD-ROM の試 用製品 o 4.30 コード・ページおよび言語サポート情報 - 訂正 * データ・リンク・マネージャー 概説およびインストール o 5.1 AIX 5.1 でのサポート o 5.2 Dlfm 開始の失敗のメッセージ :「接頭部の afsfid を取得中にエラ ー」 o 5.3 アーカイブ・ファイルへの Tivoli Storage Manager クラスの設定 o 5.4 DFS クライアント・イネーブラーのディスク・スペース要件 o 5.5 AIX におけるデータ・リンク・ファイル・マネージャー・バックエ ンド・プロセスのモニター o 5.6 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: DCE-DFS 環境における追加のインストールの注意点 o 5.7 "dlfm add_prefix" コマンドの失敗 o 5.8 dlfm 停止時にコピー・デーモンが停止しないなど、まれな現象が発 生した場合 o 5.9 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: db2setup ユーティリティーを使用して DB2 データ・リンク・ マネージャーをインストール o 5.10 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: DCE-DFS インストール後の作業 o 5.11 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよ び構成: smit を使用して DB2 データ・リンク・マネージャーを手動で インストール o 5.12 DB2 データ・リンク DFS クライアント・イネーブラー o 5.13 DB2 データ・リンク・マネージャー (Solaris 版) のインストール および構成 o 5.14 Windows NT のデータ・リンクでのアドミニストレーター・グルー プ権限 o 5.15 データ・リンク・ファイル・システム・フィルター (DLFF) インス トールのロギングの最小化 + 5.15.1 インストール後のメッセージのロギング + 5.15.2 Sun Solaris システム上でのログオンの最小化 o 5.16 DATALINK リストア o 5.17 データ・リンク・マネージャーの削除 o 5.18 SMIT を使用して DLFM コンポーネントをアンインストールすると 他のファイル・セットも除去される可能性があります o 5.19 開始する前のホスト名の判別 o 5.20 データ・リンク・ファイル・マネージャーの操作: DB2 データベー スから DB2 データ・リンク・マネージャーをドロップした後のクリーン アップ o 5.21 dlfm Client_conf が失敗した場合のユーザー処置 o 5.22 DLFM1001E (新規エラー・メッセージ) o 5.23 DLFM セットアップ構成ファイル・オプション o 5.24 ファイルのリストア中に起こりうる問題 o 5.25 AIX 上でのデータ・リンク/DFS スクリプト dmapp_prestart 実行 時エラー o 5.26 Tivoli Space Manager とデータ・リンクとの統合 + 5.26.1 制約事項と制限 o 5.27 第 4 章 DB2 データ・リンク・マネージャー (AIX 版) のインスト ールおよび構成 + 5.27.1 一般的なインストールの注意点 + 5.27.1.1 DB2 ファイル・マネージャー・バージョン 5.2 か ら DB2 データ・リンク・マネージャー・バージョン 7 への 移行 o 5.28 第 6 章 AIX でのインストールの検査 + 5.28.1 NFS 環境での回避策 * インストールおよび構成補足 o 6.1 第 5 章 UNIX オペレーティング・システムへの DB2 クライアント のインストール + 6.1.1 HP-UX カーネル構成パラメーター o 6.2 第 12 章 お持ちのアプリケーションの実行 + 6.2.1 ランタイム・クライアントを使用するデータベース・ユーテ ィリティーのバインド + 6.2.2 ODBC を使用しての DB2 への UNIX クライアント・アクセス o 6.3 第 24 章 複数データ・ソース・アクセス用の統合システムのセット アップ + 6.3.1 統合システム + 6.3.2 制約事項 + 6.3.3 DB2 リレーショナル・コネクトのインストール + 6.3.3.1 Windows NT サーバーへの DB2 リレーショナル・コ ネクトのインストール + 6.3.3.2 UNIX サーバーへの DB2 リレーショナル・コネクト のインストール o 6.4 第 26 章 Oracle データ・ソースへのアクセス + 6.4.1 記述の誤り o 6.5 Sybase データ・ソースへのアクセス + 6.5.1 統合サーバーへの Sybase データ・ソースの追加 + 6.5.1.1 ステップ 1: 環境変数の設定およびプロファイル・ レジストリーの更新 (AIX および Solaris の場合のみ) + 6.5.1.2 ステップ 2: Sybase クライアント・ソフトウェアへ の DB2 のリンク (AIX および Solaris の場合のみ) + 6.5.1.3 ステップ 3: DB2 インスタンスの再生 (AIX および Solaris の場合のみ) + 6.5.1.4 ステップ 4: interfaces ファイルの作成およびセッ トアップ + 6.5.1.5 ステップ 5: ラッパーの作成 + 6.5.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の 設定 + 6.5.1.7 ステップ 7: サーバーの作成 + 6.5.1.8 ステップ 8: オプション: CONNECTSTRING サーバ ー・オプションの設定 + 6.5.1.9 ステップ 9: ユーザー・マッピングの作成 + 6.5.1.10 ステップ 10: 表および視点のニックネームの作成 + 6.5.2 Sybase コード・ページの指定 o 6.6 ODBC による Microsoft SQL Server データ・ソースへのアクセス (新しい章) + 6.6.1 統合サーバーへの Microsoft SQL Server データ・ソースの 追加 + 6.6.1.1 ステップ 1: 環境変数の設定 (AIX の場合のみ) + 6.6.1.2 ステップ 2: シェル・スクリプトの実行 (AIX の場 合のみ) + 6.6.1.3 ステップ 3: オプション: DB2_DJ_COMM 環境変数の 設定 (AIX の場合のみ) + 6.6.1.4 ステップ 4: DB2 インスタンスの再生 (AIX の場合 のみ) + 6.6.1.5 ステップ 5: ラッパーの作成 + 6.6.1.6 ステップ 6: サーバーの作成 + 6.6.1.7 ステップ 7: ユーザー・マッピングの作成 + 6.6.1.8 ステップ 8: 表および視点のニックネームの作成 + 6.6.1.9 ステップ 9: オプション: ODBC トレースの取得 + 6.6.2 Microsoft SQL Server コード・ページの検討 (Windows NT の場合のみ) o 6.7 Informix データ・ソースへのアクセス (新しい章) + 6.7.1 統合サーバーへの Informix データ・ソースの追加 + 6.7.1.1 ステップ 1: 環境変数の設定およびプロファイル・ レジストリーの更新 + 6.7.1.2 ステップ 2: Informix クライアント・ソフトウェア への DB2 のリンク + 6.7.1.3 ステップ 3: DB2 インスタンスの再生 + 6.7.1.4 ステップ 4: Informix sqlhosts ファイルの作成 + 6.7.1.5 ステップ 5: ラッパーの作成 + 6.7.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の 設定 + 6.7.1.7 ステップ 7: サーバーの作成 + 6.7.1.8 ステップ 8: ユーザー・マッピングの作成 + 6.7.1.9 ステップ 9: 表、視点、および Informix 同義語の ニックネームの作成 ------------------------------------------------------------------------ 一般インストール、移行、および構成情報 ------------------------------------------------------------------------ 4.1 すべてのサポートされる DB2 クライアントのインストール・パッケージをダウ ンロード 前バージョンの 7 クライアントを含む、すべてのサポートされる DB2 クライアン トのインストール・ パッケージをダウンロードするには、IBM DB2 フィックスパッ クおよびクライアント Web サイトに接続してください。 ( http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/download.d2w/report) ------------------------------------------------------------------------ 4.2 追加が必要な Solaris パッチ・レベル DB2 (UNIX 版) 概説およびインストール マニュアルにリストされたパッチに加え て、 DB2 ユニバーサル・データベース (Solaris バージョン 2.6 版) バージョン 7 には パッチ 106285-02 またはそれ以降のバージョンが必要です。 ------------------------------------------------------------------------ 4.3 Netscape LDAP ディレクトリー・サポート Netscape LDAP Server のサポート・レベルは、v4.12 またはそれ以降です。 4.3.1 Netscape LDAP スキーマの拡張 Netscape Directory Server により、slapd.user_oc.conf およ び slapd.user_at.conf の 2 つのファイルに属性および オブジェクト・クラス定義を 追加することによって、アプリケーションはスキーマを 拡張できます。 これらの 2 つのファイルは、\slapd-\config ディ レクトリーにあります。 DB2 属性は、次のように slapd.user_at.conf に追加する必要があります。 注:このコンテキストでは、bin、cis、ces、 および dn はそれぞれ、バイナリ ー、大文字小文字を区別しないストリング、 大文字小文字を区別するストリ ングおよび識別名を表します。 : ############################################################################ # # IBM DB2 Universal Database V7.2 # Attribute Definitions # ############################################################################ attribute binProperty 1.3.18.0.2.4.305 bin attribute binPropertyType 1.3.18.0.2.4.306 cis attribute cesProperty 1.3.18.0.2.4.307 ces attribute cesPropertyType 1.3.18.0.2.4.308 cis attribute cisProperty 1.3.18.0.2.4.309 cis attribute cisPropertyType 1.3.18.0.2.4.310 cis attribute propertyType 1.3.18.0.2.4.320 cis attribute systemName 1.3.18.0.2.4.329 cis attribute db2nodeName 1.3.18.0.2.4.419 cis attribute db2nodeAlias 1.3.18.0.2.4.420 cis attribute db2instanceName 1.3.18.0.2.4.428 cis attribute db2Type 1.3.18.0.2.4.418 cis attribute db2databaseName 1.3.18.0.2.4.421 cis attribute db2databaseAlias 1.3.18.0.2.4.422 cis attribute db2nodePtr 1.3.18.0.2.4.423 dn attribute db2gwPtr 1.3.18.0.2.4.424 dn attribute db2additionalParameters 1.3.18.0.2.4.426 cis attribute db2ARLibrary 1.3.18.0.2.4.427 cis attribute db2authenticationLocation 1.3.18.0.2.4.425 cis attribute db2databaseRelease 1.3.18.0.2.4.429 cis attribute DCEPrincipalName 1.3.18.0.2.4.443 cis DB2 オブジェクト・クラスは、次のように slapd.user_oc.conf ファイル に追加す る必要があります。 ############################################################################ # # IBM DB2 Universal Database V7.2 # Object Class Definitions # ############################################################################ objectclass eProperty oid 1.3.18.0.2.6.90 requires objectClass allows cn, propertyType, binProperty, binPropertyType, cesProperty, cesPropertyType, cisProperty, cisPropertyType objectclass eApplicationSystem oid 1.3.18.0.2.6.8 requires objectClass, systemName objectclass DB2Node oid 1.3.18.0.2.6.116 requires objectClass, db2nodeName allows db2nodeAlias, host, db2instanceName, db2Type, description, protocolInformation objectclass DB2Database oid 1.3.18.0.2.6.117 requires objectClass, db2databaseName, db2nodePtr allows db2databaseAlias, description, db2gwPtr, db2additionalParameters, db2authenticationLocation, DCEPrincipalName, db2databaseRelease, db2ARLibrary DB2 スキーマ定義を追加した後で、すべての変更を活動化するために、 ディレクト リー・サーバーを再始動する必要があります。 ------------------------------------------------------------------------ 4.4 Windows ME、Windows XP および Windows 2000 Datacenter エディション・プ ラットフォームのサポート DB2 は、Microsoft Windows ME、Windows XP、および Windows 2000 Datacenter エ ディション・プラットフォームをサポートするようになりました。以下は、 追加の プラットフォーム固有の情報です。 4.4.1 Windows XP フィックスパック 4 またはそれ以降のインストールにおいて、 以下の製品および バージョンが 32 ビット Windows XP をサポートします。 * IBM DB2 UDB パーソナル・エディション バージョン 7.2 * IBM DB2 パーソナル開発者版 バージョン 7.2 * IBM DB2 ユニバーサル開発者版 バージョン 7.2 * IBM DB2 コネクト パーソナル・エディション バージョン 7.2 * IBM DB2 コネクト エンタープライズ・エディション バージョン 7.2 * IBM DB2 UDB ワークグループ・エディション バージョン 7.2 * IBM DB2 UDB エンタープライズ・エディション バージョン 7.2 * IBM DB2 ランタイム・クライアント バージョン 7.2 * IBM DB2 アドミニストレーション・クライアント バージョン 7.2 * IBM DB2 アプリケーション開発クライアント バージョン 7.2 DB2 は、Windows XP システムで、他のバージョンと同じ各国語版をサポートしま す。 4.4.1.1 制約事項 インストール中にユーザー ID とパスワードを入力する際に、有効なユーザー・ア カウントであるにもかかわらず、 「インストール・パネルに入力したユーザー・ア カウントが無効」というメッセージを受信する場合があります。 これは、ユーザー ID がマシンに存在している場合にのみ起こります。 まだ存在しないユーザー名を 入力した場合は、この問題は起こりません。 db2admin 以外のユーザー・アカウントの下で DB2 をインストールするよう選択し た場合、 アカウント名が DB2 命名規則にしたがっていることを確認してくださ い。最も重要なこととして、名前にスペースを含むことはできません。 たとえば、 my_name は使用できますが、 my name は使用できません。 製品のインストール中にエラー 1052 を受信した場合は、以下を行ってください。 1. エラー・ウィンドウを開いたままにします。 2. コマンド・ウィンドウを開きます。 3. コマンド db2start.exe を実行します。 4. エラー・ウィンドウで指定されたコマンドを、コマンド行で表示されているユ ーザーのパスワードを使用して実行します。 5. エラー・ウィンドウに戻り、「了解」をクリックします。 これで、インスト ールを続行できます。 中国語 (簡体字) を使用している場合で、コントロール・センターで正しく表示さ れないフォントがある場合、sqllib\java\java12\jdk\jre\lib\font.properties.zh を変更してください。つまり、filename.\u5b8b\u4f53=simsun.ttf の項目を filename.\u5b8b\u4f53=simsun.ttc と置き換えます。 4.4.2 Windows ME フィックスパック 2 またはそれ以降のインストールにおいて、 以下の製品および バージョンが Windows ME をサポートします。 * IBM DB2 UDB パーソナル・エディション バージョン 7.1 * IBM DB2 パーソナル開発者版 バージョン 7.1 * IBM DB2 ユニバーサル開発者版 バージョン 7.1 * IBM DB2 コネクト パーソナル・エディション バージョン 7.1 * IBM DB2 ランタイム・クライアント バージョン 7.1 * IBM DB2 アドミニストレーション・クライアント バージョン 7.1 * IBM DB2 アプリケーション開発クライアント バージョン 7.1 4.4.2.1 制約事項 HTML 検索サーバー機能は、現時点では Window ME ではサポートされません。 DB2 をアンインストールする場合、「MFC42U.DLL ファイルが見つからない」という エラー・メッセージを受信する場合があります。DB2 を完全にアンインストールす るには、アンインストール処理が完了した後に、 手動で sqllib ディレクトリーを 削除してください。 4.4.3 Windows 2000 Datacenter Server 以下の DB2 製品が、Windows 2000 Datacenter Server、 Windows 2000 Advanced Server、および Windows 2000 Server で認証されています。 * IBM DB2 ユニバーサル・データベース エンタープライズ・エディション バー ジョン 7.2 * IBM DB2 ユニバーサル・データベース エンタープライズ・エディション バー ジョン 7.2 * IBM DB2 データベース・ワークグループ・エディション バージョン 7.2 * IBM DB2 コネクト エンタープライズ・エディション バージョン 7.2 ------------------------------------------------------------------------ 4.5 Windows 2000 に DB2 をインストール Windows 2000 では、前のバージョンの DB2 に上書きインストールする場合や、現 行バージョンを 再インストールする場合には、DB2 のすべてのサービスに対して、 回復オプションが 「Take No Action」に設定されていることを確認してください。 ------------------------------------------------------------------------ 4.6 Windows 2000 Terminal Server の管理モードでの DB2 の実行 DB2 UDB バージョン 7.1、フィックスパック 3 またはそれ以降の場合、DB2 は Windows 2000 Terminal Server、管理モードで実行できます。実行しないと、 Windows 2000 Terminal Server、管理モードの クライアント・セッションでは DB2 を 実行できません。 ------------------------------------------------------------------------ 4.7 Microsoft SNA サーバー および SNA マルチ・サイト・アップデート (2 フェ ーズ・コミット) のサポート Microsoft SNA サーバーが、SNA 製品を使用している場合、ホストおよび AS/400 のアプリケーションは SNA 2 フェーズ・コミットを利用する DB2 UDB サーバー に、接続することができません。 サポートすると表記している DB2 UDB の資料 は、誤りです。 IBM Communications Server (Windows NT 版) バージョン 5.02 ま たはそれ以上が必須です。 注:Windows 版 DB2 UDB を使用するホストおよび AS/400 に接続するアプリケー ションは、 Microsoft SNA サーバーのバージョン 4 サービス・パック 3、ま たはそれ以上を使用する、SNA 2 フェーズ・コミットを 使用できます。 ------------------------------------------------------------------------ 4.8 IBM Communications Server for Windows NT (CS/NT) にユーザー ID とパスワ ードを 定義 お使いの DB2 サーバーと DB2 クライアントとのリモート接続の通信プロトコルと して APPC をご使用になっている場合、また SNA 製品として CS/NT をご使用にな っている場合は、 以下のキーワードが CS/NT 構成ファイルに正しく設定されてい ることを確認して おきます。このファイルは通常以下のディレクトリーにありま す。x:\ibmcs\private ディレクトリー 4.8.1 ノード定義 TG_SECURITY_BEHAVIOR このパラメーターは、TP がセキュリティー用に構成されていない場合、この ノードが ATTACH で、現行のセキュリティー情報をどのように扱うか、ユーザ ーが決定できるように しています。 IGNORE_IF_NOT_DEFINED このパラメーターは、セキュリティー・パラメーターが ATTACH に存在するか どうかを判別し、 TP がセキュリティー用に構成されていない場合はそれらを 無視できるようにしています。 IGNORE_IF_NOT_DEFINED をお使いの場合、CS/NT でユーザー ID とパスワード を定義する必要は ありません。 VERIFY_EVEN_IF_NOT_DEFINED このパラメーターは、セキュリティー・パラメーターが ATTACH に存在するか どうかを判別し、 TP がセキュリティー用に構成されていない場合でも確認で きるようにしています。 これがデフォルトです。 VERIFY_EVEN_IF_NOT_DEFINED をお使いの場合、CS/NT でユーザー ID と パス ワードを 定義する必要があります。 CS/NT のユーザー ID およびパスワードを定義するには、以下のステップを実行し ます。 1. スタート --> プログラム --> IBM Communications Server --> SNA ノード構 成 を選択します。「Communications Server 構成ウィンドウ へようこそ」が 開きます。 2. 変更したい構成ファイルを選択する。「次へ」ボタンを クリックします。 「構成シナリオの選択」ウィンドウが開きます。 3. CPI-C、APPC または 5250 エミュレーションを反転表示する。 「終了」ボタ ンをクリックする。 Communications Server SNA ノード・ウィンドウが開き ます。 4. CPI-C と APPC のそばの [+] をクリックする。 5. LU6.2 Security のそばの [+] をクリックする。 6. ユーザー・パスワード上で右クリックし、「作成」を 選択する。「ユーザー ID パスワードの定義」ウィンドウが開きます。 7. ユーザー ID と パスワードを入力する。「了解」をクリックする。 変更を有 効にするため「終了」をクリックします。 ------------------------------------------------------------------------ 4.9 取りはずし可能ドライブが接続されていない場合に DB2 インストーラーが停止 することがあります 接続されていない、取りはずし可能なドライブを持つコンピューターを使用してい る場合、インストール中、 インストール・タイプを選択後にインストーラーが停止 することがあります。 この問題を解決するには、-a オプションを指定してセット アップを実行します。 setup.exe -a ------------------------------------------------------------------------ 4.10 Windows 2000 で CLP を使用したときのエラー SQL1035N 一部のユーザー (たとえば管理者) しか書き込みアクセスを持っていないディレク トリーに DB2 をインストールした場合、通常のユーザーは、DB2 コマンド行プロセ ッサーを 使用しようとしたときにエラー SQL1035N を受け取る可能性があります。 この問題を解決するには、すべてのユーザーが書き込みアクセスを持つディレクト リーに DB2 をインストールしてください。 ------------------------------------------------------------------------ 4.11 特別レジスターで定義した視点による移行の実行 USER もしくは CURRENT SCHEMA などの特別レジスターが列の視点を定義する場合、 視点はデータベースの移行後使用できなくなります。 例: create view v1 (c1) as values user バージョン 5 では、USER および CURRENT SCHEMA は CHAR(8) のデータ・タイプで したが、 バージョン 6 以降からは、VARCHAR(128) で定義されています。 この例 では、その視点がバージョン 5 で作成されている場合、c1 列のデータ・タイプは CHAR で データベース移行後にもこの CHAR タイプは残ります。 移行後も視点が使 用される場合は、実行時にコンパイルしても データ・タイプがマッチしないため失 敗します。 これを解決するには視点を削除し、それから再作成します。 視点をドロップする前 に、SYSCAT.VIEWS カタログ視点を照会して、視点を作成するために 使用される構 文を取り込んでください。 例: select text from syscat.views where viewname='<>' ------------------------------------------------------------------------ 4.12 IPX/SPX プロトコル・サポート (Windows 2000 版) この情報は、「概説およびインストール」マニュアルの「インストールの計画」の 章にある 「クライアント・サーバー間の接続に関するシナリオ」というセクション を参照しています。 この公開プロトコル・サポート図は、完全に正しいものではありません。 IPX/SPX を使用する OS/2 もしくは UNIX ベースのサーバーに接続する Windows 2000 クラ イアントはサポートしていません。 同様に、IPX/SPX を使用する Windows 2000 サ ーバーに接続する OS/2 もしくは UNIX ベースの クライアントはサポートしていま せん。 ------------------------------------------------------------------------ 4.13 前バージョンの DB2 をアップグレードする前に DB2 の処理を停止 この情報は、「DB2 for Windows 概説およびインストール」マニュアルにある移行 に関する 情報を参照しています。 お使いの Windows マシンで稼働している、前バージョンの DB2 をアップグレード する場合、 インストール・プログラムは、DB2 の DLL をメモリー上に保留してい る処理のリストも合わせ、警告を 出します。 ここで、そのリストにあげられてい るプロセスを手動で停止するオプションがあります。 もしくは、インストール・プ ログラムに自動的にこれらのプロセスをシャットダウンさせる こともできます。デ ータの損失を防ぐためにも、インストールの前にすべての DB2 プロセスを 手動で 停止させることをお勧めします。DB2 のプロセスが稼働していないかを確認する最 善の方法は、 Windows のサービス・パネルで、お使いのシステム・プロセスを表示 することです。Windows サービス・パネルで、 DB2 サービス、OLAP サービス、も しくは データウェアハウス・サービスが稼働していないことを確認します。 注:Windows のプラットフォームで一度に稼働できる DB2 のバージョンは 1 つだ けです。 たとえば、1 つの Windows マシン上で、DB2 のバージョン 7 とバ ージョン 6 を動作させることは できません。DB2 のバージョン 7 を、バー ジョン 6 のインストール済みのマシンにインストール すると、インストー ル・プログラムは、インストール中にバージョン 6 を削除します。DB2 の前 バージョンからの 移行について詳しくは、適切な 概説およびインストール 解説書を参照して ください。 ------------------------------------------------------------------------ 4.14 別の DB2 製品がすでにインストールされている場合はインストール後に db2iupdt を実行 以下の情報は、「概説およびインストール」というインストールに関するマニュア ルから入手できます。 UNIX ベースのシステムに、DB2 UDB バージョン 7 をインストールする場合で、DB2 製品がすでにインストール されている場合、本製品の新機能を使用できるようにそ れらのインスタンスを db2iupdt コマンドで 更新する必要があります。いくつかの 機能はこのコマンドが実行されるまで使用可能になりません。 ------------------------------------------------------------------------ 4.15 DB2 コントロール・センターを実行するために Linux 環境を設定 この情報は、「概説およびインストール」マニュアルの「DB2 コントロール・セン ターのインストール」の章に 含まれています。 DB2 インストーラー (Linux 版) が終了し、ターミナル・ウィンドウに戻った後、 DB2 コントロール・センターを実行するための正しい環境を設定するために、 以下 のコマンドを入力してください。 su -l export JAVA_HOME=/usr/jdk118 export DISPLAY=:0 それから、別のターミナル・ウィンドウを開き、以下のように入力します。 su root xhost + ターミナル・ウィンドウを閉じ、インスタンスの所有者 ID でログインしている タ ーミナルに戻り、以下のコマンドを入力します。 db2cc コントロール・センターを開始します。 ------------------------------------------------------------------------ 4.16 Linux (S/390 版) 用の DB2 ユニバーサル・データベース・エンタープライ ズ・エディションおよび DB2 コネクト エンタープライズ・エディション DB2 ユニバーサル・データベース・エディションと DB2 コネクト・エンタープライ ズ・エディションが、 Linux (S/390 版) で使用できるようになりました。S/390 マシンに Linux をインストールする前に、 ソフトウェアおよびハードウェア要件 を確認してください。 ハードウェア S/390 9672 Generation 5 以降、Multiprise 3000。 ソフトウェア * SuSE Linux v7.0 for S/390 または Turbolinux Server 6 for zSeries およ び S/390 * カーネル・レベル 2.2.16、S/390 用パッチ適用済み (下記を参照) * glibc 2.1.3 * libstdc++ 6.1 Linux (S/390 版) には以下のパッチが必要です。 * 現時点ではパッチは不要です。 最新の更新情報については、http://www.software.ibm.com/data/db2/linux Web サ イトに アクセスしてください。 注: 1. 32 ビット Intel ベースの Linux と、Linux S/390 版のみがサポートされて います。 2. 以下は DB2 バージョン 7 の Linux/390 では使用できません。 o DB2 UDB エンタープライズ - 拡張エディション o DB2 エクステンダー o データ・リンク・マネージャー o DB2 管理クライアント o パスワード変更サポート o LDAP サポート ------------------------------------------------------------------------ 4.17 Linux (S/390 版) でのデータ損失の可能性 2.2 シリーズのカーネルの Linux (S/390 版) で DB2 を使用するときは、Linux マ シン上の 有効な RAM は 1 GB 未満に制限してください。RAM を 1 GB に制限する ことで、Linux カーネルのバグによる DB2 でのデータ損失を避けることができま す。 このことは、 Linux (S/390 版) 上の DB2 に影響しますが、Intel 上の Linux に は影響しません。 カーネル・パッチは、 http://www10.software.ibm.com/developerworks/opensource/linux390/alpha_src.html で入手でき、これによって 1 GB を超える RAM を使用できます。 ------------------------------------------------------------------------ 4.18 DB2 Linux の Gnome および KDE Desktop Integration 現在 DB2 には、サポートされている Intel ベース Linux 配布版の Gnome および KDE デスクトップで、最も頻繁に使用する DB2 ツールを立ち上げるための DB2 デ スクトップ・フォルダーおよびアイコンを 作成するためのユーティリティー・セッ トが組み込まれています。これらのユーティリティーは、 デフォルトでは DB2 バ ージョン 7.2 によってインストールされ、これを使用すれば、インストール後 に 1 人以上の選択されたユーザー用にデスクトップ・アイコンを作成または除去でき ます。 1 人以上のユーザーのデスクトップ・アイコンを追加するには、次のコマンドを 使 います。 db2icons [ ...] 注:アイコンが Gnome または KDE デスクトップ環境での実行中に作成された場 合、 その新しいアイコンを表示するには、手動で強制的に最新表示を実行す る必要が あります。 1 人以上のユーザーのデスクトップ・アイコンを除去するには、次のコマンドを 使 います。 db2rmicons [ ...] 注:他のユーザーのアイコンを生成または除去するには、十分な権限を 持つ必要 があります。一般に、 db2icons and db2rmicons を使うと、 通常のユーザー は本人のアイコンを作成および除去することができます。ルートまたは 指定 ユーザーのホーム・ディレクトリーに書き込む権限を持つ別のユーザーのみ、 他のユーザーのアイコンを作成および除去することができます。 ------------------------------------------------------------------------ 4.19 Solaris カーネル構成パラメーター (推奨値) DB2 (UNIX 版) 概説およびインストール および DB2 (UNIX 版) エンタープライズ 拡張エディション 概説およびインストール の Solaris の章の「始める前に」セク ションで、推奨される Solaris カーネル構成パラメーターが提供されています。以 下の表では、実メモリーが 512 MB 以上のシステムの場合の追加のカーネル構成パ ラメーター推奨値を提供します。 表 1. Solaris カーネル構成パラメーター (推奨値) カーネル・パラメータ 512 MB-1 GB 1 GB-4 GB 4 GB+ ー msgsys:msginfo_msgmax 65,535 65,535 65,535 msgsys:msginfo_msgmnb 65,535 65,535 65,535 msgsys:msginfo_msgmap 514 1,026 2,050 msgsys:msginfo_msgmni 512 1,024 2,048 msgsys:msginfo_msgssz 16 32 64 msgsys:msginfo_msgtql 1,024 2,048 4,096 msgsys:msginfo_msgseg 32,767 32,767 32,767 shmsys:shminfo_shmmax 483,183,820 - 966,367,641 - 3,865,470,566 - 966,676,1 3,865,470,566 4,294,967,296 shmsys:shminfo_shmseg 50 100 200 shmsys:shminfo_shmmni 300 1,024 2,048 semsys:seminfo_semmni 1,024 2,048 4,198 semsys:seminfo_semmap 1,026 2,050 4,096 semsys:seminfo_semmns 2,048 4,096 8,192 semsys:seminfo_semmnu 2,048 4,096 8,192 semsys:seminfo_semume 50 50 50 注: 1. shmsys:shminfo_shmmax パラメーターの制限は、32 ビット・システムの場合 で 4 G です。 2. msgsys:msginfo_msgmnb および msgsys:msginfo_msgmax パラメーターは 65,535 以上に設定しなければなりません。 3. msgsys:msginfo_msgseg パラメーターは 32,767 以下に設定しなければなりま せん。 4. shmsys:shminfo_shmmax パラメーターは、上記の表の推奨値か、または物理メ モリーの 90% (バイト) のいずれか高い方に設定します。たとえば、システム に物理メモリーが 196 MB ある場合、 shmsys:shminfo_shmmax パラメーター を 184,968,806 (196*1024*1024*0.9) に設定します。 ------------------------------------------------------------------------ 4.20 DB2 ユニバーサル・データベース・エンタープライズ - 拡張エディション (UNIX 版) 概説およびインストール 「第 5 章 Linux での DB2 ユニバーサル・データベースのインストールおよび構 成」には、 Linux EEE クラスター内の物理ノードがそれぞれ同じカーネル、 glibc、および libstdc++ の レベルを持っていなければならないと記されていま す。 Linux 版 DB2 EEE のお試し版は、 Web サイト http://www6.software.ibm.com/dl/db2udbdl/db2udbdl-pからダウンロードできま す。 ------------------------------------------------------------------------ 4.21 shmseg カーネル・パラメーター (HP-UX) 「概説およびインストール」マニュアルにある HP-UX カーネル構成パラメーターの 更新に関する情報は、 誤っています。HP-UX の shmseg カーネル・パラメーターの 推奨値は無視してください。 代わりに、デフォルトの HP-UX 値 (120) を使用してください。 ------------------------------------------------------------------------ 4.22 IBM Visual Warehouse コントロール・データベースの移行 「DB2 ユニバーサル・データベース 概説およびインストール (Windows 版)」は、 Windows NT および Windows 2000 に DB2 ユニバーサル・データベース バージョン 7 の通常インストール中、 活動ウェアハウス・コントロール・データベースがどの ように移行されるかについての情報を提供します。 移行するウェアハウス・コント ロール・データベースが複数ある場合、 「ウェアハウス・コントロール・データベ ース管理」ウィンドウを使用して、 追加のデータベースを移行する必要がありま す。一度に 1 つのウェアハウス・コントロール・ データベースしか活動化できま せん。移行する最後のデータベースが、 データウェアハウスセンターへの次回のロ グオン時に使用する予定のデータベースでない場合、 「ウェアハウス・コントロー ル・データベース管理」ウィンドウを使用して、 使用する予定のデータベースを登 録する必要があります。 ------------------------------------------------------------------------ 4.23 db2uiddl コマンドを用いた固有索引の移行 DB2 概説およびインストールの資料の DB2 インストール後移行作業の章、オプショ ンのインストール後 移行作業の項には、db2uiddl コマンドを使用して、DB2 バー ジョ ン 5.x および DB2 バージョン 6 から固有索引を移行すべきであると説明さ れていますが、 これは誤りです。 db2uidddl コマンドを使用した 固有索引の移行 は、バージョン 5 より前の DB2 のバージョンから 移行する場合にのみ必要です。 ------------------------------------------------------------------------ 4.24 64 ビット AIX バージョンのインストール・エラー db2setup を使用して 64 ビット AIX DB2 イメージを既存の AIX オペ レーティン グ・システムにインストールする場合は、互換性のある AIX バージョンを使用して いること を確認してください。互換性がない場合は、インストールが失敗します。 AIX バージョン 5 DB2 イメ ージは、既存の AIX バージョン 4 オペレーティン グ・システムにインストールできません。同様に、 64 ビット AIX バージョン 4 DB2 イメージを既存の AIX バージョン 5 オペレーティング・ システムにインスト ールすると、インストール・エラーが発生します。 非互換の 64 ビット AIX バージョンをインストールしようとする場合、db2setup ユーティリティーは、 前提条件チェック時にバージョン・ミスマッチを検出し、 次のようなエラー・メッセージを表示します。 DBI1009E Install media and AIX version mismatch. このエラーを回避するためには、正しい 64 ビット AIX バージョンを インストー ル中であることを確認してください。 4.24.1 SMIT の使用 SMIT を使用する場合、AIX バージョン 4 DB2 が AIX バージョン 5 DB2 に置き換 えられると、 エラーが表示されますが、逆は発生しません。したがって、64 ビッ ト AIX バージョン 5 のユーザーは、 正しいバージョンをインストール中であるこ とを確認する必要があります。 エラー・メッセージが表示 されることなく、 db2setup を立ち上げることができた場合は、AIX バージョンの互換性のチェックが 成功しました。 注:この非互換性エラーは、32 ビット AIX バージョンには 当てはまりません。 ------------------------------------------------------------------------ 4.25 移行中のエラー 移行中に、移行が成功しているのにもかかわらず db2diag.log ファイルの エラー 項目 (データベースが移行されませんでした) が表示された場合は、 それを無視し てもかまいません。 ------------------------------------------------------------------------ 4.26 IBM(R) DB2(R) コネクト ライセンスの活動化 DB2 コネクト エンタープライズ・エディション、DB2 コネクト アンリミテッド・ エディション、 および DB2 コネクト Web スターター・キット用のインストール・ プログラムは、製品ライセンス をインストールしません。インストール後にこれら の製品は 90 日間、 試用モードで作動します。これはライセンス・ファイルがない からです。 90 日の期間が過ぎると、 インストールされた製品は、適切なライセン スを活動化しない限り、 機能を停止します。 製品のライセンスを活動化するためには、DB2 ライセンス・センター または db2licm コマンドのいずれかを使用できます。 4.26.1 ライセンス・センターを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 1. DB2 コントロール・センターを始動して、「ツール」メニューから 「ライセ ンス・センター」を選択する。 2. ライセンスをインストール中のシステムを選択する。「インストール 済み製 品」フィールドには、インストールした製品の名前が表示されます。 3. 「ライセンス」メニューから 「追加」を選択する。 4. 「ライセンスを追加」ウィンドウで「ファイル から」ラジオ・ボタンを選択 する。 o Windows サーバーの場合: x:\db2\license\connect\license_filename ただし、x: は、DB2 コネクト製品 CD が 挿入される CD-ROM ドライブ を表す。 o UNIX サーバーの場合: /db2/license/connect/license_filename ただし、license_filename は、DB2 コネクト エンタープライズ・エディショ ンおよび DB2 コ ネクト アンリミテッド・エディションの場合は、 db2conee.lic、DB2 コネク ト Web スターター・キットの場合は、 db2consk.lic です。 5. 「適用」をクリックして、ライセンス・キーを追加する。 6. ライセンス・タイプを設定する。 o DB2 コネクト アンリミテッド・エディションおよび DB2 コネクト Web スターター・キットの場合: ライセンス・センターで「ライセンス」メニューから 「変更」を選択す る。 「ライセンスを変更」ウィンドウで、 「測定された使用量」チェ ック・ボックスを選択する。「了解」をクリックして、「ライセンスを 変更」ウィンドウをクローズし、ライセンス・センターに戻る。 注:DB2 コネクト Web スターター・キットの場合、有効期限日付が製 品のインストール日 から 270 日後にセットされていることを確認 してください。 o DB2 コネクト エンタープライズ・エディションの場合: ライセンス・センターで「ライセンス」メニューから 「変更」を選択す る。 「ライセンスを変更」ウィンドウで、 購入したライセンスのタイ プを選択する。 + 同時ユーザー・ライセンスを購入した場合は、「同時 DB2 コネク ト・ ユーザー」を選択して、購入したユーザー・ライセンスの数 を入力する。 注:DB2 コネクト エンタープライズ・エディションは、1 ユーザ ー に 1 ライセンスを提供します。 追加の DB2 コネクト・ ユーザー・ライセンスは、 別途購入する必要があります。 + 登録済みユーザー・ライセンスを購入した場合は、「登録 済み DB2 コネクト・ユーザー」を選択し、「了解」をクリックして、 「ライセンスを変更」ウィンドウをクローズし、ライセンス・セン ターに戻る。 「ユー ザー」タブをクリックして、 ライセンスを 購入したユーザー ID をすべて追加する。 4.26.2 db2licm コマンドを使用したライセンス・キーのインストールおよび ライ センス・タイプの設定 ライセンス・センターではなく、db2licm コマンドを使用して、 ライセンス・キー を追加できます。db2licm コマンドを使用して ライセンス・キーを追加するには、 1. Windows サーバー上で、次のコマンドを入力します。 db2licm -a x:\db2\license\connect\license_filename ただし、x: は、DB2 コネクト製品 CD が挿入される CD-ROM ドライブを表し ます。 UNIX サーバー上で、次のコマンドを入力します。 db2licm -a db2/license/connect/license_filename ただし、license_filename は、DB2 コネクト エンタープライズ・エディショ ンおよび DB2 コ ネクト アンリミテッド・エディションの場合は、 db2conee.lic、DB2 コ ネクト Web スターター・キットの場合は、 db2consk.lic です。 注:DB2 コネクト Web スターター・キットの場合、有効期限日付が製品のイ ンストール日 から 270 日後に設定されていることを確認してくださ い。 2. ライセンス・タイプを設定する。 o DB2 コネクト アンリミテッド・エディションおよび DB2 コネクト Web スターター・キットの場合: 次のコマンドを入力してください。 db2licm -p db2conee measured o DB2 コネクト エンタープライズ・エディションの場合: 同時ユーザー・ライセンスを購入した場合は、 次のコマンドを入力す る。 db2licm -p db2conee concurrent db2licm -u N ただし、N は、購入した同時ユーザー・ライセンスの 数を表します。 登録済みユーザー・ライセンスを購入した場合は、 次のコマンドを入力 する。 db2licm -p db2conee registered 4.26.3 分散インストールの場合のライセンスの考慮事項 分散インストールのイメージを作成中の場合は、インストール後にライセンスをイ ンストールするため、 特別の調整が必要です。 前述の db2licm コマンドを 分散 インストール・スクリプトに追加します。 ------------------------------------------------------------------------ 4.27 ウェアハウス・コントロール・データベースへのアクセス Windows NT 上での DB2 バージョン 7 の通常インストールでは、 DB2 バージョン 7 ウェアハウス・コントロール・データベースはウェアハウス・サーバー付きで 作 成されます。 Visual Warehouse ウェアハウス・コントロール・データベースを持 っている場合、ウェアハウス・コントロール・データベースの メタデータが DB2 バージョン 7 データウェアハウスセンターによって使用を移行される前に、 ウェ アハウス・コントロール・データベースを含む DB2 サーバーを DB2 バージョン 7 へ アップグレードする必要があります。使用を続けたいウェアハウス・コントロー ル・データベースはすべて バージョン 7 に移行する必要があります。活動ウェア ハウス・コントロール・データベースの メタデータは DB2 バージョン 7 のインス トール処理中にバージョン 7 に移行されます。 ウェアハウス・コントロール・デ ータベースのどんな追加でもメタデータを 移行するには、ウェアハウス・コントロ ール・データベース移行ユーティリティーを使用します。 それは Windows NT のス タート -->プログラム --> IBM DB2 -->ウェアハウス・コントロール・データベー ス管理を選択して開始 します。 ウェアハウス・コントロール・データベースの移 行についての情報に関しては、DB2 ユニバーサル・データベースの概説およびイン ストール を参照してください。 ------------------------------------------------------------------------ 4.28 エンタープライズ・エディション UNIX CD-ROM の試用製品 UNIX プラットフォーム、バージョン 6 およびバージョン 7 の DB2 ユニバーサ ル・データベース (UDB) エンタープライズ・エディション (EE) CD-ROM には、 90 日試用バージョン の DB2 コネクト エンタープライズ・エディションが含まれてい ます。 DB2 コネクトの機能は DB2 UDB EE 製品に組み込まれています。 そのた め、DB2 UDB EE がインストールされているシステムに、 DB2 コネクトの機能を使 用するために DB2 CEE 製品をインストールする必要はありません。 90 日試用バー ジョンの DB2 CEE をインストールし、ライセンス交付バージョンへの アップグレ ードを決めた場合は、DB2 CEE 製品を購入して DB2 ライセンス・キーを インスト ールしなければなりません。 製品を再インストールする必要はありません。 ライ センス・キーのインストールの説明は、 UNIX Quick Beginnings ブックの DB2 EE または DB2 CEE に示されています。 EE のインストールとともに試用 CEE 製品もインストールするが、 CEE を永続的に インストールしたままにしない場合は、 CEE 90 日試用バージョンを以下の手順で 除去することができます。 コネクト EE の試用バージョンを除去した場合でも、 DB2 EE では DB2 コネクトの機能が使用可能です。 DB2 コネクト・バージョン 7 を除去するには、 それぞれプラットフォームから以 下のファイル・セットをアンインストールしてください。 * AIX では db2_07_01.clic ファイル・セット * NUMA-Q および Solaris 稼働環境では db2clic71 パッケージ * Linux では db2clic71-7.1.0-x RPM * HP-UX では DB2V7CONN.clic ファイル・セット DB2 コネクト・バージョン 6 を除去するには、 それぞれのプラットフォームから 以下のファイル・セットをアンインストールしてください。 * AIX では db2_06_01.clic ファイル・セット * NUMA-Q および Solaris 操作環境では db2cplic61 パッケージ * Linux では db2cplic61-6.1.0-x RPM * HP-UX では DB2V6CONN.clic ファイル・セット ------------------------------------------------------------------------ 4.29 DB2 コネクト エンタープライズ・エディション UNIX CD-ROM の試用製品 UNIX プラットフォームのバージョン 6 およびバージョン 7 の DB2 コネクト エン タープライズ・エディション (EE) CD-ROM には、90 日試用バージョンの DB2 ユニ バーサル・データベース (UDB) エンタープライズ・エディション (EE) が含まれて います。 DB2 UDB EE 90 日試用バージョンは評価のために提供されており、 DB2 コネクトを機能させるために必要なものではありません。 90 日試用バージョンの DB2 UDB EE をインストールし、ライセンス交付バージョン への アップグレードを決めた場合は、DB2 UDB EE 製品を購入して DB2 UDB EE ラ イセンス・キーを インストールしなければなりません。 製品を再インストールす る必要はありません。 ライセンス・キーのインストールの説明は、 UNIX Quick Beginnings ブックの DB2 EE または DB2 CEE に示されています。 コネクト EE の インストールとともに試用 UDB EE 製品もインストールするが、 UDB EE を永続的 にインストールしたままにしない場合は、 EE 90 日試用バージョンを以下の手順で 除去することができます。 DB2 UDB EE の試用バージョンを除去した場合でも、 DB2 コネクト EE の機能には影響ありません。 DB2 UDB EE バージョン 7 を除去するには、 それぞれのプラットフォームから以下 のファイル・セットをアンインストールしてください。 * AIX では db2_07_01.elic ファイル・セット * NUMA-Q および Solaris オペレーティング環境では db2elic71 パッケージ * Linux では db2elic71-7.1.0-x RPM * HP-UX では DB2V7ENTP.elic ファイル・セット DB2 UDB EE バージョン 6 を除去するには、 それぞれのプラットフォームから以下 のファイル・セットをアンインストールしてください。 * AIX では db2_06_01.elic ファイル・セット * NUMA-Q および Solaris オペレーティング環境では db2elic61 パッケージ * Linux では db2elic61-6.1.0-x RPM * HP-UX では DB2V6ENTP.elic ファイル・セット ------------------------------------------------------------------------ 4.30 コード・ページおよび言語サポート情報 - 訂正 概説およびインストールの資料の付録、各国語サポート (NLS) に記載されているコ ード・ページおよび 言語サポートには、次の誤りがあります。 * 列見出しの「国別コード」は「国 / 地域別コード」と読み替える必要があり ます。 * 列見出しの「言語」は「言語 / スクリプト」と読み替える必要があります。 * スロベニア共和国のコードは、表に示されているように、「si」ではなくて、 「sl」です。 ------------------------------------------------------------------------ データ・リンク・マネージャー 概説およびインストール ------------------------------------------------------------------------ 5.1 AIX 5.1 でのサポート AIX 5.1 では、データ・リンク・ファイル・マネージャーおよびファイル・フィル ターのコンポーネントが 完全にサポートされるようになりました。現在 AIX 5.1 では、データ・リンクに関連したすべての ツールと命令、および AIX の以前の各 リリースでかつてサポートされていたすべてのツールと命令が 完全にサポートされ て適用可能となっています。 ------------------------------------------------------------------------ 5.2 Dlfm 開始の失敗のメッセージ :「接頭部の afsfid を取得中にエラー」 DCE-DFS 環境でデータ・リンク・マネージャーを実行していて、 dlfm start が次 のエラーで失敗した場合は、IBM サービスに連絡してください。 afsfid を接頭部として取得中のエラー "dlfm add_prefix" を使用してデータ・リンク・マネージャーに登録された DFS フ ァイル・セットを削除すると、このエラーが起きる可能性があります。 ------------------------------------------------------------------------ 5.3 アーカイブ・ファイルへの Tivoli Storage Manager クラスの設定 アーカイブ・ファイルに対して使用する TSM 管理クラスを指定するには、 DLFM_TSM_MGMTCLASS DB2 レジストリー項目を、適切な管理クラス名に設定してくだ さい。 ------------------------------------------------------------------------ 5.4 DFS クライアント・イネーブラーのディスク・スペース要件 DFS クライアント・イネーブラーは、DB2 ユニバーサル・データベースの クライア ントまたはサーバー・インストール中に選択可能なオプションのコンポーネントで す。 DFS クライアント・イネーブラーは DB2 UDB クライアントまたはサーバーを 使用せずに実行できますが、 DB2 ユニバーサル・データベースのクライアントまた はサーバー製品をインストールせずに DFS クライアント・イネーブラーをインスト ールすることはできません。 DFS クライアント・イネーブラー・コード用に 2MB のディスク・スペースが必要であり、 DFS クライアント・イネーブラーを DB2 ラ ンタイム・クライアント・インストールの一部として インストールする場合は、さ らに追加の 40 MB が必要です。 DFS クライアント・イネーブラーを DB2 管理クラ イアントまたは DB2 サーバー・インストールの 一部としてインストールする場 合、さらに多くのディスク・スペースが必要となります。 DB2 ユニバーサル・デー タベース製品群のディスク・スペース要件に関する詳細については、 DB2 (UNIX 版) 概説およびインストールマニュアルを参照してください。 ------------------------------------------------------------------------ 5.5 AIX におけるデータ・リンク・ファイル・マネージャー・バックエンド・プロ セスのモニター dlfm see コマンドの出力に変更がありました。 AIX 上でデータ・リンク・ファイ ル・マネージャー・バックエンド・プロセスをモニターするのに このコマンドを実 行した場合、以下のような出力が戻されます。 PID PPID PGID RUNAME UNAME ETIME DAEMON NAME 17500 60182 40838 dlfm root 12:18 dlfm_copyd_(dlfm) 41228 60182 40838 dlfm root 12:18 dlfm_chownd_(dlfm) 49006 60182 40838 dlfm root 12:18 dlfm_upcalld_(dlfm) 51972 60182 40838 dlfm root 12:18 dlfm_gcd_(dlfm) 66850 60182 40838 dlfm root 12:18 dlfm_retrieved_(dlfm) 67216 60182 40838 dlfm dlfm 12:18 dlfm_delgrpd_(dlfm) 60182 1 40838 dlfm dlfm 12:18 dlfmd_(dlfm) DLFM SEE 要求は失敗しました。 括弧で囲まれた名前は dlfm インスタンスの名前で、この場合 "dlfm" です。 ------------------------------------------------------------------------ 5.6 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: DCE-DFS 環境における追加のインストールの注意点 「インストールの前提条件」セクションで、以下の新規情報を追加してください。 e-fix for DFS 3.1 または PTF set 1(使用可能な場合) の いずれかをインストールする必要があります。e-fix は以下から入手できます。 http://www.transarc.com/Support/dfs/datalinks/efix_dfs31_main_page.html また、 データ・リンク・マネージャーをインストールする前に、DFS クライアントを実行する 必要があります。 db2setup または smitt を使用してください。 「Keytab ファイル」セクションで、以下のように訂正してください。 基本およびパスワード情報を含む keytab ファイルは、 datalink.ktb という名前にし .... 下の例では、正しい名前: datalink.ktb を使用しています。 DLMADMIN インスタン スが作成されるまでは Keytab ファイルの作成は行われないので、 「Keytab ファ イル」セクションは 「DCE-DFS インストール後の作業」の下に移動します。 「データ・リンク・ファイル・マネージャー サーバーおよびクライアント」という セクションで、 データ・リンク・マネージャー・サーバーはデータ・リンク・マネ ージャー・クライアントよりも先に インストールする必要があります。 「バックアップ・ディレクトリー」という新規セクションが追加されます。 バックアップ方式がローカル・ファイル・システムの場合、バックアップ・ ディレクトリーは DFS ファイル・システムのディレクトリーでなければなりません。 この DFS ファイル・セットが DFS 管理者によって作成されたことを確認してください。 DMLFS ファイル・セットであってはいけません。 ------------------------------------------------------------------------ 5.7 "dlfm add_prefix" コマンドの失敗 DCE/DFS 環境で稼働するデータ・リンク・マネージャーの場合、 dlfm add_prefix コマンドは 戻りコード -2061 (バックアップの失敗) で失敗する可能性がありま す。 これが起きた場合は、以下のステップを実行します。 1. dlfm stop コマンドを実行して、データ・リンク・マネージャー・デーモン・ プロセスを停止する。 2. dlfm stopdbm コマンドを実行して、DB2 プロセスを停止する。 3. dce_login root コマンドを実行して、dce root 認証を取得する。 4. dlfm startdbm コマンドを実行して、DB2 プロセスを開始する。 5. dlfm add_prefix コマンドを実行して、ファイル・セットをデータ・リンク・ マネージャーと一緒に登録する。 6. dlfm start コマンドを実行して、データ・リンク・マネージャー・デーモ ン・プロセスを開始する。 ------------------------------------------------------------------------ 5.8 dlfm 停止時にコピー・デーモンが停止しないなど、まれな現象が発生した場合 これは、ユーザーが dlfm を実行したか、または異常終了が発生したなどの場合に dlfm_copyd (コピー・デーモン) が 停止しないなど、非常にまれな状況で発生する ことがあります。 これが発生した場合、dlfm を再起動させようとする前に dlfm のシャットダウン命令を実行してください。 ------------------------------------------------------------------------ 5.9 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: db2setup ユーティリティーを使用して DB2 データ・リンク・マネージャーをイン ストール 「DB2 データベース DLFM_DB 作成」セクションで、DLFM_DB は DCE_DFS 環境に作 成されません。 これは、インストール後のステップとして実行されます。 「DCE-DFS 開始前の DMAPP の登録」セクションで、 ステップ 2 は以下のように変 更されます。 2. DFS の開始時に DMAPP が開始されることを確認するために、 コマンドが /opt/dcelocal/tcl/user_cmd.tcl に追加されます。 ------------------------------------------------------------------------ 5.10 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: DCE-DFS インストール後の作業 「データ・リンク・マネージャーのインストール」という新規セクションが追加さ れます。 データ・リンク・マネージャー・サーバーで、インストールを完了するために 以下 のステップを実行する必要があります。 1. 「DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成」 章の 「DCE-DFS 環境における追加のインストールの注意点」セクションの 「Keytab ファイル」 に記されている方法で、Keytab ファイルを作成する。 2. root で、以下のコマンドを入力して DMAPP を開始する。 stop.dfs all start.dfs all 3. 以下のように dce root 認証を使用して "dlfm setup" を実行する。 a. データ・リンク・マネージャー管理者: DLMADMIN でログインする。 b. root で、dce_login を実行する。 c. 次のコマンドを入力する: dlfm setup データ・リンク・マネージャー・クライアントで、インストールを完了するために 以下のステップを実行する必要があります。 1. 「DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成」 章の 「DCE-DFS 環境における追加のインストールの注意点」セクションの 「Keytab ファイル」 に記されている方法で、Keytab ファイルを作成する。 2. root で、以下のコマンドを入力して DMAPP を開始する。 stop.dfs all start.dfs all ------------------------------------------------------------------------ 5.11 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: smit を使用して DB2 データ・リンク・マネージャーを手動でインストール 「SMIT インストール後の作業」セクションのステップ 7 で、 "dce_login root" コマンドを "dlfm setup" の前に実行するようにしてください。 ステップ 11 は必 要ありません。 このステップは、ステップ 6 (dlfm server_conf) または ステッ プ 8 (dlfm client_conf) が完了すると自動的に実行されます。 ステップ 12 (dlfm start) も除去してください。 インストールを完了するには、以下のステッ プを実行します。 1. 「DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成」 章の 「DCE-DFS 環境における追加のインストールの注意点」セクションの 「Keytab ファイル」 に記されている方法で、Keytab ファイルを作成する。 2. root で、以下のコマンドを入力して DMAPP を開始する。 stop.dfs all start.dfs all ------------------------------------------------------------------------ 5.12 DB2 データ・リンク DFS クライアント・イネーブラー 「DFS クライアント・イネーブラーの構成」セクションのステップ 2 に 次の情報 を追加してください。 "secval" コマンドを実行すると、通常は構成を完了します。 ただし、マシンをリブートする必要があるかもしれません。 READ PERMISSION DB ファイルにアクセス中に問題が起きた場合は、 DB2 DFS クライアント・イネーブラーをインストールしたマシンをリブートしてください。 ------------------------------------------------------------------------ 5.13 DB2 データ・リンク・マネージャー (Solaris 版) のインストールおよび構成 DB2 データ・リンク・マネージャー (Solaris 版) のインストール後に、次の アク ションを実行する必要があります。 1. 以下の 3 行を /etc/system ファイルに追加する。 set dlfsdrv:glob_mod_pri=0x100800 set dlfsdrv:glob_mesg_pri=0xff set dlfsdrv:ConfigDlfsUid=UID UID は id dlfm のユーザー ID を表します。 2. 変更を有効にするために、マシンをリブートする。 ------------------------------------------------------------------------ 5.14 Windows NT のデータ・リンクでのアドミニストレーター・グループ権限 Windows NT では、データ・リンクを使用してリンクされたファイルに関しては、 dlmadmin ユーザー は UNIX での root ユーザーがほとんどの機能について持って いるのと同じ権限を持ちます。 下の表にこの 両方が比較されています。 操作 Unix (root) Windows NT (dlmadmin) 名前変更 Yes Yes トークンなしでファイル Yes Yes にアクセス 削除 Yes いいえ (下の注を参照) 更新 Yes いいえ (下の注を参照) 注:NTFS は、読み取り専用ファイルにこれらの操作を許していません。 dlmadmin ユーザーは、 そのファイルへの書き込み許可を使用可能にすることで、これ らの操作を正常に行えるようにできます。 ------------------------------------------------------------------------ 5.15 データ・リンク・ファイル・システム・フィルター (DLFF) インストールのロ ギングの最小化 データ・リンク・ファイル・システム・フィルター (DLFF) インストールのロギン グを、 dlfs_cfg ファイルを変更することで最小化することが できます。dlfs_cfg ファイルは、ドライバーと 構成パラメーターをロードするために strload ルーチ ンに渡されます。 ファイルは /usr/lpp/db2_07_01/cfg/ ディレクトリーに ありま す。記号リンクを経由すると、ファイルは /etc ディレクトリーにも 見つかりま す。dlfs_cfg ファイルの形式は次の通りです。 d - 0 1 説明: d d パラメーターは、ドライバーをロードすることを指定します。 driver-name driver-name はロードする全パスです。たとえば、DB2 バージョン 7 の全パ スは /usr/lpp/db2_07_01/bin/dlfsdrv です。ドライバーの名前は dlfsdrv です。 vfs number /etc/vfs にある DLFS の vfs 項目です。 dlfm id これは、データ・リンク・マネージャー管理者のユーザー ID です。 global message priority DLFS ドライバーの構成可能パラメーターです。これは、システム・ログ・フ ァイルに 記録されるメッセージ・カテゴリーのリストを定義します。 global module priority DLFS ドライバーの構成可能パラメーターです。これは、システム・ログ・フ ァイルに 記録されるドライバー・ルーチン、VFS 操作、および Vnode 操作の リストを定義します。 0 1 0 1 は、このドライバーの非複製ノードを作成するためのマイナー番号です。 ノード名は、複製されたドライバー・ノード名にマイナー番号を付加すること で作成されます。 5 つ以内 (0-4) のマイナー番号を指定できます。 実際の例では、次のようになります。 d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,255,-1 - 0 1 ログに記録されるメッセージは、グローバル・メッセージ優先順位とグローバル・ モジュール優先順位の設定によって異なります。ログを最小化するために、グロー バル・ メッセージ優先順位を変更することができます。 使用可能なメッセージ優先順位は次の 4 つです。 #define LOG_EMERGENCY 0x01 #define LOG_TRACING 0x02 #define LOG_ERROR 0x04 #define LOG_TROUBLESHOOT 0x08 DLFF のメッセージの多くは、 メッセージ優先順位として LOG_TROUBLESHOOT を持 っています。 いくつかの構成例を次に示します。 緊急メッセージとエラー・メッセージが必要な場合は、dlfs_cfg 構成ファイルで グローバル・メッセージ優先順位を 5 (1+4) に設定してください。 d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,5,-1 - 0 1 エラー・メッセージだけが必要な場合は、グローバル・メッセージ優先順位を 4 に 設定してください。 d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,4,-1 - 0 1 DLFS のロギングを必要としない場合は、グローバル・メッセージ優先順位を 0 に 設定してください。 d /usr/lpp/db2_07_01/bin/dlfsdrv 14,208,0,-1 - 0 1 5.15.1 インストール後のメッセージのロギング インストール後に緊急、エラー、および障害追及メッセージを記録する必要がある 場合は、 dlfs_cfg ファイルを変更してください。 dlfs_cfg ファイルは /usr/lpp/db2_07_01/cfg ディレクトリーにあります。グローバル・メッセージ優先 順位 は 255 (最高の優先順位) または 13 (8+4+1) に設定してください。優先順位 を 13 (8+4+1) に 設定すると、緊急、エラー、および障害追及情報がログに記録さ れます。 グローバル・メッセージ優先順位を設定した後、DLFS フィルター・ファイル・シス テムを アンマウントし、dlfsdrv ドライバーを再ロードして、 新しい優先順位の 値がロード時に設定されるようにしてください。dlfsdrv ドライバーが 再ロードさ れたら、DLFS フィルター・ファイル・システムを再マウントする必要があります。 注:dlfs_cfg の設定は、dlfs_cfg ファイルは再び変更されるまで、 dlfsdrv ド ライバーの以後のロードのためにそのまま残されます。 5.15.2 Sun Solaris システム上でのログオンの最小化 dlfs_cfg ファイルが Sun(TM) Solaris(TM) システムからなくなりました。 代わり に、システム・ファイル /etc/syslog.conf に、 システム・メッセージを適切なロ グ・ファイルに転送するシステム・ログ・デーモン (syslogd) で使用される情報が 含まれます。 /etc/syslog.conf の kern.notice および kern.debug の項目をコメ ント化することにより、 DLFF インストールのためのロギングを最小化することが できます。 変更を有効にするには、syslogd を停止してから開始する必要がありま す。 カーネルの通知およびエラーをすべて再び活動化するには、 /etc/syslog.conf の kern.notice and kern.debug の項目のコメント化を解除し、再び syslogd の停 止、開始を行います。 ------------------------------------------------------------------------ 5.16 DATALINK リストア データベース・リストア後に行われるオフライン・バックアップのリストアは、 ロ ールフォワードの有無にかかわらず、早急な処理の調整は行いません。 そのような ケースでは、ファイル・リンク制御下のデータ・リンク列を持つ全表は データ・リ ンク調整保留 (DRP) 状態となります。 ------------------------------------------------------------------------ 5.17 データ・リンク・マネージャーの削除 指定のデータベースの DB2 データ・リンク・マネージャーを削除できるようになり ました。 データ・リンク関連のいくつかの SQL 要求の処理は、 バックアップ/リ ストアなどのユーティリティーと同様、 データベースに対して構成されたすべての DLM との通信に関係します。 以前は、DLM が操作不可能な場合であっても、 DB2 には構成された DLM を削除する機能がありませんでした。 これにより、SQL およ びユーティリティーの処理に余分なオーバーヘッドが かかっていました。 DLM が 追加されると、要求の処理でエンジンが DLM と通信していました。 これにより、 一部の SQL 要求 (たとえば、表、表スペース、データベースの削除など) の 障害 を招くおそれがありました。 ------------------------------------------------------------------------ 5.18 SMIT を使用して DLFM コンポーネントをアンインストールすると他のファイ ル・セットも除去される可能性があります DB2 (バージョン 5、6、または 7) をデータ・リンク・マネージャーがインストー ルされて いる AIX マシンからアンインストールする前に、以下を行ってくださ い。 1. root ユーザーで次のコマンドを使用して、/etc/vfs のコピーを作成する。 cp -p /etc/vfs /etc/vfs.bak 2. DB2 をアンインストールする。 3. root ユーザーで、ステップ 1 で作成したバックアップ・コピーを /etc/vfs と 置き換える。 cp -p /etc/vfs.bak /etc/vfs ------------------------------------------------------------------------ 5.19 開始する前のホスト名の判別 各 DB2 サーバーおよび各データ・リンク・サーバーの名前を判別する必要がありま す。 これらのホスト名を認識して、インストールを検証しなければなりません。 DB2 データ・リンク・ファイル・マネージャーに接続すると、 DB2 UDB サーバーは 以下の情報を DLFM に内部的に送信します。 * データベース名 * インスタンス名 * ホスト名 次に DLFM はこの情報を内部表と比較して、接続を許可するかどうかを決定しま す。 dlfm add_db コマンドによってデータベース名、インスタンス名、およびホス ト名の 組み合わせが DLFM に登録されている場合にのみ、接続が許可されます。 接続が許可されるのは、 このデータベース名、インスタンス名、およびホスト名の 組み合わせが dlfm add_db コマンドを使用し て DLFM に登録されている場合だけ です。 dlfm add_db コマンドに使用されるホスト名は、DB2 UDB サーバーが 内部 的に送信するホスト名と正確に一致していなければなりません。 以下の方法で入手した正確なホスト名を使用してください。 1. DB2 サーバーでホスト名コマンドを入力する。 たとえば、このコマンドは db2server を返します。 2. プラットフォームに応じて、以下のいずれかを行う。 o AIX の場合、host db2server コマンドを入力する。db2server は 直前 のステップで入手した名前です。 このコマンドは次のような出力を返し ます。 db2server.services.com is 9.11.302.341, Aliases: db2server o Windows NT の場合、nslookup db2server コマンドを入力する。 db2server は直前のステップで入手した名前です。 このコマンドは次の ような出力を返します。 Server: dnsserv.services.com Address: 9.21.14.135 Name: db2server.services.com Address: 9.21.51.178 o Solaris の場合、cat /etc/hosts | grep 'hostname' を入力する。 /etc/hosts に定義域名なしでホスト名を指定した場合、これは次のよう な出力を返します。 9.112.98.167 db2server loghost 定義域名を付けてホスト名を指定した場合、 上記のコマンドは次のよう な出力を返します。 9.112.98.167 db2server.services.com loghost dlfm add_db コマンドを使用して DB2 UDB データベースを登録するときは、 ホス ト名に db2server.services.com を使用してください。 dlfm add_db コマンドに他 の別名を使用すると、DLFM への DB2 サーバーの内部接続が失敗します。 データ・リンク・サーバーは、DB2 の "add datalinks manager for database database_alias using node hostname port port_number" コマンドを 使用して DB2 に登録します。 hostname はデータ・リンク・サーバーの名前です。 このコマンドでは、データ・ リンク・サーバーの有効な別名を使用できます。 このデータ・リンク・サーバーへ の参照である DATALINK 値で、 URL 値のホスト名を指定する必要があります。 つ まり、URL 値を DATALINK 列に割り当てるときは、 "add datalinks manager" コマ ンドに使用された名前と同じ名前を使用しなければなりません。 他の別名を使用す ると、SQL ステートメントが失敗します。 ------------------------------------------------------------------------ 5.20 データ・リンク・ファイル・マネージャーの操作: DB2 データベースから DB2 データ・リンク・マネージャーをドロップした後のクリーンアップ DROP DATALINKS MANAGER コマンドを使用して データベースから DB2 データ・リン ク・マネージャーをドロップしても、 このコマンドは DB2 データ・リンク・マネ ージャー上の 対応する情報をクリーンアップしません。 ユーザーは、データベー スにリンクされたファイルのリンク解除と バックアップ情報のガーベッジ・コレク ションを明示的に開始できます。 これは、dlfm drop_dlm コマンドを使って行うこ とができます。 このコマンドによって、特定のデータベースのすべての情報の非同 期削除が開始されます。 このコマンドを成功させるには、DB2 データ・リンク・マ ネージャーが 実行されている必要があります。 このコマンドは、必ず、DB2 デー タ・リンク・マネージャーのドロップ後にのみ 使用してください。 そうでない と、DB2 データ・リンク・マネージャーに関する重要な情報が失われ、 回復できな くなります。 特定のデータベースに対して、リンク解除処理と バックアップ情報のガーベッジ・ コレクションを開始するには、以下を行います。 1. DB2 データ・リンク・マネージャー管理者としてシステムにログオンする。 2. 次のコマンドを実行する。 dlfm drop_dlm database instance hostname 説明: database はリモート DB2 UDB データベースの名前。 instance はデータベースが存在するインスタンス。 hostname はデータベースが常駐する DB2 UDB サーバーのホスト名。 3. ログオフする。 このコマンドを使用すべきコンテキストを示す 完全な使用シナリオについては、「 コマンド解説書」を参照してください。 このコマンド用に新しいエラー・コードが作成されました (5.22, DLFM1001E (新規 エラー・メッセージ)を参照)。 ------------------------------------------------------------------------ 5.21 dlfm Client_conf が失敗した場合のユーザー処置 DLFM クライアント上で、dlfm client_conf が何らかの理由で失敗した場合、 DB2 カタログの "stale" 項目が原因となっている場合があります。 その問題を解決す るには以下のコマンドを実行します。 db2 uncatalog db db2 uncatalog node db2 terminate その後 dlfm client_conf を再実行してください。 ------------------------------------------------------------------------ 5.22 DLFM1001E (新規エラー・メッセージ) DLFM1001E: drop_dlm 処理でエラーが発生しました。 原因: データ・リンク・マネージャーが指定のデータベースのリンク解除処理と ガーベッ ジ・コレクション処理を開始できませんでした。 これは、以下のいずれかの理由で 起きたことが考えられます。 * データ・リンク・マネージャーが実行されていない。 * データベース、インスタンス、およびホスト名の 無効な組み合わせがコマン ドに指定された。 * データ・リンク・マネージャーのコンポーネント・サービスのいずれかに 障 害がある。 処置: 以下のステップを実行してください。 1. データ・リンク・マネージャーが実行中であることを確認する。 まだ実行さ れていなければ、データ・リンク・マネージャーを始動する。 2. 登録されているデータベースが、データベース、インスタンス、 およびホス ト名の組み合わせによって識別されることを確認する。 これを行うには、 デ ータ・リンク・マネージャーで "dlfm list registered databases" コマンド を 使用してください。 3. 引き続きエラーが発生する場合、db2diag.log ファイルの情報を参照して、 コンポーネント・サービス (たとえば、接続管理サービス、トランザクション 管理サービスなど) が 失敗したかどうかを確認する。 db2diag.log のエラ ー・コードを書き留め、そのエラー・コードに対して 推奨される適切な処置 を行ってください。 ------------------------------------------------------------------------ 5.23 DLFM セットアップ構成ファイル・オプション dlfm セットアップ dlfm.cfg オプションが除去されました。 文書内のこのオプシ ョンへの参照は無視されます。 ------------------------------------------------------------------------ 5.24 ファイルのリストア中に起こりうる問題 問題: 同じファイルの別のバージョンが、異なるときにデータベースにリンクされ ると、 データ・リンク・ファイル・マネージャー (DLFM) 検索デーモンは、データ ベースがリストアされるときに アーカイブから正しいバージョンのファイルを検索 できません。 背景: データベースがバックアップ・イメージからリストアされるときに、 バック アップ・イメージにリンクされたファイルもまた、アーカイブからデータ・リン ク・ファイル・システム (DLFS) にリストアされます。データ・リンク・マネージ ャーの検索およびリストアのプロセスがどのように機能するかを次に説明します。 * ディスク上のファイルの現行バージョンの最終変更時刻とサイズ属性が、 ア ーカイブからリストアされたファイルの属性と異なる 場合、 ディスク上の現 行ファイルはファイルの異なるバージョンとして扱われます。 ディスク上の 現行ファイルは filename.MOD として保管され、 DLFM アーカイブからのオリ ジナル・バージョンのファイルがリストアされます。 たとえば、現行ファイ ル名がabc である場合、abc は abc.MOD にコピーされます。 * ディスク上の現行ファイルの最終変更時刻とサイズ属性が、アーカイブからリ ストアされたファイルの属性と同じ である場合、 データ・リンク検索デーモ ンはファイルが変更されていないものと想定し、 アーカイブからのファイル のバージョンをリストアしません。 重要: ファイルを変更するのは可能ですが、 最終変更時刻とサイズ属性を変更する ことはできません。 ファイル・サイズに影響しない変更により「隠れた変更」がな され、 最終変更時刻属性を元のファイルと同じ属性にリセットします。 例: DBTEST というデータベースがあり、 DATALINK 列を持つ表を含むとします。以 下の作業をリストされている順に実行します。 1. DLFS マウント・ボリュームの fileA というファイルを作成する。これがファ イルの最初のバージョンです。 2. fileA の参照 (URL) を DBTEST データベースに挿入する。 3. DBTEST データベースのバックアップを取る。 4. fileA 参照を DBTEST データベースから削除する。 5. DLFS マウント・ボリュームから fileA を削除する。 6. DLFS マウント・ボリュームの fileA という別のファイルを作成する。 これ がファイルの 2 番目のバージョンです。 7. fileA の参照 (URL) を DBTEST データベースに挿入する。 8. DBTEST データベースをバックアップ・イメージからリストアする。 DLFM 検索デーモンは fileA の 2 番目のバージョンを fileA.MOD にコピーし、次 に、 fileA の最初のバージョンをアーカイブから DLFS マウント・ボリュームに作 業中の fileA としてコピーします。 ただし、fileA の両方のバージョンが同じ最終変更時刻とサイズ属性を持つ場合、 それらのファイルは実際同じバージョンであると想定され、DLFM 検索デーモンは何 も行いません。 結果として、最初のバージョンではなく 2 番目のバージョンのファイルが、 DLFS マウント・ボリュームに残ります。実際は、ファイル・システムは バックアップ時 と同じ状態にリストアできません。 解決策: アプリケーションが、ファイルを、同じ属性 (最終変更時刻およびサイズ) を持つ新規バージョン・ファイルと置換していないことを確認します。 ------------------------------------------------------------------------ 5.25 AIX 上でのデータ・リンク/DFS スクリプト dmapp_prestart 実行時エラー データ・リンク /DFS スクリプト dmapp_prestart を実行して、 コマンド /usr/sbin/cfgdmepi -a "/usr/lib/drivers/dmlfs.ext" が、戻りコード 1 で失敗した場合、DFS 3.1 ptfset1 をインストールして cfgdmepi を修正してください。 ------------------------------------------------------------------------ 5.26 Tivoli Space Manager とデータ・リンクとの統合 DB2 Data Links Manager は、Tivoli Space Manager の機能を 利用できるようにな りました。Tivoli Space Manager Hierarchical Storage Manager (HSM) の クライ アント・プログラムは、適格ファイルを自動的に移行して、 ローカル・ファイル・ システム上に特定のレベルのフリー・スペースを保持します。 クライアント・プロ グラムは、アクセス時に移行済みファイルを自動的に再呼び出しして、 ユーザーが 特定のファイルを移行して再呼び出しすることを許可します。 この機能の前提条件は、Tivoli Space Manager バージョン 4.2 です。 この新しい機能は、定期的に 3 次記憶域に移動する必要のある大規模なファイルの ある ファイル・システムを持っているために、ファイル・システムのスペースを管 理する 必要のあるお客様には役立ちます。現在 Tivoli Space Manager は、 多く のお客様に 3 次記憶域を管理する手段を提供しています。Tivoli Space Manager の DB2 データ・リンク・マネージャー・サポートが新しくなり、DATALINK ファイ ルのスペース管理の 柔軟性が大幅に向上しました。Tivoli Space Manager では DB2 データ・リンク・マネージャーのファイル・システムに 格納する可能性のある すべてのファイルに前もって十分な記憶域を割り当てられることはなく、代わりに データ・リンク管理ファイル・システムの割り当てを一定期間にわたって調整する ことができる ようになるので、通常の使用時に誤ってファイル・システムを一杯に してしまう危険がありません。 ファイル・システムにデータ・リンクと HSM サポートを追加する Hierarchical Storage Management (HSM) でファイル・システムを登録すると きは、 最初に HSM で登録してから、データ・リンク・ファイル・マネージャ ーで 登録してください。 1. HSM で、コマンド "dsmmigfs add /fs" を使って登録する。 2. DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 ファイル・システムのデータ・リンク・サポートは、以下を入力すると HSM ファイル・システムのスタンザ /etc/filesystems に反映されます。 vfs = dlfs mount = false options = rw,Basefs=fsm nodename = - 既存の HSM ファイル・システムにデータ・リンク・サポートを追加する DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 既存のデータ・リンク・ファイル・システムに HSM サポートを追加する 1. HSM で、コマンド "dsmmigfs add /fs" を使って登録する。 2. DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 データ・リンク HSM ファイル・システムからデータ・リンク・サポートを除去する コマンド "dlfmfsmd -j /fs" を使ってデータ・リンク・サポートを除去す る。 データ・リンク HSM ファイル・システムから HSM サポートを除去する 1. コマンド "dsmmigfs remove /fs" を使って HSM サポートを 除去する。 2. データ・リンク・サポート、"dlfmfsmd -j /fs" を除去する。 3. DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 データ・リンク HSM ファイル・システムからデータ・リンクと HSM サポートを 除 去する 1. コマンド "dsmmigfs remove /fs" を使って HSM サポートを 除去する。 2. コマンド "dlfmfsmd -j /fs" を使ってデータ・リンク・サポートを除去 する。 5.26.1 制約事項と制限 現在、この機能は AIX でのみサポートされています。 FC (読み取り許可 DB) リンク・ファイルの選択移行 (dsmmigrate) および再呼び出 しが行えるのは、ルート・ユーザーのみです。 読み取り許可 DB ファイルの場合のファイル所有者がデータ・リンク・マネー ジャー 管理者 (dlfm) の場合、選択したファイルの移行を行えるのは、ファ イル所有者のみです。 そうしたファイルをアクセスするには、 ホスト・デー タベース・サイドからのトークンが必要です。トークンを必要としない唯一の ユーザーは 「ルート」ユーザーです。「ルート」ユーザーの場合は、読み取 り許可 DB ファイルで、 選択移行を行って再呼び出しするほうが簡単です。 dlfm ユーザーは、 最初のときに限り、有効なトークンを使って FC ファイル を移行することが できます。2 回目にマイグレーションを試行すると (再呼 び出し後に)、操作は失敗し、 エラー・メッセージ "ANS1028S 内部プログラ ム・エラーです。 サービス担当者に連絡してください。" が表示されます。 ルート以外のユーザーが FC ファイルで dsmmigrate を実行しても失敗しま す。ファイル・サーバー上の ファイルにアクセスするのは通常は管理者であ るため、これは重大な制限ではありません。 dlfs は fsm にマウントされていますが、stat および statfs システム呼び出し は、 fsm として dlfs ではなく Vfs のタイプを示します。 上記の動作は、ファイル・システムで statfs を実行して、その Vfs タイプ が fsm であるかどうかを チェックする dsmrecalld デーモンの通常の機能で す。 最小 inode 番号を持つファイルが FC (読み取り許可 DB) リンクされている 場 合、コマンド "dsmls" は出力を表示しません。 dsmls コマンドは ls コマンドに 類似し、TSM が管理するファイルをリスト します。ユーザー処置は必要ありません。 ------------------------------------------------------------------------ 5.27 第 4 章 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび 構成 5.27.1 一般的なインストールの注意点 5.27.1.1 DB2 ファイル・マネージャー・バージョン 5.2 から DB2 データ・リン ク・マネージャー・バージョン 7 への移行 ステップ 3 の情報に誤りがあります。 ステップ 3 は次のようになります。 "3. DLFM 管理者として /usr/lpp/db2_07_01/adm/db2dlmmg コマンドを実行しま す。 ------------------------------------------------------------------------ 5.28 第 6 章 AIX でのインストールの検査 5.28.1 NFS 環境での回避策 このセクションでは、NFS 環境で DB2 データ・リンク・マネージャー (AIX 版) を 実行した場合に 起こる既知の問題 (現行の資料には記載されていないもの) の回避 策について説明します。 これらの問題は NFS に固有のものであり、DB2 データ・ リンク・マネージャー または DB2 ユニバーサル・データベースとは無関係です。 追加の NFS キャッシングが行われるという問題 AIX 用の NFS クライアントでは 2 つの異なるキャッシュが保守されます。 NFS クライアントは、最近アクセスされたファイルとディレクトリーの属性が 入っているキャッシュを 保守します。 このクライアントは、クライアント上 のファイルの内容をキャッシングするためのデータ・キャッシュも オプショ ンでサポートします。 この属性キャッシング処理のために、NFS クライアント上で は READ PERMISSION DB ファイルのリンク後に正常でない条件が発生する場合がありま す。 READ PERMISSION DB ファイルがリンクされる前にそのマシンに接続した 場合には、 アクセス制御トークンなしでもこのファイルにアクセスできるこ とがあります。 無許可のファイル・アクセスが行われる可能性を少なくする ために、以下の方法のいずれかを 使用してください。 o SQL INSERT ステートメントを実行してリンクを設定する前に、 このフ ァイルに対して touch コマンドを使用する。 o このファイルを含んでいるディレクトリーに対して touch コマンドを 使用する。 o mount コマンドを 5 つの 属性キャッシュ構成パラメーター (actimeo、 acregmin、acregmax、acdirmin、およ び acdirmax) のいずれか 1 つと 一緒に使用して、キャッシュ内の属性がファイルまたは ディレクトリー の変更後も保存されている時間を最小化する。 READ PERMISSION DB ファイルへの無許可アクセスに気付く可能性が最も高い のは、 データ・リンク機能のテスト中です。なぜなら、リンクされているフ ァイルは 1 つだけ で、NFS アクティビティーはほとんど発生しないからで す。実稼働環境では、このようなシナリオに 遭遇する可能性は低くなりま す。なぜなら、大量の NFS アクティビティーが発生するために、通常は すべ てのリンク・ファイルの属性が NFS 属性キャッシュに保存されているわけで はないからです。 ------------------------------------------------------------------------ インストールおよび構成補足 ------------------------------------------------------------------------ 6.1 第 5 章 UNIX オペレーティング・システムへの DB2 クライアントのインスト ール 6.1.1 HP-UX カーネル構成パラメーター HP-UX カーネル・パラメーターの推奨設定として、 msgmbn と msgmax を 65535 以 上に 設定するよう記述されていますが、これは正しくありません。 どちらのパラ メーターも 65535 に設定する必要があります。 ------------------------------------------------------------------------ 6.2 第 12 章 お持ちのアプリケーションの実行 6.2.1 ランタイム・クライアントを使用するデータベース・ユーティリティーのバ インド ランタイム・クライアントを使用して、データベース・ユーティリティー (インポ ート、エクスポート、 REORG、コマンド行プロセッサー)、および DB2 CLI バイン ド・ファイルを、データベースとともに使用する前に 各データベースにバインドす ることはできません。 代わりに DB2 管理クライアント、または DB2 アプリケーシ ョン開発クライアントを 使用してください。 データベース・ユーティリティーおよび DB2 CLI バインド・ファイルを、 各デー タベースとともに使用する前にそれらのデータベースにバインドしなければなりま せん。 ネットワーク環境では、異なるオペレーティング・システムで実行している 複数のクライアントを使用しているか、または異なるバージョンやサービス・レベ ルの DB2 を使用している場合、各オペレーティング・システムと DB2 のバージョ ンの 組み合わせに対して、ユーティリティーを一度ずつバインドしなければなりま せん。 6.2.2 ODBC を使用しての DB2 への UNIX クライアント・アクセス 第 12 章 (「お持ちのアプリケーションの実行」) で、ODBC クライアント・アプリ ケーション または ODBC SDK で ODBC ドライバー・マネージャーをインストールす る場合は、 odbcinst.ini を更新しなければならないという記述があります。 これ は一部誤っています。ODBC ドライバー・マネージャー製品をインストールする際 は、 odbcinst.ini を更新する必要はありません。 ------------------------------------------------------------------------ 6.3 第 24 章 複数データ・ソース・アクセス用の統合システムのセットアップ 6.3.1 統合システム DB2 統合システムは特殊なタイプの分散データベース管理システム (DBMS) です。 統合システムでは、他の DBMS (Oracle、Sybase、Microsoft SQL Server など) に ある データを照会および検索することができます。統合システムを使用すると、他 の DBMS 上にあるデータを 照会および検索できます。単一の SQL ステートメント で複数の DBMS 参照も 個々のデータベース参照も行えます。たとえば、DB2 ユニバ ーサル・データベース、Oracle、および Sybase 視点にあるデータを結合すること ができます。 DB2 統合システムは、DB2 インスタンスをもつサーバー、統合データベースとして 動作するデータベース、 および 1 つ以上のデータ・ソースから構成されていま す。 この統合データベースには、データ・ソースとその特性を識別するカタログ項 目が含まれています。 データ・ソース は 1 つの DBMS とデータから 構成されま す。 サポートされているデータ・ソースとしては、次のものが挙げられます。 * Oracle * Sybase * Microsoft SQL Server * Informix * DB2 ユニバーサル・データベース・ファミリーのメンバー (DB2 (OS/390 版)、DB2 (AS/4000 版)、およ び DB2 (Windows 版) など) DB2 ユニバーサル・データベース統合サーバーは、データ・ソースとの通信および データ・ソースからの データ検索にラッパー と呼ばれるプロトコルを使用しま す。 使用するラッパーは、DB2 インスタンスが稼動しているオペレーティング・シ ステムによって異なります。 ニックネーム は、データ・ソースにある表および視 点を 識別するのに使用されます。アプリケーションは、他のあらゆる DB2 データ ベースに接続するのと まったく同じようにして統合データベースに接続できます。 また、統合データベースの表や視点であるかのように、 ニックネームを使用してデ ータ・ソースを照会できます。 統合システムがセットアップされてからは、データが単一のローカル・データベー ス内にあるかの ように各データ・ソース内の情報にアクセスできます。 ユーザー およびアプリケーションは統合データベースに照会を送信し、データ・ソースから の データ検索はこの統合データベースが行います。 DB2 統合システムはいくつかの制限のもとで動作します。 分散要求は、DB2 バージ ョン 7 では読み取り専用操作に制限されています。 また、ニックネームに対して ユーティリティー操作 (LOAD、REORG、REORGCHK、IMPORT、 RUNSTATS など) を実行 することはできません。 ただし、パススルー機能を使用すると、そのデータ・ソー スに関連する SQL ダイアレクトに よって DDL および DML ステートメントを直接 DBMS に実行依頼することができます。 6.3.2 制約事項 バージョン 7.2 の新しいラッパー (AIX、HP、および Solaris での Informix、 Linux、 HP、および Solaris での Oracle、AIX および Solaris での Sybase、AIX および NT で の Microsoft SQL Server など) は、このフィックスパックでは入手 できませ ん。DB2 リレーショナル・コネクト バージョン 7.2 を購入する必要があ ります。 6.3.3 DB2 リレーショナル・コネクトのインストール このセクションでは、統合システム・サーバーとして使用するサーバーに DB2 リレ ーショナル・コネクトを インストールする方法を説明します。Oracle、Sybase、 Microsoft SQL Server、およ び Informix データ・ソースにアクセスするにはリレ ーショナル・コネクトが必要です。 DB2 ユニバーサル・データベース・ファミリー のメンバーへのアクセスの場合 は DB2 リレーショナル・コネクトは必要ありませ ん。 DB2 リレーショナル・コネクトをインストールする前に、次のことを行ってくださ い。 * DB2 ユニバーサル・データベース・エンタープライズ・エディション または DB2 ユニバーサル・データベース・エンタープライズ -- 拡張エディションが 統合サーバー上に インストールされていることを確認してください。 DB2 (UNIX サーバー版) の場合 : DB2 ファミリーのデータベースを分散要求に組み込みたい場合、DB2 ユ ニバーサル・データベースの インストール時に「分散結合 (DB2 用)」 データ・ソース・オプションを 選択しておかなければなりません。この オプションがインプリメントされていることを確認するに は、 FEDERATED パラメーターが YES に 設定されているかどうかを調べま す。この設定 は、GET DATABASE MANAGER CONFIGURATION コマンドを発 行すれば 調べられます。このコマンドにより、パラメーターとその現行 設定値がすべて表示されます。 * 使用する統合サーバーに当該のデータ・ソース用のクライアント・ソフトウェ アが インストール済みであることを確認します。 6.3.3.1 Windows NT サーバーへの DB2 リレーショナル・コネクトのインストール 1. DB2 ユニバーサル・データベースのインストールを実行するために作成したユ ーザー・アカウントで 統合サーバーにログオンします。 2. セットアップ・プログラムが必要に応じてファイルを更新できるよう、 実行 中のプログラムをすべて終了します。 3. セットアップ・プログラムを呼び出します。 セットアップ・プログラムは自 動的に、または手操作で呼び出すことができます。 セットアップ・プログラ ムを自動的に開始できない場合、または別の言語でセットアップを 実行する 場合、手操作でセットアップ・プログラムを呼び出してください。 o セットアップ・プログラムを自動的に呼び出すには : a. DB2 リレーショナル・コネクト CD をドライブに挿入します。 b. 自動実行機能により、セットアップ・プログラムが自動的に開始さ れます。 システム言語が判別され、その言語用のセットアップ・ プログラムが立ち上がります。 o セットアップ・プログラムを手操作で呼び出すには: a. 「スタート」をクリックし、 「ファイル名を指定して実行」オプ ションを選択します。 b. 「名前」フィールドに次のコマンドを入力します。 x:\setup /i language 説明: x CD-ROM ドライブです。 language 使用する言語の国別 / 地域コード (英語であれば EN) で す。 c. 「OK」をクリックします。 インストール・ランチパッドが開きます。 4. 「インストール」をクリックして、インストール処理を開始します。 5. セットアップ・プログラムの指示にしたがってください。 インストールが完了すると、他の DB2 製品が入っているディレクトリーに DB2 リレーショナル・コネクトがインストールされます。たとえば、Oracle NET8 client ソフトウェア (net8.dll) のラッパー・ライブラリーは、 c:\Program Files\SQLLIB\bin ディレクトリーにインストールされます。 6.3.3.2 UNIX サーバーへの DB2 リレーショナル・コネクトのインストール DB2 リレーショナル・コネクトを UNIX 統合サーバーにインストールするに は、 db2setup ユーティリティーを使用します。 注 : db2setup ユーティリティーの使用時に表示される画面は、 その統合サーバー に何がインストール済みであるかによって異なります。 以下のステップは、リレー ショナル・コネクトがまだインストールされていないことを前提としています。 1. root 権限を持つユーザーでログインします。 2. DB2 製品 CD-ROM を挿入し、マウントします。 CD-ROM をマウントする方法 は、「DB2 for UNIX Quick Beginnings 」を 参照してください。 3. cd /cdrom コマンドを入力して、 CD-ROM がマウントされているディレクトリ ーに移動します (cdrom は、 使用している製品 CD-ROM のマウント・ポイン トです)。 4. ./db2setup コマンドを入力します。 少しして 「DB2 V7 のインストール」ウ ィンドウが開きます。このウィンドウには、現在インストール済みの項目と インストール可能な項目がリストされます。 5. インストールする分散結合 (たとえ ば、分散結合 (Informix データ・ソース 用) など) をナビゲートし、 スペース・バーを押して選択します。選択され ると、そのオプションの横にアスタリスクが表示されます。 6. 「了解」を選択します。「DB2 サービスの作成」ウィンドウが開きます。 7. 統合サーバーにはすでに DB2 インスタンスが含まれているので、 「DB2 イン スタンスを作成しない」オプションを選択して 「了解」を選択します。 8. 管理サーバーを作成しないようにしてあると、警告が表示されます。 「了解 」を選択します。「DB2 セットアップ・ユーティリティー」 ウィンドウに、 何がインストールされるのかについてのサマリー報告書が表示されます。 リ レーショナル・コネクトはまだインストールしていないので、以下の 2 つの 項目がリストされます。 o DB2 リレーショナル・コネクト用の製品シグニチャー o 選択したデータ・ソース用の分散結合 9. 「継続」を選択します。リレーショナル・コネクト・セットアップの開始を確 認するウィンドウが表示されます。「了解」を 選択してセットアップを継続 します。セットアップが完了するのに数分かかることがあります。 10. 「DB2 セットアップ・ユーティリティー」ウィンドウに、どのコンポーネント が正常にインストールされたか についての状況報告書が表示されます。「了 解」を選択します。 「DB2 セットアップ・ユーティリティー」ウィンドウが 開きます。 「クローズ」を選択し、次に「了解」を 選択してユーティリティ ーを終了します。 インストールが完了すると、他の DB2 製品が入っているディレクトリー に DB2 リレーショナル・コネクトがインストールされます。 o DB2 (AIX サーバー版) では、ディレクトリー は /usr/lpp/db2_07_01 です。 o DB2 (Solaris 操作環境サーバー版) では、ディレクトリー は /opt/IBMdb2/V7.1 です。 o DB2 (HP-UX サーバー版) では、ディレクトリー は /opt/IBMdb2/V7.1 です。 o DB2 (Linux サーバー版) では、ディレクトリー は /usr/IBMdb2/V7.1 です。 ------------------------------------------------------------------------ 6.4 第 26 章 Oracle データ・ソースへのアクセス AIX および Windows NT でのラッパーのサポートに加 え、DB2 ユニバーサル・デー タベースは Linux、Solaris 操作環境、および HP-UX で Oracle ラッパーを サポ ートするようになりました。このサポートは Oracle バージョン 8 に限定されてい ます。 これらのプラットフォーム用のラッパーにアクセスするには、V7.2 DB2 リ レーショナル・コネクト CD を 挿入して「分散結合 (Oracle データ・ソース用)」 を選択する必要があります。 DB2 リレーショナル・コネクトをインストールすると、Oracle データ・ソースを 統合サーバーに追加することができます。 1. Oracle クライアント・ソフトウェアを DB2 統合サーバーにインストールし、 構成します。 2. UNIX プラットフォーム上の DB2 統合サーバーの場合、djxlink スクリプトを 実行して、 Oracle SQL*Net または Net8 ライブラリーを DB2 統合サーバー にリンク・エディットし、 Oracle と併用するための DB2 統合ラッパー・ラ イブラリーを作成します。 3. db2dj.ini ファイルを作成または更新し、Oracle 用に環境変数を追加しま す。 このファイルに、ORACLE_HOME 環境変数の定義を含める必要がありま す。 4. (オプション) DB2_DJ_INI および DB2_DJ_COMM プロファイル・レジストリー 変数を設定します。 5. DB2 統合サーバー上の Oracle tnsnames.ora ファイルの場所と内容を確認 し、 Oracle sqlplus を使用して Oracle サーバーへの接続をテストします。 6. DB2 インスタンスを再生します。 7. ラッパーを作成します。 8. サーバー定義を作成します。 9. ユーザー・マッピングを作成します。 10. Set Passthru を使用して Oracle サーバーへの構成をテストします。 11. 表および視点のニックネームを作成します。 環境変数の設定を含め、上記のステップについての詳しい説明は、第 26 章 「DB2 インストールおよび構成補足」の 「Oracle データ・ソース・アクセス用の統合シ ステム・セットアップ」にあります。 この情報は、 http://www.ibm.com/software/data/db2/relconnect/ から オンラインでの入手も 可能です。 6.4.1 記述の誤り セクション「Oracle データ・ソースの統合システムへの追加」に以下の 誤りがあ ります。 * ブックのステップ 2 とステップ 3 の間に追加のステップが 1 つ必要です。 最初の 3 つのステップは、正しくは次の通りです。 1. Oracle クライアント・ソフトウェアを Oracle で提供された資料を使用 して DB2 統合システムに インストールおよび構成します。 2. ORACLE_HOME 環境変数を設定します。 export ORACLE_HOME=. 3. UNIX プラットフォームで実行される DB2 統合サーバーの場合、djxlink スクリプトを実行して、 Oracle SQL*Net または Net8 ライブラリーを DB2 統合サーバーにリンク・エディットします。 djxlink スクリプト は、プラットフォームに応じて以下の場所にあります。 /usr/lpp/db2_07_01/bin (AIX) /opt/IBMdb2/V7.1/bin (Solaris 操作環境) /opt/IBMdb2/V7.1/bin HP-UX /usr/IBMdb2/V7.1/bin (Linux) djxlink スクリプトは、Oracle のクライアント・ソフトウェアを DB2 統合サーバーにインストール した後にのみ実行してください。 4. データ・ソース環境変数を、db2dj.ini ファイルを変更し、 db2set コ マンドを発行することで設定します。 db2set コマンドは、DB2 プロフ ァイル・レジストリーを ユーザーの設定で更新します。 環境変数の設定についての詳しい説明は、第 26 章の 「DB2 インストー ルおよび構成補足」の 「Oracle データ・ソース・アクセス用の統合シ ステム・セットアップ」にあります。 5. ここからは、ブックに書かれている通りにステップ 3 から続きを行って ください。 * 資料では次のように設定するように指示されています。 DB2_DJ_INI = sqllib/cfg/db2dj.ini これは誤りで、正しくは次のように設定します。 DB2_DJ_INI = $INSTHOME/sqllib/cfg/db2dj.ini ------------------------------------------------------------------------ 6.5 Sybase データ・ソースへのアクセス Sybase データ・ソースを統合サーバーに追加する前に、Sybase Open Client ソフ トウェアを DB2 統合サーバーに インストールし、構成しておく必要があります。 Sybase Open Client ソフトウェアのインストール方法については、Sybase データ ベース・ソフトウェアに 付属の資料に記述されているインストール手順を参照して ください。 インストール手順の一部として、カタログ・ストアード・プロシージャ ーと Sybase Open Client ライブラリーを 組み込むことを忘れないでください。ク ライアント・ソフトウェアから Sybase サーバーへの接続の構成の後に、 Sybase ツールのいずれかを使用して接続のテストを行います。UNIX の場合は isql ツール を、 Windows の場合は SQL Advantage ツールを使用します。 統合サーバーをセットアップして、Sybase データ・ソースに保管されているデータ にアクセスするには: 1. DB2 リレーショナル・コネクト バージョン 7.2 をインストールします。 6.3.3, DB2 リレーショナル・コネクトのインストールを参照してください。 2. Sybase データ・ソースを統合サーバーに追加します。 3. Sybase コード・ページを指定します。 この章では、ステップ 2 および 3 が説明されています。 この章での説明は、Windows NT、AIX、および Solaris 操作環境に適用されます。 プラットフォーム固有の違いは、その都度示されています。 6.5.1 統合サーバーへの Sybase データ・ソースの追加 Sybase データ・ソースを統合サーバーに追加するには: 1. 環境変数を設定し、プロファイル・レジストリーを更新します (AIX および Solaris の場合のみ)。 2. DB2 を Sybase クライアント・ソフトウェアにリンクします (AIX および Solaris の場合のみ)。 3. DB2 インスタンスを再生します (AIX および Solaris の場合のみ)。 4. interfaces ファイルを作成し、セットアップします。 5. ラッパーを作成します。 6. オプション: DB2_DJ_COMM 環境変数を設定します。 7. サーバーを作成します。 8. オプション: CONNECTSTRING サーバー・オプションを設定します。 9. ユーザー・マッピングを作成します。 10. 表および視点のニックネームを作成します。 上記のステップは、このセクションで詳しく説明されています。 6.5.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 (AIX および Solaris の場合のみ) データ・ソース環境変数を、db2dj.ini ファイルを変更し、 db2set コマンドを実 行することで設定します。 db2dj.ini ファイルには、 統合サーバーにインストー ルされている Sybase クライアント・ソフトウェアについての構成情報がありま す。db2set コマンドは、DB2 プロファイル・レジストリーを あなたの設定で更新 します。 区分データベース・システムでは、特定インスタンスのすべてのノードに対して 単 一の db2dj.ini ファイルを使用、または 特定インスタンスの 1 つ以上のノードに 対して固有の db2dj.ini ファイルを 使用することができます。 非区分データベー ス・システムでは、 保持できる db2dj.ini ファイルはインスタンスごとに 1 つで す。 環境変数を設定するには: 1. sqllib/cfg にある db2dj.ini ファイルを 編集し、次の環境変数を設定しま す。 SYBASE="" ここで、 は Sybase クライアントがインストールさ れている ディレクトリーです。 2. db2set コマンドを実行して、DB2 プロファイル・レジストリーに 変更を適用 します。 このコマンド db2set の構文は、使用しているデータベース・シス テムによって 異なります。 このステップは、以下のデータベース・システム 構造のいずれかで db2dj.ini ファイルを使用している場合のみ必要です。 非区分データベース・システムで db2dj.ini ファイルを 使用しているか、 db2dj.ini ファイルを現行ノードにだけ適用したい場合、 次のコマンドを発 行します。 db2set DB2_DJ_INI=$HOME/sqllib/cfg/db2dj.ini 区分データベース・システムで db2dj.ini ファイルを 使用していて、 db2dj.ini ファイルの値をこのインスタンス内の すべてのノードに適用する 場合、次のコマンドを実行します。 db2set -g DB2_DJ_INI=$HOME/sqllib/cfg/db2dj.ini 区分データベース・システムで db2dj.ini ファイルを使用していて、 db2dj.ini ファイルの値を特定ノードに適用したい場合、 次を実行します。 db2set -i INSTANCEX 3 DB2_DJ_INI=$HOME/sqllib/cfg/node3.ini 説明: INSTANCEX インスタンスの名前です。 3 db2nodes.cfg ファイルにリストされているノード番号です。 node3.ini 内容と名前が変更されたバージョンの db2dj.ini ファイルです。 6.5.1.2 ステップ 2: Sybase クライアント・ソフトウェアへの DB2 のリンク (AIX および Solaris の場合のみ) Sybase データ・ソースにアクセスできるようにするには、DB2 統合サーバーが ク ライアント・ライブラリーにリンク・エディットされていなければなりません。 リ ンク・エディット処理は、統合サーバーが通信するデータ・ソースごとに ラッパー を作成します。 djxlink スクリプトを実行すると、ラッパー・ライブラリーが 作 成されます。 djxlink スクリプトを実行するには: djxlink 6.5.1.3 ステップ 3: DB2 インスタンスの再生 (AIX および Solaris の場合のみ) 環境変数がプログラムに設定されていることを確実にするには、DB2 インスタンス を再生してください。 インスタンスを再生すると、変更を受け入れられるよう DB2 インスタンスはリフレッシュされます。 DB2 インスタンスを再生するには、以下のコマンドを実行します。 DB2 (Windows NT サーバー版) の場合: NET STOP instance_name NET START instance_name DB2 (AIX および Solaris サーバー版) の場合: db2stop db2start 6.5.1.4 ステップ 4: interfaces ファイルの作成およびセットアップ interfaces ファイルを作成およびセットアップするには、そのファイルを 作成 し、アクセス可能にしなければなりません。 1. Sybase 提供のユーティリティーを使用して、アクセスしたいすべての Sybase Open Server の データを含む interfaces ファイルを作成します。 このユー ティリティーの使用法については、Sybase のインストール資料を参照してく ださい。 Windows NT では通常、このファイルの名前は sql.ini になります。 すべて のプラットフォームに共通の名前にするには、 作成したファイルの名前を sql.ini から interfaces に 変更してください。 名前を sql.ini から interfaces に 変更しない場合、IFILE パラメーター、またはステップ 8 で 説明されている CONNECTSTRING オプションを 使用しなければなりません。 AIX および Solaris システムの場合、このファイルの名前は /sqllib/interfaces になります。 2. この interfaces ファイルを、DB2 にアクセス可能にします。 DB2 (Windows NT サーバー版) の場合: このファイルを DB2 インスタンスの %DB2PATH% ディレクトリーに置き ます。 DB2 (AIX および Solaris サーバー版) の場合: このファイルを DB2 インスタンスの $HOME/sqllib ディレクトリーに 置きます。 ln コマンドを使用して、 DB2 インスタンスの $HOME/sqllib ディレクトリーから そのファイルにリンクします。 例: ln -s -f /home/sybase/interfaces /home/db2djinst1/sqllib 6.5.1.5 ステップ 5: ラッパーの作成 CREATE WRAPPER ステートメントを使用して、Sybase データ・ソースへのアクセス に 使用されるラッパーを指定します。 ラッパーとは、データ・ソースとの通信お よびデータ・ソースからの データ検索に統合サーバーが使用するメカニズムのこと です。 DB2 には、Sybase 用の 2 つのラッパー CTLIB と DBLIB があります。 CREATE WRAPPER ステートメントの例: CREATE WRAPPER CTLIB ここで CTLIB は、 Sybase Open Client ソフトウェアで使用されるデフォルト・ラ ッパー名です。 CTLIB ラッパーは Windows NT、AIX、および Solaris サーバーで 使用できます。 デフォルト・ラッパー名は、選択した名前で置換することができます。 ただし、こ れを行う場合、LIBRARY パラメーターおよび統合サーバーのラッパー・ ライブラリ ー名も CREATE WRAPPER ステートメントに組み込まなければなりません。 ラッパ ー・ライブラリー名について詳しくは、 「DB2 SQL 解説書」 で CREATE WRAPPER ステートメントを調べてください。 6.5.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の設定 Sybase データ・ソースにアクセスしているときのパフォーマンスを向上させるに は、 DB2_DJ_COMM 環境変数を設定してください。 この変数は、統合サーバーが初 期設定されるときにラッパーをロードするかどうかを 決定します。 DB2_DJ_COMM 環境変数を設定して、前のステップで指定したラッパーに対応する ラッパー・ライ ブラリーを組み込みます。 例: DB2 (AIX サーバー版) の場合: db2set DB2_DJ_COMM='libctlib.a' DB2 (Solaris サーバー版) の場合: db2set DB2_DJ_COMM='libctlib.so' 等号 (=) の両端にスペースがないことを確認します。 ラッパー・ライブラリー名について詳しくは、 「DB2 SQL 解説書」を 参照してく ださい。 DB2_DJ_COMM 環境変数について詳しくは、 「管理の手引き」を 参照して ください。 6.5.1.7 ステップ 7: サーバーの作成 CREATE SERVER ステートメントを使用して、アクセスしたいデータ・ソースを持つ Sybase サーバーを それぞれ定義します。 例: CREATE SERVER SYBSERVER TYPE SYBASE VERSION 12.0 WRAPPER CTLIB OPTIONS (NODE 'sybnode', DBNAME'sybdb') 説明: SYBSERVER Sybase サーバーに割り当てる名前です。 この名前は固有でなければなりませ ん。 SYBASE アクセスを構成するデータ・ソースのタイプです。 サポートされているデー タ・ソースは Sybase のみです。 12.0 アクセスする Sybase のバージョンです。 サポートされているバージョンは 10.0、11.0、11.1、11.5、11.9、および 12.0 です。 CTLIB CREATE WRAPPER ステートメントで指定したラッパー名です。 'sybnode' SYBSERVER があるノードの名前です。 interfaces ファイルからノードの値を 取得してください。 この値では、大文字小文字が区別されます。 ノードの名前がオプションとして指定されていても、 Sybase データ・ソース にはノード名が必要です。 その他のオプションの詳細については、「DB2 SQL 解説書 」を参照してください。 'sybdb' アクセスする Sybase データベースの名前です。Sybase サーバーからこの名 前を取得します。 6.5.1.8 ステップ 8: オプション: CONNECTSTRING サーバー・オプションの設定 タイムアウトしきい値、interfaces ファイルのパスと名前、および interfaces フ ァイルの パケット・サイズを指定します。 Sybase Open Client は、タイムアウト しきい値を使用して、長期間実行される照会および 応答に割り込みます。 CREATE SERVER OPTION DDL ステートメントの CONNECTSTRING オプションを 使用して、こ のしきい値を DB2 に設定することができます。 CONNECTSTRING オプションで、以 下の項目を指定します。 * SQL 照会のタイムアウト期間 * ログイン応答のタイムアウト期間 * interfaces ファイルのパスと名前 * パケット・サイズ .-;----------------------------------. V | >>----+------------------------------+--+---------------------->< +-TIMEOUT-- = --seconds--------+ +-LOGIN_TIMEOUT-- = --seconds--+ +-IFILE-- = --"string"---------+ +-PACKET_SIZE-- = --bytes------+ '-;----------------------------' TIMEOUT SQL ステートメントで、Sybase Open Client からの 応答を DB2 ユニバーサ ル・データベースが待機する秒数を指定します。 seconds の値は、DB2 ユニ バーサル・データベースの整数範囲にある正の整数です。 指定するタイムア ウトの値は、使用しているラッパーによって異なります。 Windows NT、AIX、 および Solaris サーバーはすべて、DBLIB ラッパーを使用することができま す。 DBLIB ラッパーのデフォルト値は 0 です。 Windows NT、AIX、および Solaris サーバーの場合、この DBLIB のデフォルト値によって、 DB2 ユニバ ーサル・データベースは応答が返されるまで無期限に待ち続けます。 LOGIN_TIMEOUT ログイン要求に対する Sybase Open Client からの 応答を DB2 ユニバーサ ル・データベースが待機する秒数を指定します。 デフォルト値は TIMEOUT の 場合と同じです。 IFILE Sybase Open Client の interfaces ファイルのパスと名前を指定します。 string で示されるパスは二重引用符 (") で囲む必要があります。 Windows NT サーバーの場合、デフォルトは %DB2PATH% です。 AIX および Solaris サ ーバーの場合、デフォルト値は DB2 ユニバーサル・データベース・インスタ ンスの ホーム・ディレクトリーにある sqllib/interfaces です。 PACKET_SIZE interfaces ファイルのパケット・サイズをバイト単位で指定します。 デー タ・ソースが、指定されたパケット・サイズをサポートしていない場合、 接 続は失敗します。 各レコードのサイズが非常に大きいとき (たとえば、大き な表に行を挿入するとき) に パケット・サイズを増やすと、パフォーマンス は大幅に向上します。 byte は数値です。 詳しくは、Sybase 解説書を参照し てください。 例 Windows NT サーバーで、タイムアウト値を 60 秒に設定し、 interfaces ファイル を C:\etc\interfaces に設定するには、 以下のステートメントを使用します。 CREATE SERVER OPTION connectstring FOR SERVER sybase1 SETTING 'TIMEOUT=60;LOGIN_TIMEOUT=5;IFILE="C:\etc\interfaces"' AIX および Solaris サーバーで、タイムアウト値を 60 秒に設定し、 interfaces ファイルを /etc/interfaces に設定するには、 以下のステートメントを使用しま す。 CREATE SERVER OPTION connectstring FOR SERVER sybase1 SETTING 'TIMEOUT=60;PACKET_SIZE=4096;IFILE="/etc/interfaces"' 6.5.1.9 ステップ 9: ユーザー・マッピングの作成 統合サーバーのユーザー ID またはパスワードが Sybase データ・ソースのユーザ ー ID または パスワードと異なる場合、CREATE USER MAPPING ステートメントを使 用して、Sybase データ・ソースで 定義されたユーザー ID とパスワードにローカ ル・ユーザー ID をマップします。 例: CREATE USER MAPPING FOR DB2USER SERVER SYBSERVER OPTIONS ( REMOTE_AUTHID 'sybuser', REMOTE_PASSWORD 'day2night') 説明: DB2USER Sybase データ・ソースで定義されたユーザー ID にマップされるローカル・ ユーザー ID です。 SYBSERVER CREATE SERVER ステートメントで定義した Sybase データ・ソースの名前で す。 'sybuser' DB2USER のマップ先である、Sybase データ・ソースでのユーザー ID です。 この値については大文字小文字が区別されます。 'day2night' 'sybuser' に関連付けられているパスワードです。 この値については大文字 小文字が区別されます。 その他のオプションの詳細については、 「DB2 SQL 解説書」を 参照してくださ い。 6.5.1.10 ステップ 10: 表および視点のニックネームの作成 Sybase データ・ソースにある視点または表ごとにニックネームを割り当てます。 Sybase データ・ソースを照会するとき、これらのニックネームを使用します。 Sybase ニックネームでは、大文字小文字が区別されます。 スキーマ名と表名はど ちらも二重引用符 (") で囲んでください。 CREATE NICKNAME ステートメントの例: CREATE NICKNAME SYBSALES FOR SYBSERVER."salesdata"."europe" 説明: SYBSALES Sybase 表または視点の固有のニックネームです。 SYBSERVER."salesdata"."europe" 以下の形式にしたがう、3 つの部分からなる ID です。 data_source_name."remote_schema_name"."remote_table_name" ニックネームを作成したい表または視点ごとに、このステップを繰り返してくださ い。 ニックネームが作成されると、DB2 は接続を使用してデータ・ソース・カタロ グを照会します。 この照会によって、データ・ソースへの接続がテストされます。 接続が失敗した場合、エラー・メッセージが表示されます。 CREATE NICKNAME ステートメントの詳細については、 「DB2 SQL 解説書」を 参照 してください。 一般的なニックネームの詳細、およびデータ・タイプ・マッピング の検証については、 「DB2 管理の手引き」を 参照してください。 6.5.2 Sybase コード・ページの指定 このステップは、DB2 統合サーバーと Sybase サーバーが異なるコード・ページを 使用している場合のみ必須です。 DB2 と同じコード・セットを使用しているデー タ・ソースでは、変換は必要ありません。 以下の表は、NLS (各国語サポート) の 共通コード・ページと 同等の Sybase オプションを示しています。 Sybase デー タ・ソースが、これらの同等の値に対応するよう構成されている必要があります。 あるいは、クライアント・コードが一致しない部分を見つけ、エラーとしてフラグ を立てるか、 データ自体の意味を使用してデータをマップすることができなければ なりません。 ソース・コード・ページからターゲット・コード・ページへの変換表 が見つからない場合、 DB2 はエラー・メッセージを出します。 詳しくは、Sybase の資料を参照してください。 表 2. Sybase コード・ページ・オプション コード・ページ 同等の Sybase オプション 850 cp850 897 sjis 819 iso_1 912 iso_2 1089 iso_6 813 iso_7 916 iso_8 920 iso_9 ------------------------------------------------------------------------ 6.6 ODBC による Microsoft SQL Server データ・ソースへのアクセス (新しい章) Microsoft SQL Server データ・ソースを DB2 統合サーバーに追加する前に、 ODBC ドライバーを統合サーバーにインストールし、構成しておく必要があります。 ODBC ドライバーのインストール方法については、ODBC ドライバーに 付属の資料に記述 されているインストール手順を参照してください。 統合サーバーをセットアップして、Microsoft SQL Server データ・ソースに保管さ れている データにアクセスするには: 1. ODBC ドライバーを統合サーバーにインストールし、構成します。 ODBC ドラ イバーのインストール方法については、ODBC ドライバーに 付属の資料に記述 されているインストール手順を参照してください。 DB2 (Windows NT サーバー版) の場合: ODBC デバイス・マネージャーでシステム DSN を構成します。 「ODBC データ・アドミニストレーター」ウィンドウで、SQL サーバー・ドライ バーを指定し、 そのダイアログを進めて新規システム DSN を追加しま す。「ユーザー提供のログイン ID およびパスワードを使用した SQL サ ーバー認証」を指定します。 DB2 (AIX サーバー版) の場合: MERANT によって提供されているライブラリーのスレッド化バージョンを インストールし、 LIBPATH の最初の項目として MERANT ライブラリー・ ディレクトリーを指定し、 .odbc.ini ファイルをセットアップします。 2. DB2 リレーショナル・コネクト バージョン 7.2 をインストールします。 6.3.3, DB2 リレーショナル・コネクトのインストールを参照してください。 3. Microsoft SQL Server データ・ソースを統合サーバーに追加します。 4. Microsoft SQL Server コード・ページを指定します。(Windows NT の場合の み) この章では、ステップ 3 および 4 が説明されています。 この章での説明は、Windows NT および AIX プラットフォームに適用されます。 プ ラットフォーム固有の違いは、その都度示されています。 6.6.1 統合サーバーへの Microsoft SQL Server データ・ソースの追加 ODBC ドライバーと DB2 リレーショナル・コネクトをインストールした後、 以下の ステップにしたがって Microsoft SQL Server データ・ソースを統合サーバーに 追 加します。 1. 環境変数を設定します。(AIX の場合のみ) 2. シェル・スクリプトを実行します。(AIX の場合のみ) 3. オプション: DB2_DJ_COMM 環境変数を設定します。(AIX の場合のみ) 4. DB2 インスタンスを再生します。(AIX の場合のみ) 5. ラッパーを作成します。 6. サーバーを作成します。 7. ユーザー・マッピングを作成します。 8. 表および視点のニックネームを作成します。 9. オプション: ODBC トレースを取得します。 上記のステップは、以下のセクションで詳しく説明されています。 6.6.1.1 ステップ 1: 環境変数の設定 (AIX の場合のみ) データ・ソース環境変数を、db2dj.ini ファイルを変更し、 db2set コマンドを実 行することで設定します。 db2dj.ini ファイルには、 Microsoft SQL Server デー タ・ソースに接続するための構成情報が含まれています。 db2set コマンドは、DB2 プロファイル・レジストリーを あなたの設定で更新します。 区分データベース・システムでは、特定インスタンスのすべてのノードに対して 単 一の db2dj.ini ファイルを使用、または 特定インスタンスの 1 つ以上のノードに 対して固有の db2dj.ini ファイルを 使用することができます。 非区分データベー ス・システムでは、 保持できる db2dj.ini ファイルはインスタンスごとに 1 つで す。 環境変数を設定するには: 1. $HOME/sqllib/cfg/ にある db2dj.ini ファイルを 編集し、次の環境変数を設 定します。 ODBCINI=$HOME/.odbc.ini DJX_ODBC_LIBRARY_PATH=/lib DB2ENVLIST=LIBPATH db2set コマンドを実行して、DB2 プロファイル・レジストリーに 変更を適用しま す。 db2set の構文は、使用しているデータベース・システムによって 異なりま す。 * 非区分データベース・システムで db2dj.ini ファイルを 使用しているか、区 分データベース・システムで db2dj.ini ファイルを 使用していて、 db2dj.ini ファイルの値を現行ノードにだけ 適用したい場合、次のコマンド を発行します。 db2set DB2_DJ_INI=/db2dj.ini * 区分データベース・システムで db2dj.ini ファイルを 使用していて、 db2dj.ini ファイルの値をこのインスタンス内の すべてのノードに適用した い場合、次のコマンドを実行します。 db2set -g DB2_DJ_INI=/db2dj.ini * 区分データベース・システムで db2dj.ini ファイルを使用していて、 db2dj.ini ファイルの値を特定ノードに適用したい場合、 次のコマンドを実 行します。 db2set -i INSTANCEX 3 DB2_DJ_INI=$HOME/sqllib/cfg/node3.ini 説明: INSTANCEX インスタンスの名前です。 3 db2nodes.cfg ファイルにリストされているノード番号です。 node3.ini 内容と名前が変更されたバージョンの db2dj.ini ファイルです。 クライアント・ライブラリーへのパスを設定するには、以下のコマンドを発行しま す。 db2set DB2LIBPATH= db2set DB2ENVLIST=LIBPATH 6.6.1.2 ステップ 2: シェル・スクリプトの実行 (AIX の場合のみ) djxlink.sh シェル・スクリプトは、クライアント・ライブラリーを ラッパー・ラ イブラリーにリンクします。 シェル・スクリプトを実行するには: djxlink 6.6.1.3 ステップ 3: オプション: DB2_DJ_COMM 環境変数の設定 (AIX の場合のみ) Microsoft SQL Server データ・ソースへのアクセスにかかる時間が長すぎる場合、 データ・ソースにアクセスを試みるときではなく、統合サーバーが初期設定される ときに ラッパーをロードするよう DB2_DJ_COMM 環境変数を設定することによって パフォーマンスを向上させることができます。 DB2_DJ_COMM 環境変数を設定して、 ステップ 5 で指定したラッパーに対応する ラッパー・ライブラリーを組み込みま す。 例: DB2 (Windows NT サーバー版) の場合: db2set DB2_DJ_COMM=djxmssql3.dll DB2 (AIX サーバー版) の場合: db2set DB2_DJ_COMM=libmssql3.a 等号 (=) の両端にスペースがないことを確認します。 ラッパー・ライブラリー名についての詳しくは、 「DB2 SQL 解説書」を参照してく ださい。 6.6.1.4 ステップ 4: DB2 インスタンスの再生 (AIX の場合のみ) 環境変数がプログラムに設定されていることを確実にするには、DB2 インスタンス を再生してください。 インスタンスを再生すると、変更を受け入れられるよう DB2 インスタンスはリフレッシュされます。 DB2 インスタンスを再生するには、次のコ マンドを実行してください。 db2stop db2start 6.6.1.5 ステップ 5: ラッパーの作成 DB2 ユニバーサル・データベースには、Microsoft SQL Server データ・ソースへの アクセスに使用できる 2 つの異なるプロトコル (ラッパー) があります。 ラッパ ーとは、データ・ソースとの通信およびデータ・ソースからのデータ検索に 統合シ ステムが使用するメカニズムのことです。 使用するラッパーは、DB2 ユニバーサ ル・データベースが稼動しているプラットフォームに よって異なります。 適切な ラッパーを選択するためのガイドとして、表 3を使用してください。 表 3. ODBC ドライバー ODBC ドライバー プラットフォーム ラッパー名 ODBC 3.0 (またはそれ以降) ドライバ Windows NT DJXMSSQL3 ー MERANT DataDirect Connect ODBC 3.6 AIX MSSQLODBC3 ドライバー CREATE WRAPPER ステートメントを使用して、Microsoft SQL Server データ・ソー スへの アクセスに使用されるラッパーを指定します。 CREATE WRAPPER ステートメ ントの例: CREATE WRAPPER DJXMSSQL3 ここで DJXMSSQL3 は、DB2 (Windows NT サーバー版) で使用されるデフォルト・ラ ッパー名です (ODBC 3.0 ドライバー使用)。 DB2 (AIX サーバー版) を使用してい る場合、MSSQLODBC3 ラッパー名を指定します。 デフォルト・ラッパー名は、選択した名前で置換することができます。 ただし、こ れを行う場合、LIBRARY パラメーターおよび統合サーバー・プラットフォームのラ ッパー・ ライブラリー名を CREATE WRAPPER ステートメントに組み込まなければな りません。 例: DB2 (Windows NT サーバー版) の場合: CREATE WRAPPER wrapper_name LIBRARY 'djxmssql3.dll' ここで wrapper_name はラッパーに付ける名前で、 'djxmssql3.dll' はライ ブラリー名です。 DB2 (AIX サーバー版) の場合: CREATE WRAPPER wrapper_name LIBRARY 'libmssql3.a' ここで wrapper_name はラッパーに付ける名前で、 'libdjxmssql.a' はライ ブラリー名です。 ラッパー・ライブラリー名について詳しくは、 「DB2 SQL 解説書」 で CREATE WRAPPER ステートメントを調べてください。 6.6.1.6 ステップ 6: サーバーの作成 CREATE SERVER ステートメントを使用して、接続したい Microsoft SQL Server デ ータ・ソースを それぞれ定義します。 例: CREATE SERVER sqlserver TYPE MSSQLSERVER VERSION 7.0 WRAPPER djxmssql3 OPTIONS (NODE 'sqlnode', DBNAME 'database_name') 説明: sqlserver Microsoft SQL Server サーバーに割り当てる名前です。 この名前は固有でな ければなりません。 MSSQLSERVER アクセスを構成するデータ・ソースのタイプです。 7.0 アクセスする Microsoft SQL Server のバージョンです。 DB2 ユニバーサ ル・データベースは、バージョン 6.5 と 7.0 の Microsoft SQL Server を サポートしています。 DJXMSSQL3 CREATE WRAPPER ステートメントで定義したラッパー名です。 'sqlnode' ユーザーがアクセスしている Microsoft SQL Server と同じバージョンの Microsoft SQL Server を 参照するシステム DSN 名です。この値については 大文字小文字が区別されます。 DB2 ユニバーサル・データベースは、バージ ョン 6.5 と 7.0 の Microsoft SQL Server を サポートしています。 ノードの名前 (システム DSN 名) が CREATE SERVER のオプションとして指定 されていても、 Microsoft SQL Server データ・ソースにはノード名が必要で す。 Windows の場合、Windows ODBC データ・アドミニストレーター・ツール の「システム DSN」タブで DSN を取得します。AIX の場合、DB2 インスタン ス所有者ホーム・ディレクトリーの .odbc.ini ファイルから DSN を取得しま す。 CREATE WRAPPER ステートメントで使用できるその他のオプションについて は、 「DB2 SQL 解説書」を 参照してください。 'database_name' 接続するデータベースの名前です。 データベースの名前が CREATE SERVER ステートメントの オプションとして指 定されていても、Microsoft SQL Server データ・ソースには データベース名 が必要です。 6.6.1.7 ステップ 7: ユーザー・マッピングの作成 統合サーバーのユーザー ID またはパスワードが Microsoft SQL Server データ・ ソースの ユーザー ID またはパスワードと異なる場合、CREATE USER MAPPING ステ ートメントを 使用して、Microsoft SQL Server データ・ソースで定義されたユー ザー ID と パスワードにローカル・ユーザー ID をマップします。 例: CREATE USER MAPPING FOR db2user SERVER server_name OPTIONS (REMOTE_AUTHID 'mssqluser', REMOTE_PASSWORD 'day2night') 説明: db2user Microsoft SQL Server データ・ソースで定義されたユーザー ID にマップす るローカル・ユーザー ID です。 server_name CREATE SERVER ステートメントで定義したサーバーの名前です。 'mssqluser' db2user のマップ先である、Microsoft SQL Server データ・ソースでのログ イン ID です。 この値については大文字小文字が区別されます。 'day2night' 'mssqluser' に関連付けられているパスワードです。 この値については大文 字小文字が区別されます。 CREATE USER MAPPING ステートメントで使用できるその他のオプションについて は、 「DB2 SQL 解説書」を参照してください。 6.6.1.8 ステップ 8: 表および視点のニックネームの作成 アクセスしたい Microsoft SQL Server データ・ソースにある視点または表ごとに ニックネームを割り当てます。 Microsoft SQL Server データ・ソースを照会する とき、これらのニックネームを使用します。 ニックネームを割り当てるには、 CREATE NICKNAME ステートメントを使用してください。 ニックネームでは、大文字 小文字が区別されます。 CREATE NICKNAME ステートメントの例: CREATE NICKNAME mssqlsales FOR server_name.salesdata.europe 説明: mssqlsales Microsoft SQL Server 表または視点の固有のニックネームです。 server_name.salesdata.europe 以下の形式にしたがう、3 つの部分からなる ID です。 data_source_server_name.remote_schema_name.remote_table_name ニックネームの remote_schema_name および remote_table_name の部分には 二重引用符を使用するようお勧めします。 ニックネームが作成されると、DB2 はデータ・ソース・カタログ表にアクセスを試 みます (Microsoft SQL Server は このカタログ表をシステム表として参照しま す)。 これで、データ・ソースへの接続がテストされます。 接続が失敗した場合、 エラー・メッセージが表示されます。 ニックネームを作成したいデータベース表および視点すべてついて、このステップ を 繰り返してください。 CREATE NICKNAME ステートメントの詳細については、 「DB2 SQL 解説書」を 参照 してください。 一般的なニックネームの詳細、およびデータ・タイプ・マッピング の検証については、 「DB2 管理の手引き」を 参照してください。 6.6.1.9 ステップ 9: オプション: ODBC トレースの取得 データ・ソースへのアクセス時に問題が発生する場合、その問題の分析と解決のた め、 ODBC トレース情報を取得することができます。 ODBC トレースが正しく機能 していることを確認するには、 ODBC データ・ソース・アドミニストレーターによ り提供されているトレース・ツールを使用します。 トレースの活動化はシステム・ パフォーマンスに影響するため、 問題が解決したらトレースをオフにしてくださ い。 6.6.2 Microsoft SQL Server コード・ページの検討 (Windows NT の場合のみ) Microsoft SQL Server は、DB2 UDB がサポートしている NLS (各国語サポート) 共 通コード・ページの 多くをサポートしています。 DB2 と同じコード・セットを使 用しているデータ・ソースでは、変換は必要ありません。 表 3 には、DB2 ユニバ ーサル・データベースと Microsoft SQL Server がどちらも サポートしているコー ド・ページがリストされています。 表 4. DB2 UDB および Microsoft SQL Server コード・ページ・オプション コード・ページ サポートされている言語 1252 ISO 文字セット 850 マルチリンガル 437 米国英語 874 タイ語 932 日本語 936 中国語 (簡体字) 949 韓国語 950 中国語 (繁体字) 1250 中央ヨーロッパ言語 1251 キリル文字 1253 ギリシャ語 1254 トルコ語 1255 ヘブライ語 1256 アラビア語 DB2 統合サーバーと Microsoft SQL Server が異なる NLS (各国語サポート) コー ド・ページを 使用している場合、Microsoft SQL Server データ・ソースが、これ らの同等の値に対応するように 構成されている必要があります。 あるいは、クラ イアント・コードが一致しない部分を見つけて、エラーとしてフラグを立てるか、 データ自体の意味を使用してデータをマップすることができなければなりません。 ソース・コード・ページからターゲット・コード・ページへの変換表が見つからな い場合、 DB2 はエラー・メッセージを出します。 詳しくは、Microsoft SQL Server の資料を参照してください。 ------------------------------------------------------------------------ 6.7 Informix データ・ソースへのアクセス (新しい章) Informix データ・ソースを DB2 統合サーバーに追加する前 に、Informix クライ アント SDK ソフトウェアを統合サーバーにインストールして構成しておく 必要が あります。クライアント SDK ソフトウェアのインストール方法に関する特定の事柄 の詳細 は、Informix データベース・ソフトウェアに付属の資料に記載されている インストール手順を 参照してください。インストール手順の一部として、Informix クライアント SDK ライブラリーを 組み込むことを忘れないでください。 Informix データ・ソースに保管されているデータにアクセスできるように 統合サ ーバーをセットアップするには : 1. DB2 リレーショナル・コネクトをインストールします。6.3.3, DB2 リレーシ ョナル・コネクトのインストールを参照してください。 2. 最新の DB2 フィックスパックを適用します。 3. Informix データ・ソースを統合サーバーに追加します。 この章では、ステップ 3 について説明しています。 この章での説明は、AIX、Solaris 操作環境、および HP-UX オペレーティング・シ ステムに 適用されます。オペレーティング・システム固有の違いは、そのつど示さ れています。 6.7.1 統合サーバーへの Informix データ・ソースの追加 Informix データ・ソースを統合サーバーに追加するには : 1. 環境変数を設定し、プロファイル・レジストリーを更新します。 2. DB2 を Informix クライアント・ソフトウェアにリンクします。 3. DB2 インスタンスを再生します。 4. Informix sqlhosts ファイルを作成します。 5. ラッパーを作成します。 6. オプション: DB2_DJ_COMM 環境変数を設定します。 7. サーバーを作成します。 8. ユーザー・マッピングを作成します。 9. 表、視点、および Informix 同義語のニックネームを作成します。 上記のステップは、このセクションで詳しく説明されています。 6.7.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 データ・ソース環境変数を、db2dj.ini ファイルを変更し、 db2set コマンドを実 行することで設定します。 db2dj.ini ファイルには、統合サーバーにインストール されてい る Informix クライアント・ソフトウェアについての構成情報が含まれて います。db2set コマンドは、DB2 プロファイル・レジストリーを あなたの設定で 更新します。 区分データベース・システムでは、特定インスタンスのすべてのノードに対して 単 一の db2dj.ini ファイルを使用、または 特定インスタンスの 1 つ以上のノードに 対して固有の db2dj.ini ファイルを 使用することができます。 非区分データベー ス・システムでは、 保持できる db2dj.ini ファイルはインスタンスごとに 1 つで す。 環境変数を設定するには: 1. sqllib/cfg ディレクトリーにあ る db2dj.ini ファイルを編集し、次の環境 変数を設定します。 INFORMIXDIR INFORMIXDIR 環境変数には、Informix クライアント SDK ソフトウェア が インストールされているディレクトリーのパスを設定します。 例 : INFORMIXDIR=/informix/csdk INFORMIXSERVER この変数により、デフォルトの Informix サーバーの名前が識別されま す。 INFORMIXSERVER=inf93 注 : Informix ラッパーはこの変数の値を使用しません が、Informix クライアントはこの変数が設定されていることを必要とします。 ラッパ ーは、ユーザーがアクセスする Informix データベース・サーバーを指 定す る node サーバー・オプションの値を使用します。 INFORMIXSQLHOSTS Informix sqlhosts ファイルのデフォルトの パス ($INFORMIXDIR/etc/sqlhosts) を使用している場合は、この変数を設定 する必要はありません。 しかし、Informix sqlhosts ファイルについて デフォルト以外のパスを 使用している場合は、この変数に Informix sqlhosts ファイルの 全パス名を設定する必要があります。 例: INFORMIXSQLHOSTS=/informix/csdk/etc/my_sqlhosts 2. Informix 環境変数を使用して、DB2 インスタンス の .profile ファイルを更 新します。これを行うには、次のコマンドを 発行し、各変数を設定してエク スポートします。 PATH=$INFORMIXDIR/bin:$PATH export PATH INFORMIXDIR= export INFORMIXDIR ここで informix_client_path は、 統合サーバー上で Informix クライアン トがインストールされているディレクトリーのパスです。 パス内にブランク を含んでいる名前がある場合は、パスを二重引用符 (") で囲んでください。 3. 次のコマンドを入力して、DB2 インスタンス .profile を実行します。 . .profile 4. db2set コマンドを実行して、DB2 プロファイル・レジストリーに 変更を適用 します。 このコマンド db2set の構文は、使用しているデータベース・シス テムによって 異なります。 このステップは、以下のデータベース・システム 構造のいずれかで db2dj.ini ファイルを使用している場合のみ必要です。 非区分データベース・システムで db2dj.ini ファイルを 使用しているか、 db2dj.ini ファイルを現行ノードにだけ適用する場合、 次のコマンドを発行 します。 db2set DB2_DJ_INI=sqllib/cfg/db2dj.ini 区分データベース・システム で db2dj.ini ファイルを使用してい て、 db2dj.ini ファイルの値をこのインスタンス内のすべてのノードに 適用した い場合は、次のコマンドを発行します。 db2set -g DB2_DJ_INI = sqllib/cfg/db2dj.ini 区分データベース・システムで db2dj.ini ファイルを使用していて、 db2dj.ini ファイルの値を特定ノードに適用したい場合、 次を実行します。 db2set -i INSTANCEX 3 DB2_DJ_INI=sqllib/cfg/node3.ini 説明: INSTANCEX インスタンスの名前です。 3 db2nodes.cfg ファイルにリストされているノード番号です。 node3.ini 内容と名前が変更されたバージョンの db2dj.ini ファイルです。 6.7.1.2 ステップ 2: Informix クライアント・ソフトウェアへの DB2 のリンク Informix データ・ソースにアクセスできるようにするためには、DB2 統合サーバー が クライアント・ライブラリーにリンク・エディットされている必要があります。 リンク・エディット処理では、統合サーバーが通信するデータ・ソースごとに ラッ パー・ライブラリーが作成されます。 djxlinkInformix スクリプトを実行する と、Informix ラッパー・ライブラリーが作成されます。 djxlinkInformix スクリ プトを発行するには、 次のように入力します。 djxlinkInformix 注:djxlinkInformix スクリプトによって 作成されるのは Informix ラッパー・ ライブラリーだけです。 他に djxlink スクリプトというスクリプトがあり、 これは DB2 ユニバーサル・データベースが サポートするあらゆるデータ・ソ ース (Oracle、 Microsoft SQL Server など) のラッパー・ライブラリーを作 成しようと試みます。一部のデータ・ソース用の クライアント・ソフトウェ アしかインストールしていない場合は、 djxlink スクリプトを発行すると、 欠落しているデータ・ソースごとに エラー・メッセージを受け取ります。 djxlinkInformix および djxlink スクリプトを実行するには、UNIX システム 管理者 (root) 権限が必要です。 オペレーティング・システムによっては、djxlinkInformix および djxlink スクリプトにより 詳細なエラーや警告メッセージが特定のファイルに書き込 まれます。 たとえば、AIX の場合、djxlinkInformix スクリプトにより /usr/lpp/db2_07_01/lib/djxlinkInformix.out へ、djxlink スクリプトによ り /usr/lpp/db2_07_01/lib/djxlink.out へ書き込まれます。 オペレーティング・システムによっては、djxlinkInformix および djxlink スクリプトにより 特定のディレクトリーにラッパーが作成されます。たとえ ば、AIX の場合、libinformix.a ラッパー・ライブラリーが /usr/lpp/db2_07_01/lib ディレクトリーに作成されます。 libinformix.a ラッパー・ライブラリーが作成されたら、 DB2 インスタンス 所有者による読み取り、実行の許可があるかどうか確認してください。DB2 イ ンスタンス所有者がシステム・グループにない場合は、 libinformix.a ラッ パー・ライブラリーに対して -rwxr-xr-x root system...libinformix.a が許 可される必要があります。 6.7.1.3 ステップ 3: DB2 インスタンスの再生 環境変数がプログラムに設定されていることを確実にするには、DB2 インスタンス を再生してください。 インスタンスを再生すると、変更を受け入れられるよう DB2 インスタンスはリフレッシュされます。 DB2 インスタンスを再生するには、以下のコマンドを実行します。 DB2 (AIX、Solaris 操作環境、および HP-UX サーバー版) の場合 : db2stop db2start 6.7.1.4 ステップ 4: Informix sqlhosts ファイルの作成 このファイルは、各 Informix データベース・サーバーのロケーションと、その デ ータベース・サーバー用の接続 (プロトコル) のタイプを指定します。 このファイ ルを作成するいくつかの方法があります。 Informix サーバーに接続されている Informix Connect または Informix クライアント SDK が入っている別のシステム から コピーすることができます。また、DB2 サーバー上の Informix クライアント SDK を、 sqlhosts ファイルを作成する Informix サーバーに接続するよう構成す ることもできます。 sqlhosts ファイルがコピーまたは作成されたら、DB2 インスタンス所有者は Informix dbaccess (DB2 サーバー上にある場合) を使用して Informix サーバーへ の 接続、照会を行う必要があります。これにより、Informix クライアント SDK で 作業するために DB2 リレーショナル・コネクトを構成する前に、Informix クライ アント SDK が Informix サーバーに接続することができるようになります。 このファイルのセットアップ方法についての詳細は、Informix の マニュアル「 Administrators Guide for Informix Dynamic Server 」を 参照してください。 警告 : Informix データベース・サーバーの名前を sqlhosts ファイル内に 定義してい ないと、その Informix データベース・サーバーへの接続が必要な操作の実行時 にエラーを 受け取ります。 6.7.1.5 ステップ 5: ラッパーの作成 CREATE WRAPPER ステートメントを使用して、Informix データ・ソースへのアクセ スに使用される ラッパーを指定します。ラッパーとは、データ・ソースとの通信お よびデータ・ソースからの データ検索に統合サーバーが使用するメカニズムのこと です。 CREATE WRAPPER ステートメントの例: CREATE WRAPPER informix ここで、informix は wrapper_name で す。informix は、Informix クライアント SDK ソフトウェアで使用される デフォルトのラッパー名です。 デフォルト・ラッパー名は、選択した名前で置換することができます。 ただし、こ れを行う場合、LIBRARY パラメーターおよび統合サーバーのラッパー・ ライブラリ ー名も CREATE WRAPPER ステートメントに組み込まなければなりません。 ラッパ ー・ライブラリー名についての詳細は、 「DB2 SQL 解説書 」の CREATE WRAPPER ステートメントを参照してください。 Informix 用のラッパー・ライブラリー名は次の通りです。 * libinformix.a (AIX) * libinformix.so (Solaris 操作環境) * libinformix.sl (HP-UX) 6.7.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の設定 Informix データ・ソースへのアクセス時におけるパフォーマンスを向上させるに は、 統合サーバー上で DB2_DJ_COMM 環境変数を設定します。この変数により、統 合サーバーの初期化時に ラッパーがロードされるかどうかが決まります。 直前の ステップで指定したラッパーに対応するラッパー・ライブラリーが組み込まれるよ う に DB2_DJ_COMM 環境変数を設定します。Korn シェルまたは Bourne シェル・ コマンド行インターフェースを使用している場合は、次のエクスポート・コマンド を使用してください。 DB2 (AIX サーバー版) の場合 : DB2_DJ_COMM='libinformix.a' export DB2_DJ_COMM DB2 (Solaris 操作環境サーバー版) の場合 : DB2_DJ_COMM='libinformix.so' export DB2_DJ_COMM DB2 (HP-UX サーバー版) の場合 : DB2_DJ_COMM='libinformix.sl' export DB2_DJ_COMM 等号 (=) の両端にスペースがないことを確認します。 C シェル・コマンド行・インターフェースを使用している場合は、次のコマンドを 使用して環境変数を設定してください。 setenv DB2_DJ_COMM 'libinformix.a' (DB2 (AIX サーバー版)) setenv DB2_DJ_COMM 'libinformix.so' (DB2 (Solaris 操作環境サーバー版)) setenv DB2_DJ_COMM 'libinformix.sl' (DB2 (HP--UX サーバー版) ラッパー・ライブラリー名および DB2_DJ_COMM 環境変数についての詳細は、 「DB2 SQL 解説書 」を 参照してください。 6.7.1.7 ステップ 7: サーバーの作成 CREATE SERVER ステートメントを使用して、アクセスしたいデータ・ソースを持 つ Informix サーバーをそれぞれ定義します。このステートメントの構文は次の通りで す。 CREATE SERVER server_name TYPE server_type VERSION server_version WRAPPER wrapper_name OPTIONS (NODE 'node_name', DBNAME 'database_name') 説明: server_name Informix データベース・サーバーに割り当てる名前です。この名前は 固有で なければならず、統合データベースに定義されている別の server_name と重 複してはいけません。server_name は、統合データベース内の表スペースの名 前と 同じにすることはできません。 TYPE server_type 現在構成中のアクセスの対象となるデータ・ソースのタイプを指定します。 注:Informix ラッパーの場合は、server_type は informix でなければなり ません。 VERSION server_version アクセスしたい Informix データベース・サーバーのバージョンです。 サポ ートされている Informix のバージョンは、5、7、8、および 9 です。 WRAPPER wrapper_name CREATE WRAPPER ステートメントで指定した名前です。 NODE 'node_name' server_name が常駐しているノードの名前です。 node_name が Informix sqlhosts ファイル内に 定義されている必要があります (ステップ 4 を参照 してください)。node_name は、CREATE SERVER SQL ステートメントで オプシ ョンとして指定されるものですが、Informix データ・ソースの場合には必須 です。この値では、大文字小文字が区別されます。その他のオプションの詳細 については、「DB2 SQL 解説書 」を参照してください。 DBNAME 'database_name' アクセスしたい Informix データベースの名前です。 CREATE SERVER ステートメントの例 : CREATE SERVER asia TYPE informix VERSION 9 WRAPPER informix OPTIONS (NODE 'abc', DBNAME 'sales') FOLD_ID およ び FOLD_PW サーバー・オプションは、ラッパーがユーザー ID と パ スワードを Informix への送信に先立って英大文字または小文字に変換するかどう かに影響します。 FOLD_ID およ び FOLD_PW サーバー・オプションを指定し た CREATE SERVER ステートメントの例 : CREATE SERVER asia TYPE informix VERSION 9 WRAPPER informix OPTIONS (NODE 'abc', DBNAME 'sales', FOLD_ID 'U', FOLD_PW 'U') 6.7.1.8 ステップ 8: ユーザー・マッピングの作成 DB2 統合サーバー上のユーザー ID またはパスワードが Informix データ・ソース 上の ユーザー ID またはパスワードと異なる場合は、CREATE USER MAPPING ステー トメントを使用し て、ローカル・ユーザー ID を Informix データ・ソース上で定 義されているユーザー ID とパスワードに マップします。 例 : CREATE USER MAPPING FOR local_userid SERVER server_name OPTIONS (REMOTE_AUTHID 'remode_userid', REMOTE_PASSWORD 'remote_password') 説明: local_userid Informix データ・ソース上で定義されているユーザー ID にマップする ロー カル・ユーザー ID です。 SERVER server_name CREATE SERVER ステートメントで定義した Informix データ・ソースの名前で す。 REMOTE_AUTHID 'remote_userid' local_userid のマップ先とする Informix データベース・サーバー上の ユー ザー ID です。この値は、CREATE SERVER ステートメントで FOLD_ID サーバ ー・オプション に 'U' または 'L' を設定していないかぎり、大文字小文字 が区別されます。 REMOTE_PASSWORD 'remote_password' remote_userid に関連付けられているパスワードです。 この値は、CREATE SERVER ステートメントで FOLD_PW サーバー・オプション に 'U' または 'L' を設定していないかぎり、大文字小文字が区別されます。 CREATE USER MAPPING ステートメントの例 : CREATE USER MAPPING FOR robert SERVER asia OPTIONS (REMOTE_AUTHID 'bob', REMOTE_PASSWORD 'day2night') DB2 特殊レジスター USER を使用して、CREATE USER MAPPING ステートメントの 発 行者の許可 ID を REMOTE_AUTHID ユーザー・オプションで指定されている デー タ・ソース許可 ID にマップできます。 USER 特殊レジスターが組み込まれている CREATE USER MAPPING ステートメントの例 : CREATE USER MAPPING FOR USER SERVER asia OPTIONS (REMOTE_AUTHID 'bob', REMOTE_PASSWORD 'day2night') その他のオプションの詳細については、 「DB2 SQL 解説書」を 参照してくださ い。 6.7.1.9 ステップ 9: 表、視点、および Informix 同義語のニックネームの作成 Informix データ・ソース上にある表、視点、または Informix 同義語ごとに ニッ クネームを割り当てます。 ニックネームの長さは 128 文字までが可能です。 これ らのニックネームは、Informix データ・ソースを照会するときに使用します。サー バー、スキーマ、 および表の名前は、二重引用符 (") で囲まないかぎり、DB2 に よって英大文字に変換されます。 CREATE NICKNAME ステートメントの例: CREATE NICKNAME nickname FOR server_name."remote_schema_name"."remote_table_name" 説明: nickname Informix の表、視点、または同義語の識別に使用される固有ニックネームで す。 server_name."remote_schema_name"."remote_table_name" リモート・オブジェクト用の、3 つの部分から構成される ID です。 o server_name は、CREATE SERVER ステートメント で Informix データベ ース・サーバーに割り当てた名前です。 o remote_schema_name は、表、視点、または同義語が属するリモート・ス キーマの名前です。 o remote_table_name は、アクセスしたいリモートの表、視点、または同 義語の名前です。 CREATE NICKNAME ステートメントの例 : CREATE NICKNAME salesjapan FOR asia."salesdata"."japan" ニックネームを作成したい表または視点ごとに、このステップを繰り返してくださ い。 ニックネームが作成されると、DB2 は接続を使用してデータ・ソース・カタロ グを照会します。 この照会によって、データ・ソースへの接続がテストされます。 接続が失敗した場合、エラー・メッセージが表示されます。 CREATE NICKNAME ステートメントの詳細については、 「DB2 SQL 解説書」を 参照 してください。 一般的なニックネームの詳細、およびデータ・タイプ・マッピング の検証については、 「DB2 管理の手引き」を 参照してください。 ------------------------------------------------------------------------ 管理 部分目次 * 管理の手引き o 7.1 入手可能な更新 * 管理の手引き: 計画 o 8.1 第 8 章 物理データベース設計 + 8.1.1 表スペース設計上の考慮事項 + 8.1.1.1 データが RAID 上に配置されている場合の表スペー ス・パフォーマンスの最適化 o 8.2 付録 D. 各国語サポート (NLS) + 8.2.1 国別 / 地域別コードおよびコード・ページのサポート + 8.2.2 インポート / エクスポート / ロードに関する 考慮事項 -- コード・ページ 1394 および 5488 の制約 * 管理の手引き : パフォーマンス o 9.1 システム一時表スキーマ o 9.2 第 8 章 操作パフォーマンス + 9.2.1 ブロック・ベースのバッファー・プール + 9.2.1.1 ブロック・ベースのバッファー・プールの例 o 9.3 第 10 章 プロセッサーの追加による構成の拡大縮小 + 9.3.1 分割したデータベースにノードを追加する際の問題 o 9.4 DB2 レジストリーと環境変数 + 9.4.1 パフォーマンス変数への修正 + 9.4.2 各種レジストリー変数への修正および追加 + 9.4.3 汎用レジストリー変数の修正および追加 * 管理の手引き : インプリメンテーション o 10.1 第 8 章 データベースの回復 + 10.1.1 中断入出力の使用法 * サテライト管理 手引きおよび解説書 o 11.1 バージョン 7.2 DB2 パーソナル・エディションおよび DB2 ワーク グループ・エディションを サテライトとしてセットアップ + 11.1.1 前提条件 + 11.1.1.1 インストール上の考慮事項 + 11.1.2 同期化のためのバージョン 7.2 システムの構成 + 11.1.3 エンタープライズ・エディション・システムでのフィック スパック 2 以上の インストール + 11.1.3.1 DB2 制御サーバーとして使用するためにバージョン 6 DB2 エンタープライズ・エディションを アップグレード + 11.1.4 バージョン 6 コントロール・センター および サテライト 管理センター のアップグレード * コマンド解説書 o 12.1 入手可能な更新 o 12.2 db2updv7 - データベースをバージョン 7 現行修正レベルに更新 o 12.3 REBIND + Missing value o 12.4 db2inidb - ミラーリングされたデータベースの初期化 + 12.4.1 使用法情報 o 12.5 GET ROUTINE コマンドの追加オプション + GET ROUTINE * データ回復と高可用性の手引きと解説書 o 13.1 データ回復と高可用性の手引きと解説書がオンラインで使用可能 o 13.2 LOGRETAIN=CAPTURE の場合の新たなバックアップおよびリストア動 作 o 13.3 NEWLOGPATH2 は、DB2_NEWLOGPATH2 と呼ばれるようになりました o 13.4 DB2 データ・リンク・マネージャー (AIX または Solaris 版) の バックアップ方式の選択 o 13.5 Tivoli Storage Manager -- LAN フリー・データ転送 * データ移動ユーティリティー 手引きおよび解説書 o 14.1 エクスポート、インポート、およびロードの LOB ファイル・ハン ドルの変更 + 14.1.1 IXF 考慮事項 o 14.2 インポート、エクスポート、およびロード・ユーティリティーに対 するコード・ページ・サポート o 14.3 db2relocatedb (新規コマンド) + db2relocatedb - データベースの再配置 o 14.4 db2move -- 使用可能な新規オプション + db2move ツールを使用したデータの移動 o 14.5 第 2 章 インポート + 14.5.1 バッファー挿入を行うインポートを使用 o 14.6 第 3 章 ロード + 14.6.1 ロード操作後の保留状態 + 14.6.2 ロード制約事項と制限 + 14.6.3 totalfreespace ファイル・タイプ修飾子 o 14.7 第 4 章 オートローダー + 14.7.1 rexecd - 認証を YES に設定している場合はオートローダ ーの実行に必須 o 14.8 fork 中にオートローダーが停止する場合があります o 14.9 付録 C. エクスポート/インポート/ロード・ユーティリティー・フ ァイル形式 * DB2 レプリケーションの手引きおよび解説書 o 15.1 レプリケーションおよび非 IBM サーバー o 15.2 Windows 2000 上のレプリケーション o 15.3 SQL ファイルの保管時に知られているエラー o 15.4 DB2 保守 o 15.5 Web 上の Data Difference Utility o 15.6 第 3 章 データ・レプリケーション・シナリオ + 15.6.1 レプリケーションのシナリオ o 15.7 第 5 章 レプリケーションの計画 + 15.7.1 表および列名 + 15.7.2 DATALINK レプリケーション + 15.7.3 LOB の制約事項 + 15.7.4 レプリケーションの計画 o 15.8 第 6 章 レプリケーション環境のセットアップ + 15.8.1 任意の場所で更新 (Update-anywhere) の前提条件 + 15.8.2 レプリケーション環境のセットアップ o 15.9 第 8 章 問題判別 o 15.10 第 9 章 キャプチャー・プログラムおよびアプライ・プログラム (AS/400 版) o 15.11 第 10 章 キャプチャー・プログラムおよびアプライ・プログラム (OS/390 版) + 15.11.1 DB2 DataPropagator (OS/390 版) の前提条件 + 15.11.2 OS/390 での UNICODE および ASCII エンコード・スキー ム + 15.11.2.1 エンコード・スキームの選択 + 15.11.2.2 エンコード・スキームの設定 o 15.12 第 11 章 キャプチャー・プログラムおよびアプライ・プログラム (UNIX 版) + 15.12.1 UNIX および Windows でのキャプチャー・プログラムとア プライ・プログラムの環境変数の設定 o 15.13 第 14 章 表の構造 o 15.14 第 15 章 キャプチャー・プログラムとアプライ・プログラムのメ ッセージ o 15.15 付録 A キャプチャー・プログラムおよびアプライ・プログラムを アプリケーション内で開始する * システム・モニター 手引きおよび解説書 o 16.1 db2ConvMonStream * 問題判別の手引き o 17.1 ユーザーがログオンしていないときに DB2 を Windows 95、 Windows 98、 または Windows ME で開始 o 17.2 第 1 章 効果的なトラブルシューティングの手段 + 17.2.1 問題分析および環境データ収集用のツール + 17.2.1.1 収集データ出力 + 17.2.1.2 detailed_system_info.html の表示 + 17.2.1.3 DB2 サポート・ツールの構文を一時に 1 ページに 表示 o 17.3 第 2 章 DB2 ユニバーサル・データベース・サーバーの障害追及 o 17.4 第 8 章 DB2 データ・リンク・マネージャーのトラブルシューティ ング * 64 ビット・プラットフォームで DB2 ユニバーサル・データベースを使用する o 18.1 第 5 章 構成 + 18.1.1 LOCKLIST + 18.1.2 shmsys:shminfo_shmmax o 18.2 第 6 章 制約事項 * XML エクステンダー 管理およびプログラミング * MQSeries o 20.1 DB2 MQSeries 関数のインストールおよび構成 + 20.1.1 MQSeries のインストール + 20.1.2 MQSeries AMI のインストール + 20.1.3 DB2 MQSeries 関数を使用可能にする o 20.2 MQSeries メッセージ・スタイル o 20.3 メッセージ構造 o 20.4 MQSeries 関数の概説 + 20.4.1 制約事項 + 20.4.2 エラー・コード o 20.5 使用のシナリオ + 20.5.1 基本メッセージング + 20.5.2 メッセージの送信 + 20.5.3 メッセージの取り出し + 20.5.4 アプリケーション間接続 + 20.5.4.1 要求/応答通信 + 20.5.4.2 発行/サブスクリプション o 20.6 enable_MQFunctions + enable_MQFunctions o 20.7 disable_MQFunctions + disable_MQFunctions ------------------------------------------------------------------------ 管理の手引き ------------------------------------------------------------------------ 7.1 入手可能な更新 「管理の手引き」はフィックスパック 4 の一部として更新され、最新の PDF は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンライン でダウンロードできます。 これらの注釈の情報は、更新された解説書への追加情報 です。更新された資料は、 すべて CD でも入手できます。 この CD は、PTF 番号 U478862 を使用して、DB2 サービス を介して注文できます。 DB2 サービスへの連 絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 管理の手引き: 計画 ------------------------------------------------------------------------ 8.1 第 8 章 物理データベース設計 8.1.1 表スペース設計上の考慮事項 8.1.1.1 データが RAID 上に配置されている場合の表スペース・パフォーマンスの 最適化 DB2_PARALLEL_IO DB2_PARALLEL_IO は、また複数の定義されたコンテナーを持つ表スペースにも 影響 を及ぼします。レジストリー変数を設定しないと、入出力並行処理は 表スペースの コンテナー数に等しくなります。レジストリー変数を設定すると、入出力並行処理 は プリフェッチ・サイズをエクステント・サイズで割った結果に 等しくなりま す。表スペース内の個々のコンテナーが複数の物理ディスクにまたがって ストライ プされた場合は、レジストリー変数の設定が必要になる場合があります。 たとえば、表スペースに 2 つのコンテナーがあって、プリフェッチ・サイズがエク ステント・サイズ の 4 倍だとします。レジストリー変数を設定しないと、この表 スペースに対する プリフェッチ要求は、2 つの要求に分割されます (各要求は 4 エクステントにわたります)。プリフェッ チャーが利用できる場合は、2 つのプリ フェッチャーがこれらの要求を並列で処理できます。レジスト リー変数が設定され ている場合は、この表スペースに対する プリフェッチ要求は、4 つの要求に分割さ れ (要求ごとに 1 エクステント)、4 つの プリフェッチャーが要求を並列で処理で きます。 この例では、2 つのコンテナーがそれぞれ専用の単一ディスクを持っている場合 は、 この表スペースにレジストリー変数を設定すれば、これらのディスクが競合す る恐れが あります。これは、2 つのプリフェッチャーが 2 つの各ディスクを同時 にアクセスする可能性 があるからです。ただし、2 つのコンテナーがそれぞれ複数 のディスクにまたがってストライプ されている場合は、レジストリー変数を設定し ても、4 つの異なるディスクを同時にアクセスできる 可能性があります。 ------------------------------------------------------------------------ 8.2 付録 D. 各国語サポート (NLS) 8.2.1 国別 / 地域別コードおよびコード・ページのサポート 「サポートされている言語およびコード・セット」の表において、 コード・ページ 5488 は GB 18030 とも呼ばれ、 コード・ページ 1394 は ShiftJISX 0213 とも呼 ばれています。 8.2.2 インポート / エクスポート / ロードに関する 考慮事項 -- コード・ページ 1394 および 5488 の制約 コード・ページ 1394 (ShiftJISX 0213) および 5488 (GB 18030) のデータは、ロ ードまたは インポート・ユーティリティーを用いてユニコード・データベースに移 動できます。エクスポート・ ユーティリティーを使用すれば、データをユニコー ド・データベースからコード・ページ 1394 およ び 5488 のデータ・ファイルに移 動できます。 ユニコード・クライアントとユニコード・サーバーとの間の接続だけがサポートさ れているので、 ロード、インポート、またはエクスポート・ユーティリティーを使 用する前に、ユニコード・ クライアントを使用するか、DB2 レジストリー変数を DB2CODEPAGE を 1208 に設定する必要が あります。 コード・ページ 1394 または 5488 からユニコードに変換すると、拡張されます。 たとえば、2 バイト文字は 2 つの 16 ビットユニコード文字 として GRAPHIC 列に 保管されます。ユニコード・データベースのターゲット列が、 いかなる拡張ユニコ ード・バイトでも収容できるだけの幅を持っていることを確認する必要がありま す。 ------------------------------------------------------------------------ 管理の手引き : パフォーマンス ------------------------------------------------------------------------ 9.1 システム一時表スキーマ システム一時表のスキーマは、それを作成したアプリケーションおよび 許可 ID に よって決定されます。このデータが使用可能な場合、表が作成された スキーマは、 です。場合によっては、 スキーマを決定するためにこれらの ID の一方だけを使用して表が作成されることもあり、 時にはまったく使用しない場合 もあります。これによって、AUTHID.TEMPTABLENAME また は .TEMPTABLENAME のよ うな表が作成されます。GET SNAPSHOT コマンドを使用すれば、 これらの表のスキ ーマ情報を表示できます。このコマンドの詳細に関しては コマンド解説書 を 参照 してください。 ------------------------------------------------------------------------ 9.2 第 8 章 操作パフォーマンス 9.2.1 ブロック・ベースのバッファー・プール このフィーチャーは、Sun Solaris 操作環境でのみサポートされています。 入出力のオーバーヘッドのために、ページをディスクからプリフェッチすること は、 費用のかかる操作です。DB2 のプリフェッチは、処理を入出力とオーバーラッ プできる場合に、 スループットを大幅に改善します。大半のプラットフォームは、 連続するページをディスクから不連続なメモリーの部分に読み取るための高性能な プリミティブを 備えています。これらのプリミティブは通常、"分散読み取り"また は"ベクトル I/O"と呼ばれます。プラットフォームによっては、これらのプリミテ ィブのパフォーマンスは、 大きなブロック・サイズでの入出力とは比較にならない 場合があります。 デフォルトでは、バッファー・プールは、ページ・ベースです。 つまり、ディスク上の連続するページは、メモリー内の 不連続のページにプリフェ ッチされます。ページをディスクからバッファー・プールの連続する ページに読み 取ることができれば、プリフェッチのパフォーマンスは、これらのプラットフォー ム上で さらに改善します。レジストリー変数 DB2_BLOCK_BASED_BP を使用すれば、 一連の連続するページを保持するバッファー・プールにセクションを作成できま す。 これらの一連の連続するページは、"ブロック"と呼ばれます。このレジストリ ー変数を 設定すれば、順次プリフェッチは、各ページを個別に読み込むのではな く、 ページをディスクから直接、これらのブロックに読み込みます。これによって 入出力のパフォーマンス が改善されます。このレジストリー変数について詳しくは 管理の手引き の「レジストリーおよび環境変数」 のセクションを参照してくださ い。 エクステント・サイズの異なる複数の表スペースをブロック・サイズが同じバッフ ァー・プールに 結合することができます。エクステント・サイズとブロック・サイ ズは、別個の概念を扱うにも かかわらず、両者の間には密接な関係があります。 エクステントとは、表スペースが複数のコンテナー にわたってストライプされる細 分度です。 ブロックとは、順次プリフェッチ要求を実行する入出力サーバーが、ブ ロック・ベースの入出力 の実行を考慮する唯一の細分度です。 個々の順次プリフェッチ要求は、エクステント・サイズ・ページを使用します。そ のような プリフェッチ要求を受け取ると、入出力サーバーは、各要求を分散読み取 り方式を用いたページ・ ベースの入出力ではなく、ブロック・ベースの入出力とし て実行する場合のコストおよび利点を判別 します (バッファー・プールにブロッ ク・ベースの領域がある場合)。 あらゆる入出力をブロック・ベースの入出力とし て実行する利点は、 連続するディスクから連続するメモリーに読み込む ことによ るパフォーマンス上の利点にあります。 コストは、この方式の使用により無駄にな る バッファー・プール・メモリーの量です。 ブロック・ベースの入出力を実行する場合は、次の 2 つの理由により、 バッファ ー・プール・メモリーが無駄になる可能性があります。 * プリフェッチ要求に含まれるページ数は、ブロック内のページ数より少ない。 つまり、エクステント・サイズがブロック・サイズより小さい。 * プリフェッチ要求の一部として要求されるページの一部は、 すでにバッファ ー・プールのページ域にある。 注:バッファー・プールのブロック・ベースの領域における各ブロックを さらに 分割することはできません。ブロック内のページは、すべて隣接している必要 があります。その結果、 スペースが無駄になる可能性があります。 入出力サーバーは、ブロック・ベースの入出力を実行する利点を得るために、各ブ ロック内に多少の 無駄なページを見越しています。しかし、あまりに多くのブロッ クが無駄になる場合は、 入出力サーバーは、バッファー・プールのページ域にペー ジ・ベースでプリフェッチする方式に 戻ります。その結果、プリフェッチ中に行わ れた入出力の一部は、 ブロック・ベースではありません。これは最適な状態ではあ りません。 最適なパフォーマンスのためには、エクステント・サイズが同じ表スペースを ブロ ック・サイズが同じバッファー・プールに結合する必要があります。良いパフォー マンスは、 一部の表スペースのエクステント・サイズが結合先のバッファー・プー ルのブロック・サイズより大き い場合でも、達成できます。エクステント・サイズ がブロック・サイズより小さい場合は、 表スペースのバインドはお勧めしません。 注:バッファー・プールのブロック域は、順次プリフェッチにのみ 使用されま す。 使用中のシステム上に関係する順次プリフェッチがほとんど、またはま ったく 存在しない場合は、ブロック域は、バッファー・プールの無駄な部分 になります。 AWE とブロック・ベースのサポートの両方を同時にバッファー・プールのセッ トアップとすることは できません。DB2_AWE および DB2_BLOCK_BASED_BP レ ジストリー変数の両方が同じバッファー・プールを 参照する場合は、AWE に 優先順位が与えられます。ブロック・ベースのサポートは、この場合、 使用 不可になり、AWE が使用不可になった場合にのみ再び使用できるようになりま す。 拡張記憶域を使用するバッファー・プールは、ブロック・ベースの入出力を サポートしていません。 9.2.1.1 ブロック・ベースのバッファー・プールの例 例を検討する前に、システム上のバッファー・プールの ID について知る必要があ ります。 バッファー・プールの ID は、BUFFERPOOLID 列または SYSCAT.BUFFERPOOLS システム・カタログ視点を調べれば わかります。 シナリオ 1 ページ数が 1000 ページであり ID が 4 のバッファー・プールがあります。各ブロ ックに 32 ページ が含まれ、700 ページからなるブロック域を作成するとします。 次のコマンドを実行する必要があります。 db2set DB2_BLOCK_BASED_BP=4,700,32 データベースが始動すると、ID が 4 で、ブロック域が 672 ページ、ページ域が 328 ページの バッファー・プールが作成されます。この例では、32 を均等に 700 に分割 することはできません。つまり指定されたブロック域サイズは、 次の公式 を用いて最も近いブロック・サイズ境界に削減される必要があります。 ((block area size)) FLOOR(-----------------) X block size ( (block size) ) ( 700 ) = FLOOR(-----------------) X 32 ( 32 ) = 21 x 32 = 672 シナリオ 2 ページが 3000 ページであり ID が 11 のバッファー・プールがあります。 2700 ページからなる ブロック域を作成するとします。 次のコマンドを実行する必要が あります。 db2set DB2_BLOCK_BASED_BP=11,2700 データベースが始動すると、ID が 11 で、ブロック域が 2688 ページ、ページ域が 312 ページの バッファー・プールが作成されます。 ブロック・サイズに明確な値 を指定しないと、 デフォルト値 32 が使用されます。この例では、32 を均等に 2700 に分割 することはできません。 つまり指定されたブロック域サイズは、 次 の公式を用いて最も近いブロック・サイズ境界に削減される必要があります。 ((block area size)) FLOOR(-----------------) X block size ( (block size) ) ( 2700 ) = FLOOR(-----------------) X 32 ( 32 ) = 84 x 32 = 2688 ------------------------------------------------------------------------ 9.3 第 10 章 プロセッサーの追加による構成の拡大縮小 9.3.1 分割したデータベースにノードを追加する際の問題 デフォルト・ページ・サイズ (4KB) と異なるページ・サイズで、複数の システム 一時表スペースを持つ分割したデータベースにノードを追加する際に、 以下のよう なエラー・メッセージや SQL コードが表示される場合があります。 "SQL6073N ノ ードの追加に失敗しました"。 これはノードが生成される際、IBMDEFAULTBP バッフ ァー・プールが 4 KB のページ・サイズで 存在するために、発生します。 たとえば、現在の分割したデータベースにノードを追加するための db2start コマ ンドを使用することができます。 DB2START NODENUM 2 ADDNODE HOSTNAME newhost PORT 2 分割されたデータベースがデフォルトのページ・サイズでシステム一時表スペース を持つ場合 以下のメッセージが返されます。 SQL6075W 「データベース・マネージャーの開始」操作は正常にノードを追加しました。 このノードは、すべてのノードを再び停止および開始するまで活動状態になりません。 ただし、分割されたデータベースがデフォルトのページ・サイズではないシステム 一時表スペースを 持つ場合は、以下のメッセージが返されます。 SQL6073N ノードの追加操作に失敗しました。SQLCODE = "<-902>" 同様の例では、db2nodes.cfg ファイルに新しいノードを記述し更新すると ノード 追加コマンドが使用できます。 そのファイルを 編集した後、デフォルトのペー ジ・サイズでシステム一時表スペースを 持っている、分割されたデータベースで ADD NODE コマンドを実行すると以下のメッセージが 返されます。 DB20000I ADD NODE コマンドが正常に終了しました。 ただし、分割されたデータベースがデフォルトのページ・サイズではないシステム 一時表スペースを 持つ場合は、以下のメッセージが返されます。 SQL6073N ノードの追加操作に失敗しました。SQLCODE = "<-902>" 上で概略を説明した問題を予防する 1 つの方法は以下を実行することです。 DB2SET DB2_HIDDENBP=16 このコマンドは db2start や ADD NODE コマンドを実行する前に実行します。この レジストリー変数は DB2 がデフォルトと異なるページ・サイズを使用している 16 ページ分の プールを隠しバッファーに割り振れるようにします。 これにより、ADD NODE 操作を正常に完了することができます。 これらの問題を予防する方法としては、この他に ADD NODE コマンド や db2start コマンドで WITHOUT TABLESPACES 文節を指定する方法があります。コマンド実行 後、CREATE BUFFERPOOL ステートメントを使用して、 バッファー・プールを作成 し、ALTER TABLESPACE ステートメントを使用して、 バッファー・プールにシステ ム一時表スペースを作成する必要があります。 デフォルト・ページ・サイズ (4 KB) と異なるページ・サイズで 複数の表スペース を持つ既存のノード・グループにノードを 追加する場合、以下のようなエラー・メ ッセージが出る場合があります。 "SQL0647N バッファー・プール "" は現在活動状 態ではありません。" これは、デフォルトでないページ・サイズ・バッファー・プ ールを、表スペースとして 活動状態になっていない、新規のノード上に作成した場 合に発生します。 たとえば、ノード・グループにノードを追加するために ALTER NODEGROUP ステート メントを 使用することができます。 DB2START CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) デフォルトのページ・サイズの表スペースを持つノード・グループの場合は 以下の ようなメッセージが返されます。 SQL1759W 再配布されたノード・グループはノード・グループ "" のオブジェクトの区分化データを変更し、追加ノードを組み込むか、 あるいはドロップ・ノードを排除する必要があります。 一方、ノード・グループが、デフォルトのページ・サイズでない表スペースを持つ 場合 以下のメッセージが返されます。 SQL0647N バッファー・プール "" は現在アクティブではありません。 この問題を予防する 1 つの方法としては、それぞれのページ・サイズのバッファ ー・プールを作成し、 その後、ALTER NODEGROUP ステートメントを実行する前にデ ータベースに再接続する方法があります。 DB2START CONNECT TO mpp1 CREATE BUFFERPOOL bp1 SIZE 1000 PAGESIZE 8192 CONNECT RESET CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) この問題を防止する 2 つ目の方法は、以下のコマンドを実行する方法です。 DB2SET DB2_HIDDENBP=16 db2start コマンドや CONNECT、 ALTER NODEGROUP ステートメントなどを実行する 前に実行します。 ALTER TABLESPACE ステートメントはノードに表スペースを追加するために使用する 場合、他の 問題が起こることもあります。 例: DB2START CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) WITHOUT TABLESPACES ALTER TABLESPACE ts1 ADD ('ts1') ON NODE (2) この一連のコマンドとステートメントは SQL0647N エラー・メッセージを生成しま す。 (想定メッセージ SQL1759W ではありません)。 この変更を正しく完了させるには、ALTER NODEGROUP... WITHOUT TABLESPACES ステ ートメントの後で、データベースに再接続する必要があります。 DB2START CONNECT TO mpp1 ALTER NODEGROUP ng1 ADD NODE (2) WITHOUT TABLESPACES CONNECT RESET CONNECT TO mpp1 ALTER TABLESPACE ts1 ADD ('ts1') ON NODE (2) この問題を防止する他の方法は、以下のコマンドを実行する方法です。 DB2SET DB2_HIDDENBP=16 db2start コマンドや CONNECT、ALTER NODEGROUP、 ALTER TABLESPACE ステートメ ントなどを実行する前に実行します。 ------------------------------------------------------------------------ 9.4 DB2 レジストリーと環境変数 9.4.1 パフォーマンス変数への修正 表 5. パフォーマンス変数 変数名 オペレーティン 値 グ・システム 説明 DB2_BLOCK_BASED_BP Solaris Default=None 値: パラメーターによって異なりま す バッファー・プール内に ブロック域を作成するために必要な値を指定します。 バッファー・プールの ID は必要 であり、SYSCAT.BUFFERPOOLS システム・カタ ログ視点の BUFFERPOOLID 列を調べれば わかります。 バッファー・プール内で ブロック・ベースの入出力に割り振られるページ数を 指定する必要があります。 ブロックに含まれるページ数はオプションで、デフォルト値は 32 です。 このレジストリー変数の使用の フォーマットは次の通りです。 DB2_BLOCK_BASED_BP=BUFFER POOL ID,BLOCK AREA SIZE,[BLOCK SIZE];... セミコロンで項目を分離して同じ変数を使用することで、複数のバッファー・プ ールを ブロック・ベースとして定義できます。 BLOCK SIZE の値は、2 〜 256 の範囲を 取る可能性があります。BLOCK SIZE を 指定しないと、デフォルトの 32 が 使用されます。 指定された BLOCK AREA SIZE がバッファー・プール・サイズの合計 の 98% より 大きい場合は、バッファー・プールはブロック・ベースで作成されません。 バッ ファー・プールのページ・ベースの領域に常にバッファー・プールの一部を持つ ことをお勧め します。これは、システム上の入出力の大半が順次プリフェッチで あっても、個々のページが必要 になる可能性があるからです。BLOCK AREA SIZE に指定された値が BLOCK SIZE の倍数でない場合 は、最も近いブロック・サイズ 境界に削減されます。ブロック・ベースの入出力について 詳しくは 9.2.1, ブロ ック・ベースのバッファー・プール を参照してください。 DB2_NO_FORK_CHECK UNIX デフォルト=OFF 値: ON または OFF この変数が "ON" の場合、クライアント・プロセスは、 アプリケーションが実行 プロセスをコピーする (fork する) のを 防止しません。fork が行われると、結 果は予測できません。 結果に影響がない場合もあれば、悪い結果を導いたり、エ ラー・コードが戻されたり、 アプリケーションでトラップが生じたりする可能性 もあります。 アプリケーションが fork しないと確信しており、パフォーマンス をより向上させたい場合に、 この変数を "ON" に変更するようにしてください。 9.4.2 各種レジストリー変数への修正および追加 DB2_NEWLOGPATH2 レジストリー変数は、すべてのオペレーティング・システムで使 用できます。新規変数、DB2_ROLLFORWARD_NORETRIEVE が導入されました。両方の変 数に関する正しい情報を以下に示します。 表 6. 各種変数 変数名 オペレーティン 値 グ・システム 説明 DB2_NEWLOGPATH2 すべて デフォルト=NO 値: YES または NO このパラメーターを使用すると、 重複ロギングを行うために別のパスを使用する かどうかを指定できます。 使用されるパスは、"2" を、logpath データベース構 成パラメーターの 現行値に追加することにより生成されます。 DB2_ROLLFORWARD_NORETRIEVE すべて デフォルト=(設定しない) 値: YES または NO データベース構成パラメーター USEREXIT が使用可能な場合、 ロールフォワード 操作中にログ・ファイルが自動的にアーカイブから検索されます。 DB2_ROLLFORWARD_NORETRIEVE 変数を指定すると、ロールフォワード操作で ロ グ・ファイルをアーカイブから検索しません。この変数はデフォルトで使用不可 です。 ロールフォワードで自動的にログ・ファイルを検索したくない場合は、 この変数を YES に設定してください。たとえば、ホット・スタンドバイ・セット アップにおいて この変数を YES に設定し、不良アプリケーションにより作成さ れたログ・レコードを保持し、 バックアップ・システムを壊してしまわないよう にします。 9.4.3 汎用レジストリー変数の修正および追加 新規変数、DB2_REDUCED_OPTIMIZATION が導入されました。 表 7. 汎用レジストリー変数 変数名 オペレーティン 値 グ・システム 説明 DB2_REDUCED_OPTIMIZATION すべて デフォルト=NO 値: YES、NO、または整数 レジストリー変数により、特定の最適化レベルで使用される最適化手法を いくつ か使用不可にします。使用する最適化手法の数を減らすと、 最適化を行うのに使 用する時間とリソースも削減されます。 注: 最適化にかかる時間とリソースの使用が削減されても、 最適化とは言えな いデータ・アクセス・プランを生み出すリスクは増します。 * 「NO」に設定した場合 最適化プログラムは最適化手法を変更しません。 * 「YES」に設定した場合 最適化レベルがデフォルトの 5 またはそれ以下の場合、 最適化プログラム は、かなりの準備時間とリソースを消費する可能性のある 最適化手法をい くつか使用不可にしますが、通常はより優れたアクセス・プランを生成する ことはありません。 最適化レベルを正確に 5 にすると、最適化プログラムは、 いくつかの追加 の手法を削減したり使用不可にしたりし、 最適化にかかる時間とリソース の使用をさらに削減しますが、 一方、最適化とは言えないデータ・アクセ ス・プランを生み出すリスクは増します。 5 より低い最適化レベルの場 合、これらの手法のいくつかは、 効果がなくなる可能性があります。その 場合でも、実施されます。 * 任意の整数に設定した場合 値を「YES」に設定した場合と影響は同じです。最適化レベル 5 に動的に準 備された 照会動作に、次に述べる動作が追加されます。照会ブロック内の 結合の合計数が 設定値を超えると、最適化プログラムは、上記の最適化レ ベル 5 で説明したように 追加の最適化手法を使用不可にする代わりに、貪 欲型結合列挙に切り替えます。 つまり、照会は、最適化レベル 2 と同様の 最適化となります。 貪欲型結合列挙および動的結合列挙に関する情報については、 管理の手引 き: パフォーマンス の「最適結合を選択するための検索方式」を参照して ください。 最適化レベル 5 の動的最適化縮小は、管理者の手引き: パフォーマンスの「最適 化クラス」に説明があるように、 DB2_REDUCED_OPTIMIZATION が整数に設定され た場合の動作と同様に、 「YES」に設定され、最適化レベル 5 の場合の動作より も優先順位が高くなります。 ------------------------------------------------------------------------ 管理の手引き : インプリメンテーション ------------------------------------------------------------------------ 10.1 第 8 章 データベースの回復 10.1.1 中断入出力の使用法 第 8 章「データベース・リカバリー」に、中断入出力関数の使用法に関するセクシ ョンを追加、更新します。 注:db2inidb ユーティリティーに関する下記の情報を、「バージョン 7.2 新着情 報」に 記載されている情報と置き換えてください。 db2inidb は DB2 に添付された新しいツールで、クラッシュ・リカバリーを実行で き、また データベースをロールフォワード保留状態にすることができます。 中断入出力は、連続的なシステム使用可能性を、オンライン分割ミラー・ハンドリ ングの フル・インプリメンテーション (つまりデータベースをシャットダウンせず にミラーを 分割) を提供することでサポートします。大きなデータベースでバック アップをオンラインまたは オフラインにすることが難しい場合は、中断入出力と分 割ミラーを使用してミラー・イメージから バックアップまたはシステム・コピーを 行うことができます。 中断入出力は、データベースの分割ミラー・イメージが整合性のあるものであるこ とを 確認するためにディスク書き込みを防止します。データベースが使用停止の 間、 オンライン・バックアップおよびリストア以外のすべてのデータベース操作は 通常どおり機能します。ただし、バッファー・プールまたはログ・バッファーから ログにダーティー・ページをフラッシュしようとしてハングする操作もいくつかあ ります。 通常、データベース入出力が再開してから、これらの操作を再開する必要 があります。 データベース入出力が、元々中断されていた接続と同じ接続で再開さ れることが重要です。 同じ接続でないと、バッファー・プールからディスクにダー ティー・ページを フラッシュする要求を行った場合に、ハングする可能性がありま す。 データベースのミラーリングは主として、データベース・ディレクトリーの 内容を すべてコピーすることです。ログ・ディレクトリーおよび表スペース・コンテナー が データベース・ディレクトリーにない場合は、それらをコピーすることもまた必 要です。 分割ミラーリングされたデータベースはこれらのディレクトリー・パスに 従属しているため、 これらのディレクトリーのコピー先のパスは、1 次システムの ディレクトリーと同じにする 必要があります。つまり、インスタンスは同じでなけ ればなりません。 この従属関係のため、db2inidb ツールの新規 "relocate" オプ ションが 使用されているのでなければ、同じシステム上のデータベースを 1 次シ ステムとして ミラーリングすることはできません。 "relocate" オプションの目的は、指定された構成ファイルを使用して、 指定のシ ステム上のデータベースを再配置することです。これには、内部データベース・デ ィレクトリー、 コンテナー・ディレクトリー名、ログ・ディレクトリーの変更、 インスタンス名の変更、およびデータベース名の変更が関係します。 データベー ス・ディレクトリー、コンテナー・ディレクトリー、および ログ・ディレクトリー が、同じシステム上の異なるディレクトリー・パスに 1 次データベースとして正常 にミラーリングされたと想定すると、 db2inidb ツールを "relocate" オプション と一緒に使用して、 ミラーリングされたデータベースの内部パスを変更することが できます。 このオプションの使用法は以下の通りです。 ストレージ装置のミラーリングの度合いによって、db2inidb の使用法は変わりま す。 以下の使用法では、データベース全体がストレージ・システムを通じて一貫し てミラーリングされていることを 想定しています。 マルチノード環境で、いずれかの区分から分割イメージを使用できるようにするに は、 db2inidb ツールを区分それぞれで実行する必要があります。 db2inidb ツー ルは、すべての区分で同時に実行することができます。 1. レプリケーション・データベースを作成する この目的は、1 次データベースの レプリケーションを読み取りに使用するこ とです。 レプリケーション・データベースの作成手順は以下の通りです。 a. 次のコマンドを入力して、1 次データベースで入出力書き込みを中断し ます。 db2 set write suspend for database b. オペレーティング・システム・レベル・コマンドを使用して、1 次デー タベースからミラーを分割します。 c. 次のコマンドを入力して、1 次データベースで入出力書き込みを再開し ます。 db2 set write resume for database コマンドの実行後、1 次データベースは正常な状態に戻るはずです。 d. データベースの分割ミラーを別のシステムからマウントします。 e. 次のコマンドを入力して、データベース・インスタンスを開始します。 db2start f. 次のコマンドを入力して、DB2 クラッシュ・リカバリーを開始します。 db2inidb database_name AS SNAPSHOT 注:このコマンドは、中断書き込み状態を除去し、 分割時に未了であ ったトランザクションによる変更をロールバックします。 この処理はオフライン・バックアップにも使用することができますが、 1 次 データベースにリストアする場合、ログ・チェーンが一致しないために、この バックアップを ロールフォワードに使用することはできません。 2. 分割ミラーをスタンドバイ・データベースとして使用する ミラーリングされた (スタンドバイ) データベースは ログを通じて連続的に ロールフォワードするため、1 次データベースで作成されている新しいログ は、 1 次システムから絶えずフェッチされます。分割ミラーをスタンドバ イ・データベースとして使用する 方法は以下の通りです。 a. 1 次データベースで入出力書き込みを中断します。 db2 set write suspend for database b. オペレーティング・システム・レベル・コマンドを使用して、1 次デー タベースからミラーを分割します。 c. 1 次データベースで入出力書き込みを再開し、1 次データベースが正常 処理に戻るようにします。 db2 set write resume for database d. データベースの分割ミラーを別のシステムにマウントします。 e. ミラーをロールフォワード保留状態にして、ミラーをロールフォワード します。 db2inidb database_name AS STANDBY 注:このコマンドは、中断書き込み状態を除去し、ミラーリングされた データベースをロールフォワード保留状態にします。 f. ユーザー出口プログラムをセットアップしてログをコピーし、1 次シス テムから ログ・ファイルを検索します。これにより、このミラーリング されたデータベースで 最新ログを使用できるようにします。 g. データベースをログの終わりまでロールフォワードします。 h. ステップ f に戻り、1 次データベースがダウンするまでこのプロセスを 繰り返します。 3. 分割ミラーをバックアップ・イメージとして使用する ミラーリングされたデータベースを 1 次データベースに対して リストアする ためのバックアップ・イメージとして使用する方法は、以下の通りです。 a. オペレーティング・システム・コマンドを使用してミラーリングされた データとログを 1 次データベースの最上部にコピーします。 b. 次のコマンドを入力して、データベース・インスタンスを開始します。 db2start c. 次のコマンドを実行して、ミラーリングされたデータベースをロールフ ォワード保留状態にし、 書き込み中断状態を除去します。 db2inidb database_name AS MIRROR d. データベースをログの終わりまでロールフォワードします。 4. ミラーを同じシステムに 1 次データベースとして分割する db2inidb ツールの "relocate" オプションを使用して、データベースを 同じ システムに 1 次データベースとしてミラーリングする方法は、以下の通りで す。 この例では、データベースが新規インスタンスの下で使用されることを 想定しています。 a. 新規インスタンスを現行システムに作成します。 b. 1 次データベースで入出力書き込みを中断します。 db2 set write suspend for database c. オペレーティング・システム・レベル・コマンドを使用して、1 次デー タベースからミラーを分割します。 注:データベース・ディレクトリー、コンテナー・ディレクトリー、お よび ログ・ディレクトリーが、別々のディレクトリーにコピーさ れるはずです。 コンテナー・ディレクトリーまたはログ・ディレ クトリーがデータベース・ディレクトリーの下に 存在する場合 は、データベース・ディレクトリーのみがコピーされます。 d. 1 次データベースで入出力書き込みを再開し、1 次データベースが正常 処理に戻るようにします。 db2 set write resume for database e. 以下の情報より、構成ファイルを作成します。 DB_NAME=, DB_PATH=, INSTANCE=, LOG_DIR=, CONT_PATH=, ... CONT_PATH=, NODENUM= 注:LOG_DIR および CONT_PATH フィールドは、ログ・ディレクトリー または コンテナー・ディレクトリーがデータベース・ディレクト リーの外に存在する場合にのみ必要です。 指定されない場合のデ フォルトがゼロである NODENUM の除いて、 その他のフィールドは すべて必須です。 f. 新規に作成したインスタンスからデータベースを開始します。 db2start g. ミラーリングされたデータベースを再配置し、中断状況を除去し、 ロー ルフォワード保留状態のミラーを配置します。 db2inidb database_name as STANDBY relocate using config_file h. ユーザー出口プログラムをセットアップしてログをコピーし、1 次デー タベースから ログ・ファイルを検索します。これにより、このミラーリ ングされたデータベースで 最新ログを使用できるようにします。 i. データベースをログの終わりまでロールフォワードします。 j. ステップ h に戻り、1 次データベースがダウンするまでこのプロセスを 繰り返します。 ------------------------------------------------------------------------ サテライト管理 手引きおよび解説書 ------------------------------------------------------------------------ 11.1 バージョン 7.2 DB2 パーソナル・エディションおよび DB2 ワークグループ・ エディションを サテライトとしてセットアップ 以下のセクションでは、Windows ベースのバージョン 7.2 DB2 パーソナル・エディ ション および DB2 ワークグループ・エディション・システムを、サテライト環境 で 完全機能サテライトとして使用できるようにセットアップする方法について説明 します。 以下の情報の中で使用されている用語と概念については、サテライト管理 手引きおよび解説書 を 参照してください。このブックは次の URL にあります。 http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/v6pubs.d2w/en_main サテライト管理 手引きおよび解説書 の情報を補足する Technotes については、次 の URL を 参照してください。 http://www-4.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/browse.d2w/ report?type=tech5udb&tech5udb=Y 11.1.1 前提条件 DB2 パーソナル・エディションまたは DB2 ワークグループ・エディションを サテ ライトとしてセットアップするには、次のものが必要です。 1. DB2 制御サーバー DB2 制御サーバーとは、Windows NT または AIX 上で 実行される DB2 エンタ ープライズ・エディション・システムのことで、 制御サーバー・コンポーネ ントがインストールされています。 使用する DB2 エンタープライズ・エディ ション・システムは、フィックスパック 2 以上 付きバージョン 6、またはバ ージョン 7 (フィックスパック・レベルは任意) です。 o DB2 制御サーバーとして使用したいバージョン 6 エンタープライズ・エ ディション・ システムがある場合は、11.1.3, エンタープライズ・エデ ィション・システムでのフィックスパック 2 以上の インストール を参 照してください。 o バージョン 7 を持っているが、制御サーバー・コンポーネントをインス トールして いない場合は、このコンポーネントをインストールし、すで にインストールされている フィックスパックを再インストールして、 DB2 制御サーバー・インスタンスと サテライト制御データベースを作成 します。これらのオブジェクトの作成手順については、 サテライト管理 手引きおよび解説書 を参照してください。 注:バージョン 7.2 のエンタープライズ・エディション・システムを DB2 制御サーバーとして 使用するために Windows NT にインストールする場 合、応答ファイル・インストールを 実行したいときは、応答ファイルに 指定するキーワードについて、 「DB2 制御サーバーの応答ファイルのキ ーワード」 という Technote を参照してください。 2. DB2 制御サーバー・インスタンスとサテライト制御データベース DB2 制御サーバー・インスタンスは一般に DB2CTLSV という名前で、サテライ ト制御 データベースは SATCTLDB という名前です。DB2 制御サーバー・イン スタンスと サテライト制御データベースは、エンタープライズ・エディショ ン・システム上にあり、 Windows NT に制御サーバー・コンポーネントととも に DB2 をインストールすると自動的に 作成されます。AIX 上に DB2 をイン ストールする場合は、DB2 制御サーバー・インスタンスと サテライト制御デ ータベースの作成方法について、サテライト管理 手引きおよび解説書 を参照 してください。 3. サテライト管理センター サテライト管理センター は、サテライト環境をセットアップおよび管理する ために 使用する GUI ツールのセットです。このツールのセットには コント ロール・センター からアクセス します。サテライト管理センター とサテラ イト環境の詳細について詳しくは、サテライト管理 手引きおよび解説書、 お よび サテライト管理センター から入手できるオンライン・ヘルプを参照して ください。 バージョン 6 の コントロール・センター を実行する場合は、 11.1.4, バージョン 6 コントロール・センター および サテライト管理セン ター のアップグレード を参照して ください。 サテライト管理センター を使用してサテライト環境をまだセットアップして おらず、 サテライト管理センター で新しいサテライトを表すオブジェクトを 作成していない場合は、 サテライトをインストールする前にまずこれらを終 えておきます。詳しくは、 サテライト管理 手引きおよび解説書 にあるサテ ライト環境のセットアップとテストの方法に関する 説明を参照してくださ い。 4. サテライトとして使用したいバージョン 7.2 パーソナル・エディションまた は ワークグループ・エディション・システム。 11.1.1.1 インストール上の考慮事項 DB2 パーソナル・エディションまたは DB2 ワークグループ・エディションを イン ストールするときは、いずれかのシステムを同期できるように特別な コンポーネン トを選択する必要はありません。応答ファイル・インストールを実行する 場合は、 バージョン 7.2 システムをインストールするときに指定するキーワードに つい て、応答ファイル・インストールの実行 を参照してください。バージョン 7.2 シ ステムの 対話式インストールを実行する場合は、同期を可能にするためにバージョ ン 7.2 システムで 設定する必要のある値について、DB2 のインストール完了後に 11.1.2, 同期化のためのバージョン 7.2 システムの構成 を 参照してください。 応答ファイル・インストールの実行 バージョン 7.2 の DB2 パーソナル・エディションまたは DB2 ワークグループ・ エディションの応答ファイル・インストールを実行する場合は、応答ファイルに次 の キーワードを設定できます。 応答ファイル・インストール時に 1 つ以上のキーワードを指定しないと決めた場合 は、 バージョン 7.2 システムを同期できるように DB2 のインストール後に実行す る必要の ある追加のステップについて、11.1.2, 同期化のためのバージョン 7.2 システムの構成 を参照してください。 またこのセクションの指示は、応答ファイ ルのインストール時に指定された値を 変更したい場合に使用することもできます。 db2.db2satelliteid システム上のサテライト ID を設定します。 注:このキーワードを 指定しないと、サテライト ID が、DB2 をインストー ルするために使用された ユーザー ID に自動的に設定されます。このユ ーザー ID をサテライト ID として 使用したい場合は、このキーワード の値を指定する必要はありません。 db2.db2satelliteappver システム上のアプリケーションのバージョンを設定します。 注:この キーワードを指定しないと、サテライト上のアプリケーションのバ ージョンが 自動的に V1R0M00 に設定されます。この値をアプリケーシ ョンのバージョンとして 使用したい場合は、このキーワードの値を指定 する必要はありません。 db2.satctldb_username サテライト制御データベースに接続するためにシステムに使用するユーザー名 を 設定します。 db2.satctldb_password ユーザー名がサテライト制御データベースに接続するときに、ユーザー名が DB2 制御サーバーに渡すパスワードを設定します。 応答ファイル・インストールを完了すると、バージョン 7.2 システムを同期化する 準備は完了です。サテライト上で db2sync -t コマンドを 実行して、サテライト上 で指定された値が正しいこと、およびサテライトが サテライト制御データベースに 接続できることを検査します。 応答ファイルのインストール実行の詳細については、サテライト管理 手引きおよび 解説書 を 参照してください。 注: 1. バージョン 7 では、Windows NT と Windows 2000 上ですべてのサービスを作 成する ためにはユーザー ID とパスワードが必要です。これらのユーザー ID とパスワードは、 キーワード対によって応答ファイル内で指定されます。応 答ファイルにある最初の キーワード対が、すべてのサービスのデフォルトの ユーザー ID とパスワードに なります。これは、そのサービスの特定のキー ワード対を指定することによって サービスのオーバーライドを提供しない限 り、変わりません。 バージョン 6 では、 リモート・コマンド・サービスによって使用されるユー ザー ID とパスワードを指定する ために、DB2 サテライト・エディションの 応答ファイル・インストール中 に admin.useridおよび admin.password キー ワードを指定できます。バージョン 7.2 のパーソナル・エディションおよび ワークグループ・エディションの場合は、これらのキーワードを指定すると、 バージョン 7.2 システム上で DB2DAS00 インスタンスに使用されます。 DB2 バージョン 7.2 システムの場合は、システム上の DB2 インスタンスが使用す る ユーザー ID とパスワードが、リモート・コマンド・サービスによって使 用されます。 db2.userid および db2.password の 値を指定しないと、上記 のデフォルト設定ルールが適用されます。 2. バージョン 6 では、応答ファイル・インストールを使用して DB2 サテライ ト・ エディションをインストールするときに、データベースを作成できま す。サテライトとして 使用する予定のバージョン 7.2 パーソナル・エディシ ョンまたはワークグループ・ エディション・システム上に応答ファイルをイ ンストールしているときは、 データベースを作成できません。以下のキーワ ード (説明については サテライト管理 手引きおよび解説書 を 参照) はサポ ートされていません。 o db2.userdb_name o db2.userdb_recoverable o db2.userdb_rep_src 11.1.2 同期化のためのバージョン 7.2 システムの構成 バージョン 7.2 システムを対話式にインストールする場合、DB2 のインストール 後、 システムの同期化前に、DB2 パーソナル・エディションまたは DB2 ワークグ ループ・ エディションでいくつかの値を設定する必要があります。 注:サテライトが サテライト制御データベースとの接続に使用するユーザー ID とパスワードを除き、サテライトでの すべての値を設定するために、システ ムでオペレーティング・システム・スクリプトを 実行することができます (ステップ 4 を参照してください)。 1. db2set コマンドを使用してサテライト ID を設定します。 DB2 パーソナル・エディションまたは DB2 ワークグループ・エディションを 対話式に インストールする場合、サテライト ID は、DB2 をインストールす るために使用された ユーザー ID に自動的に設定されます。このユーザー ID をサテライト ID として 使用したい場合は、このステップを実行する必要は ありません。サテライト ID の設定に ついては、サテライト管理 手引きおよ び解説書 を参照してください。 2. db2sync -s コマンドを使用して、サテライト上の アプリケーション・バージ ョンを設定します。 DB2 パーソナル・エディション または DB2 ワークグループ・エディションを 対話式にインストールする場合、 サテライト上のアプリケーション・バージ ョンは、自動的に V1R0M00 に設定されます。 この値をアプリケーションのバ ージョンとして使用したい場合は、このステップを 実行する必要はありませ ん。 サテライトで db2sync -g コマンドを 使用して、アプリケーション・バージ ョンの現在の設定を表示することができます。この値を 変更したい場合は、 db2sync -s コマンドを実行してください。 アプリケーション・バージョンの 新しい値を指定するようにプロンプトが出されます。 アプリケーション・バ ージョンの設定について詳しくは、サテライト管理 手引きおよび解説書 を 参照してください。 3. catalog node および catalog database コマンドを使用して、DB2 制御デー タベース・インスタンスと サテライト制御データベース SATCTLDB をサテラ イトでカタログします。 また、サテライトで db2sync -t コマンドを使用して、 DB2 シンクロナイザ ー・アプリケーションをテスト・モードでオープンすることが できます。コ マンドを実行したときに SATCTLDB データベースがサテライトで カタログさ れていない場合は、「制御データベースのカタログ」ウィンドウが オープン します。「制御データベースのカタログ」ウィンドウから使用できる DB2 デ ィスカバリー機能を 使用して DB2 制御サーバーと SATCTLDB データベースを カタログするか、または このウィンドウでホスト名とサーバー名を入力する ことができます。また、 ステップ 4 に記されているように、サテライトがサ テライト制御 データベースとの接続に使用するユーザー ID とパスワードの 入力のプロンプトも出されます。 注:バージョン 7.2 パーソナル・エディションまたは DB2 ワークグルー プ・ エディションを対話式にインストールした後、DB2 シンクロナイザ ーは自動的に テスト・モードで開始されることはありません (バージョ ン 6 サテライト・エディションの 場合)。 4. サテライトで db2sync -t コマンドを 実行して、以下を行います。 o サテライトがサテライト制御データベースとの接続に使用するユーザー ID と パスワードを指定します。 同期化証明書がまだサテライトで保管されていない場合は、 「制御デー タベースの接続」ウィンドウがオープンします。 このウィンドウを使用 して、サテライトがサテライト制御データベースとの接続に 使用するユ ーザー ID とパスワードを指定する必要があります。 o サテライトで設定される値が正しいかを検証します。 o サテライトがサテライト制御データベースに接続可能であることを検証 します。 構成タスクを完了すると、バージョン 7.2 システムを同期化する準備は完了です。 11.1.3 エンタープライズ・エディション・システムでのフィックスパック 2 以上 の インストール DB2 制御サーバーとして使用されるバージョン 6 エンタープライズ・エディショ ン・ システムの場合、システムは、フィックスパック 2 以降でなければなりませ ん。 以下のセクションでは、バージョン 6 エンタープライズ・エディションを Windows NT または AIX で DB2 制御サーバーとして使用するために実行する必要のある、 アップグレードのタスクについて説明します。バージョン コントロール・センター を使用している場合は、 11.1.4, バージョン 6 コントロール・センター および サテライト管理センター のアップグレード のステップも実行して、サテライト環 境を管理するために 正しいレベルの コントロール・センター および サテライト 管理センター を持っているかを確認してください。 11.1.3.1 DB2 制御サーバーとして使用するためにバージョン 6 DB2 エンタープラ イズ・エディションを アップグレード バージョン 6 DB2 エンタープライズ・エディション・システムを DB2 制御システ ム として使用するためには、これを制御サーバー・コンポーネントとともにインス トールすることが 必要であり、また DB2 エンタープライズ・エディションはフィ ックスパック 2 以上の サービス・レベルでなければなりません。DB2 制御サーバ ー・コンポーネントがインストールされて いるかどうか、および DB2 エンタープ ライズ・エディションのサービス・レベルに応じて、 以下のいずれかを実行するこ とが必要になります。 * DB2 制御サーバー・コンポーネントを既存の DB2 エンタープライズ・エディ ション V6.1 システム にインストールし、フィックスパック 2 以上をインス トールします。次にシステムの サテライト制御データベース (SATCTLDB) を 更新します。 * すでにインストールされている DB2 制御サーバーをフィックスパック 2 レベ ル以上に アップグレードします。 以下の情報を使用して、2 つの先行タスクのどちらを実行する必要があるかを 識別 し、状況に適合するステップを識別します。以下は、実行するステップのサマリー です。 1. まず、DB2 エンタープライズ・エディション・インストールの現在の状況を 確認します。 制御サーバー・コンポーネントがインストールされているかど うかと、DB2 のサービス・レベルを 判別します。 2. 2 番目に、入手した状態情報に基づいて、何を行う必要があるかを判別しま す。 3. 3 番目に、DB2 エンタープライズ・エディションをアップグレードするために 必要なステップを実行します。 DB2 制御サーバーは DB2 エンタープライズ・エディション (Windows NT 版および AIX 版) で のみ実行が可能です。プラットフォームに適した指示にしたがって次に 進んでください。 * Windows NT での DB2 エンタープライズ・エディションのアップグレード * AIX での DB2 エンタープライズ・エディションのアップグレード Windows NT での DB2 エンタープライズ・エディションのアップグレード 以下のセクションの情報を使用してバージョン 6 DB2 エンタープライズ・ エディ ション・システムの現在のサービス・レベルと、システムを フィックスパック 2 サービス・レベル以上に更新するために実行する必要のある ステップを判別してく ださい。以下のセクションの 1 つまたは複数のステップを 実行する必要がありま す。 * Windows NT での DB2 エンタープライズ・エディションの確認 * 実行が必要な項目の判別 * Windows NT での制御サーバーのインストール * Windows NT でのフィックスパック 2 以上のインストール * Windows NT での SATCTLDB のアップグレード Windows NT での DB2 エンタープライズ・エディションの確認 Windows NT に DB2 エンタープライズ・エディションがインストールされている場 合は、 以下のステップを実行してください。 1. 制御サーバー・コンポーネントがインストールされているかどうかを調べま す。 レジストリー・エディターを使用して、インストールされたコンポーネ ントのリストを 表示します。 a. コマンド・プロンプトに regedit を入力します。 b. HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\Components レジストリー・キー を使用して、 制御サーバーがリストされているかどうかを確認します。 リストされていない場合は、 制御サーバーはインストールされていませ ん。 2. DB2 エンタープライズ・エディションのサービス・レベルを判別します。 コ マンド・プロンプトから db2level コマンドを実行してください。 下の表を 使用して、出力を解釈します。 db2level 出力のキー・フィールドの値 DB2 システム リリース レベル 通知トークン の レベル: SQL06010 01010104 db2_v6, n990616 バージョン 6.1 ベース SQL06010 01020104 DB2 V6.1.0.1, n990824, バージョン WR21136 6.1 プラス フィックスパ ック 1 SQL06010 01030104 DB2 V6.1.0.6, s991030, バージョン WR21163 または DB2 6.1 プラス V6.1.0.9, s000101, フィックスパ WR21173 ック 2 注:レベルが 01030104 より上の場合、システムはフィックスパック 2 より 上のレベルにあります。 3. 入手した情報を記録して、実行が必要な項目の判別 に進んでください。 実行が必要な項目の判別 収集した情報を使用して、状況に合った表内の行を探し、フィックスパック 2 の レベル以上で DB2 制御サーバーをサポートするために、DB2 エンタープライズ・ エディション・システムの準備に必要なステップにしたがってください。 表に続くセクションに、必要なステップを実行するための指示があります。 実行し たステップをチェックしてください。状況に合ったステップだけを実行する ように してください。 インストールされた制御 DB2 エンタープライズ・ DB2 エンタープライズ・ サーバー・コンポーネン エディション・システムの エディション・システムの ト サービス・レベル 準備に必要なステップ No バージョン 6.1 ベース、 以下のステップを実行して またはバージョン 6.1 プ ください。 ラス フィックスパック 1、または バージョン 6.1 1. Windows NT での制御 プラス フィックスパック サーバーのインスト 2 以上 ール 2. Windows NT でのフィ ックスパック 2 以上 のインストール 3. Windows NT での SATCTLDB のアップグ レード Yes バージョン 6.1 ベース、 以下のステップを実行して またはバージョン 6.1 プ ください。 ラス フィックスパック 1 1. Windows NT でのフィ ックスパック 2 以上 のインストール 2. Windows NT での SATCTLDB のアップグ レード Yes バージョン 6.1、プラス 以下のステップを実行して フィックスパック 2 以上 ください。 1. Windows NT での SATCTLDB のアップグ レード Windows NT での制御サーバーのインストール Windows NT で制御サーバーをインストールするには: 1. 先に進む前に、システムのすべてのデータベース・アクティビティーが完了し ている ことを確認します。 2. DB2 ユニバーサル・データベース・エンタープライズ・エディション バージ ョン 6.1 CD を CD ドライブに入れます。 インストール・プログラムが自動的に開始されない場合は、 setup コマンド を CD のルートで実行して、インストール・プロセスを 開始します。 3. プロンプトが出されたら、DB2 を使用しているすべてのプロセスをシャットダ ウン します。 4. ウェルカム・ウィンドウで「次へ」を選択します。 5. 「製品の選択」ウィンドウで、DB2 エンタープライズ・エディションが選択さ れていることを 確認します。 6. 「インストール・タイプの選択」パネルで、「カスタム」を クリックしま す。 7. 「コンポーネントの選択」パネルで、制御サーバー・コンポーネントが選択さ れていることを 確認し、「次へ」をクリックします。 注:システムにまだインストールされていないその他のコンポーネントを選 択した場合、 これらのコンポーネントもインストールされます。DB2 が インストールされているドライブまたは ディレクトリーを変更すること はできません。 8. 「DB2 サービスの構成」パネルで、制御サーバー・インスタンスのプロトコル 値と 始動オプションを変更するか、またはデフォルト値を使用することがで きます。 デフォルトを変更して「次へ」をクリックするか、 または「次へ」 をクリックしてデフォルトを使用 してください。 9. 「ファイルのコピーを開始」ウィンドウで「次へ」を クリックして、インス トール・プロセスを開始します。 10. ファイル・コピー処理が完了すると、システムをリブートするオプションが 示されます。この時点でリブートを行います。制御サーバーのためにシステム に行った 変更は、システムがリブートされるまで有効になりません。 インストール・プロセスが完了してシステムをリブートすると、 コントロール・セ ンター および サテライト管理センター をシステムでローカルに使用したい場合 は、制御サーバー・ インストールの一部として作成されたサテライト制御データベ ース (SATCTLDB) が カタログされている必要があります。SATCTLDB データベース をカタログするには: 1. 「スタート>プログラム>DB2 (Windows NT 版)> コマンド・ウィンドウ」を選 択して、DB2 コマンド・ウィンドウをオープンします。 2. DB2 インスタンスにいることを確認します。 set コマンドを実行して、 db2instance の値をチェックします。値が db2 で はない場合は、次の コマンドを実行してください。 set db2instance=db2 3. 次のコマンドを入力して、db2ctlsv インスタンスをカタログします。 db2 catalog local node db2ctlsv instance db2ctlsv 4. 次のコマンドを入力して、SATCTLDB データベースをカタログします。 db2 catalog database satctldb at node db2ctlsv 5. 次のコマンドを入力して、カタログ・アクションをコミットします。 db2 terminate 6. DB2 コマンド・ウィンドウをクローズします。 Windows NT でのフィックスパック 2 以上のインストール 既存のバージョン 6 DB2 エンタープライズ・エディション・システムを Windows NT で フィックスパック 2 以上にアップグレードするには、以下のいずれかを行い ます。 * DB2 エンタープライズ・エディション (Windows NT 版) V6.1 の最新 フィッ クスパックを、readme とともに Web からダウンロードします。フィックスパ ックは 次の URL の指示にしたがってダウンロードすることができます。 http://www-4.ibm.com/software/data/db2/db2tech/version61.html readme.txt ファイルの指示にしたがってフィックスパックをインストールし ます。 * フィックスパック 2 以上の DB2 ユニバーサル・データベース バージョン 6.1 フィックスパック (Windows NT 版) CD を 使用し、CD の WINNT95 ディ レクトリーの readme.txt ファイルの指示にしたがって インストールを完了 します。 Windows NT での SATCTLDB のアップグレード Windows NT で SATCTLDB データベースをアップグレードするには:  1. SATCTLDB データベースのレベルを判別します。 a. Windows NT システムのローカル管理権限を持つユーザー ID でログオン します。 b. 「スタート>プログラム>DB2 (Windows NT 版)> コマンド・ウィンドウ」 を選択して、DB2 コマンド・ウィンドウをオープンします。 c. 次のコマンドを入力して、SATCTLDB に接続します。 db2 connect to satctldb d. トリガー I_BATCHSTEP_TRGSCR がデータベースに存在するかどうかを、 次の照会を実行して判別します。 db2 select name from sysibm.systriggers where name='I_BATCHSTEP_TRGSCR' 返された行の数を記録します。 e. 次のコマンドを入力してデータベースへの接続をクローズします。 db2 connect reset ステップ 1d が 1 行を返した場合、 データベースが正しいレベルにあ ります。この状況では、ステップ 2 をスキップして、3 に進みます。ゼ ロ (0) 行が 返行するされた場合、データベースは正しいレベルにな く、ステップ 3 を 実行するためには、ステップ 2 で説明されているよ うにアップグレード する必要があります。 2. SATCTLDB データベースをアップグレードするには、以下のステップを 実行し てください。DB2 コマンド・ウィンドウにすべてのコマンドを入力します。 a. ディレクトリー \misc に切り替えます。 は たとえ ば c:\sqllib のようなインストール・ドライブおよびパスです。 b. db2ctlsv インスタンスにいることを確認します。 set コマンドを実行して、 db2instance の値をチェックします。値が db2ctlsv ではない場合は、次の コマンドを実行してください。 set db2instance=db2ctlsv c. 次のコマンドを入力して、SATCTLDB データベースをドロップします。 db2 drop database satctldb d. 次のコマンドを入力して、新しい SATCTLDB データベースを作成しま す。 db2 -tf satctldb.ddl -z satctldb.log e. 次のコマンドを実行します。 db2 terminate 3. db2satcs.dll ストアード・プロシージャーを SATCTLDB データベースに バイ ンドします。 以下のステップを実行してください。 a. 次のコマンドを入力して、SATCTLDB データベースに接続します。 db2 connect to satctldb b. ディレクトリー \bnd に切り替えます。 は たとえ ば c:\sqllib のようなインストール・ドライブおよびパスです。 c. 次のバインド・コマンドを実行します。 db2 bind db2satcs.bnd 4. 次のコマンドを入力してデータベースへの接続をクローズします。 db2 connect reset 5. DB2 コマンド・ウィンドウをクローズします。 AIX での DB2 エンタープライズ・エディションのアップグレード 以下のセクションの情報を使用してバージョン 6 DB2 エンタープライズ・ エディ ション・システムの現在のサービス・レベルと、システムを フィックスパック 2 サービス・レベル以上に更新するために実行する必要のある ステップを判別してく ださい。以下のセクションの 1 つまたは複数のステップを 実行する必要がありま す。 * AIX での DB2 エンタープライズ・エディションの確認 * 実行が必要な項目の判別 * AIX での制御サーバーのインストール * AIX でのフィックスパック 2 以上のインストール * AIX での SATCTLDB データベースのアップグレード AIX での DB2 エンタープライズ・エディションの確認 AIX にバージョン 6 DB2 エンタープライズ・エディションがインストールされてい る 場合は、以下のステップを実行してください。 1. 制御サーバー・コンポーネントがインストールされているかどうかを調べま す。 次のコマンドを入力してください。 lslpp -l | grep db2_06_01.ctsr データが返されない場合は、制御サーバー・コンポーネントはインストールさ れていません。 2. DB2 エンタープライズ・エディションのサービス・レベルを判別します。 DB2 インスタンス所有者としてログオンし、db2level コマンドを実行します。 下 の表を使用して、出力を解釈します。 db2level 出力のキー・フィールドの値 DB2 システム リリース レベル 通知トークン の レベル: SQL06010 01010104 db2_v6, n990616 バージョン 6.1 ベース SQL06010 01020104 DB2 V6.1.0.1, n990824, バージョン U465423 6.1 プラス フィックスパ ック 1 SQL06010 01030104 DB2 V6.1.0.6, s991030, バージョン U468276 または DB2 6.1 プラス V6.1.0.9, s000101, フィックスパ U469453 ック 2 注:レベルが 01030104 より上の場合、システムはフィックスパック 2 より 上のレベルにあります。 3. 入手した情報を記録して、実行が必要な項目の判別 に進んでください。 実行が必要な項目の判別 収集した情報を使用して、状況に合った表内の行を探し、フィックスパック 2 の レベルで DB2 制御サーバーをサポートするために、バージョン 6 DB2 エンタープ ライズ・ エディション・システムの準備に必要なステップにしたがってください。 表に続くセクションに、必要なステップを実行するための指示があります。 実行し たステップをチェックしてください。状況に合ったステップだけを実行する ように してください。 インストールされた制御 DB2 エンタープライズ・ DB2 エンタープライズ・ サーバー・コンポーネン エディション・システムの エディション・システムの ト サービス・レベル 準備に必要なステップ No バージョン 6.1 ベース、 以下のステップを実行して またはバージョン 6.1 プ ください。 ラス フィックスパック 1、または バージョン 6.1 1. AIX での制御サーバ プラス フィックスパック ーのインストール 2 以上 2. AIX でのフィックス パック 2 以上のイン ストール 3. AIX での SATCTLDB データベースのアッ プグレード Yes バージョン 6.1 ベース、 以下のステップを実行して またはバージョン 6.1 プ ください。 ラス フィックスパック 1 1. AIX でのフィックス パック 2 以上のイン ストール 2. AIX での SATCTLDB データベースのアッ プグレード Yes バージョン 6.1、プラス 以下のステップを実行して フィックスパック 2 以上 ください。 1. AIX での SATCTLDB データベースのアッ プグレード AIX での制御サーバーのインストール AIX で制御サーバーをインストールするには: 1. ルート権限を持つユーザーでログオンします。 2. DB2 ユニバーサル・データベース・エンタープライズ・エディション バージ ョン 6.1 CD を CD ドライブに入れます。 3. CD-ROM がマウントされているディレクトリー (たとえば cd /cdrom) に 移動 します。 4. 次のコマンドを入力して、DB2 インストーラーを開始します。 ./db2setup 5. 「DB2 インストーラー」ウィンドウがオープンしたら、タブ・キーを使用して インストール・オプションを選択し、Enter を 押します。 6. エンタープライズ・エディションの行を探し、タブ・キーを使用してその横の カスタマイズ・オプションを選択します。Enter を 押してください。 7. DB2 制御サーバー・コンポーネントを選択して、了解にタブで移動し、Enter を押して ください。 8. 残りのウィンドウの指示にしたがって DB2 制御サーバー・コンポーネントの インストールを 完了します。 インストール・プロセスが完了したら、DB2CTLSV インスタンスと SATCTLDB データ ベースを 作成します。これらのタスクを実行するには、サテライト管理 手引きお よび解説書 の第 13 章、 「AIX での DB2 制御サーバーのセットアップ」の詳細な 指示にしたがってください。 AIX でのフィックスパック 2 以上のインストール 既存の DB2 エンタープライズ・エディション・システムを AIX で フィックスパッ ク 2 以上にアップグレードするには、以下のいずれかを行います。 * DB2 エンタープライズ・エディション (AIX 版) V6.1 の最新フィックスパッ ク をフィックスパック readme とともに Web からダウンロードします。フィ ックスパックは 次の URL の指示にしたがってダウンロードすることができま す。 http://www-4.ibm.com/software/data/db2/db2tech/version61.html フィックスパック readme ファイルの指示にしたがってフィックスパックをイ ンストールします。 * フィックスパック 2 以上の DB2 ユニバーサル・データベース バージョン 6.1 フィックスパック (AIX 版) CD を 使用し、CD の readme ディレクトリ ーにある指示にしたがってインストールを完了します。 フィックスパック readme ファイルで指示されているように、db2iupdt コマンドを 実行して DB2CTLSV インスタンスを更新したことを確認してください。 AIX での SATCTLDB データベースのアップグレード AIX で SATCTLDB データベースをアップグレードするには: 1. SATCTLDB データベースのレベルを判別します。 a. db2ctlsv としてログインします。 b. データベース・サーバーが開始されていることを確認します。サーバー が開始されて いない場合は、db2start コマンドを実行してください。 c. 次のコマンドを入力して SATCTLDB データベースに接続します。 db2 connect to satctldb d. トリガー I_BATCHSTEP_TRGSCR がデータベースに存在するかどうかを、 次の照会を実行して判別します。 db2 "select name from sysibm.systriggers where name='I_BATCHSTEP_TRGSCR'" 返された行の数を記録します。 e. 次のコマンドを入力してデータベースへの接続をクローズします。 db2 connect reset ステップ 1d が 1 行を返した場合、 データベースが正しいレベルにあ ります。この状況では、ステップ 2 をスキップして、3 に進みます。ゼ ロ (0) 行が 返行するされた場合、データベースは正しいレベルにな く、ステップ 3 を 実行するためには、ステップ 2 で説明されているよ うにアップグレード する必要があります。 2. SATCTLDB データベースをフィックスパック 2 レベルにアップグレード する には、以下のステップを実行してください。DB2 コマンド・ウィンドウにすべ てのコマンドを入力します。 a. $HOME/sqllib/misc ディレクトリーに切り替えます。 b. 次のコマンドを入力して、SATCTLDB データベースをドロップします。 db2 drop database satctldb c. 次のコマンドを入力して、新しい SATCTLDB データベースを作成しま す。 db2 -tf satctldb.ddl -z $HOME/satctldb.log d. 次のコマンドを実行する。 db2 terminate 3. db2satcs.dll ストアード・プロシージャーを SATCTLDB データベースに バイ ンドします。 以下のステップを実行してください。 a. 次のコマンドを入力して、SATCTLDB データベースに接続します。 db2 connect to satctldb b. ディレクトリーを $HOME/sqllib/bnd に変更します。 c. 次のバインド・コマンドを実行します。 db2 bind db2satcs.bnd 4. 次のコマンドを入力してデータベースへの接続をクローズします。 db2 connect reset 11.1.4 バージョン 6 コントロール・センター および サテライト管理センター の アップグレード バージョン 6 コントロール・センター および サテライト管理センター を、フィ ックスパック 2 以上に アップグレードされたバージョン 6 DB2 制御サーバーおよ びサテライト制御 データベース (SATCTLDB) とともに使用するには、ツールもフィ ックスパック 2 以上に アップグレードする必要があります。 コントロール・センター および サテライト管理センター が DB2 制御サーバーと 同じシステムで実行されている 場合、DB2 エンタープライズ・エディション・シス テムがフィックスパック 2 に アップグレードされたときにこれらもアップグレー ドされています。ただし、これらの ツールを別のシステムで実行する場合は、この システムをフィックスパック 2 以上に アップグレードすることが必要です。 このシステムをフィックスパック 2 以上にアップグレードするには: * 製品の V6.1 レベルの最新フィックスパックを、readme とともに Web から ダウンロードします。フィックスパックは次の URL の指示にしたがってダウ ンロードする ことができます。 http://www-4.ibm.com/software/data/db2/db2tech/version61.html readme ファイルの指示にしたがってフィックスパックをインストールしま す。 * ご使用のオペレーティング・システム版の DB2 ユニバーサル・ データベース バージョン 6.1 フィックスパック CD を使用し、 readme にある指示にした がってインストールを完了します。 ------------------------------------------------------------------------ コマンド解説書 ------------------------------------------------------------------------ 12.1 入手可能な更新 「コマンド解説書」はフィックスパック 4 の一部として更新され、最新の PDF は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンラ インでダウンロードできます。 これらの注釈の情報は、 更新された解説書への追 加情報です。 更新された資料は、 すべて CD でも入手できます。 この CD は、 PTF 番号 U478862 を使用して、DB2 サービス を介して注文できます。 DB2 サービ スへの連絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 12.2 db2updv7 - データベースをバージョン 7 現行修正レベルに更新 このコマンドは以下の方法で、データベース内のシステム・カタログを、現行フィ ックスパックを サポートするレベルに更新します。 * 新しい組み込み関数 (ABS、DECRYPT_BIN、DECRYPT_CHAR、ENCRYPT、GETHINT、 MULTIPLY_ALT および ROUND) を使用できるようにする。 * 新しい組み込みプロシージャー (GET_ROUTINE_SAR および PUT_ROUTINE_SAR) の使用を 可能にする。 * Windows および OS/2 データベースの WEEK_ISO および DAYOFWEEK_ISO 関数 に 修正を追加または適用する。 * バージョン 2 からバージョン 6 へ移行された表のテーブル・パック記述子に 修正を適用する。 * 視点 SYSCAT.SEQUENCES を作成する。 許可 sysadm 必須な接続 データベース。このコマンドは、指定されたデータベースへの接続を自動的に 確立します。 コマンド構文 >>-db2updv7----d---database_name--------------------------------> >-----+---------------------------+---+-----+------------------>< '--u--userid---p--password--' '--h--' コマンド・パラメーター -d database-name 更新するデータベースの名前を指定します。 -u userid ユーザー ID を指定します。 -p password ユーザーのパスワードを指定します。 -h ヘルプ情報を表示します。 このオプションを指定すると、他のすべての オプションは無視され、ヘルプ情報のみが表示されます。 例 フィックスパックのインストール後、次のコマンドを実行することでサンプ ル・データベース内の システム・カタログを更新します。 db2updv7 -d sample 使用上の注意 このツールは、少なくともフィックスパック 2 がインストールされた DB2 バ ージョン 7.1 または バージョン 7.2 を実行するデータベースでのみ使用で きます。コマンドが複数回実行された場合、エラーは 報告されず、各カタロ グは一度だけ適用されます。 新しい組み込み関数を使用可能に するには、すべてのアプリケーションがこ のデータベースから切断されていなければならず、 データベースが活動状態 にされていた場合はこれを非活動状態にしなければなりません。 ------------------------------------------------------------------------ 12.3 REBIND REBIND コマンドの構文図は次のようになります。 Missing value コマンド構文 .-ANY----------. >>-REBIND-+---------+--package-name---RESOLVE--+-CONSERVATIVE-+->< '-PACKAGE-' ------------------------------------------------------------------------ 12.4 db2inidb - ミラーリングされたデータベースの初期化 RELOCATE USING configfile パラメーターの説明は、 次の通りです。 データベースをスナップショット、スタンドバイ、またはミラーとして初期化する 前に、 データベース・ファイルを構成ファイルの情報リストに基づいて 再配置す るように指定します。 注:構成ファイルのフォーマットの詳細に関しては「 DB2 データ移動ユーティリ ティー手引きおよび解説書」を参照してください。 12.4.1 使用法情報 RELOCATE USING configfile パラメーターが指定され、データベースが正常に再配 置されると、 構成ファイルはデータベース・ディレクトリーにコピーされ、 db2path.cfg とリネームされます。 その次のクラッシュ・リカバリーまたロールフ ォワード・リカバリーにおいて、 ログ・ファイル処理中にコンテナー・パスを動的 にリネームするのに この構成ファイルが使用されます。 スナップショットまたはミラー・データベースを初期化する場合、 リカバリーが完 了すると、構成ファイルは自動的に除去されます。 スタンドバイ・データベースを 初期化する場合は、 リカバリー完了後に構成ファイルが除去されるばかりでなく、 リカバリー処理を取り消した場合でも構成ファイルが除去されます。 データベースを継続的にロールフォワードするために保留状態にしている スタンド バイ・データベースで作業中に、新規コンテナーを元のデータベースに 追加する場 合、スタンドバイ・データベース用にコンテナーをどこに保管するかを示す db2path.cfg ファイルを手動で更新することができます。 新規コンテナーのロケー ションを指定しないと、DB2 はそれらを 元のロケーションと同じロケーションに保 管しようと試みます。 ------------------------------------------------------------------------ 12.5 GET ROUTINE コマンドの追加オプション このコマンドは、HIDE BODY パラメーターをサポートするようになりました。 これ は、ルーチン・テキストがカタログから抽出された場合にルーチンの本文が 空の本 文で置き換えられることを指定します。 このコマンドは、コンパイルされるコードには影響しません。テキストに影響する だけです。 GET ROUTINE コマンド構文 >>-GET ROUTINE--INTO---file_name---FROM----+-----------+--------> '-SPECIFIC--' >-------PROCEDURE----routine_name----+------------+------------>< '-HIDE BODY--' ------------------------------------------------------------------------ データ回復と高可用性の手引きと解説書 ------------------------------------------------------------------------ 13.1 データ回復と高可用性の手引きと解説書がオンラインで使用可能 新しい「データ回復と高可用性の手引きと解説書」は、HTML およ び PDF の両方の 形式で http://www.ibm.com/software/data/db2/udb/winos2unix/support からオン ラインで 入手できます。 これらの注釈の情報は、更新された解説書への追加情報 です。更新された資料は、 すべて CD でも入手できます。この CD は、PTF 番号 U478862 を使用して、DB2 サービス を介して注文できます。DB2 サービスへの連絡 方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 13.2 LOGRETAIN=CAPTURE の場合の新たなバックアップおよびリストア動作 データベースが LOGRETAIN を CAPTURE に設定して構成された場合は、次の操作を 実行することはできません。 * オンライン・データベース・バックアップ * オンラインまたはオフライン表スペース・レベルのバックアップ * オンラインまたはオフライン表スペース・レベルのリストア LOGRETAIN を CAPTURE に設定して、取られたオフライン・バックアップ・イメージ を使用 したデータベース・リストア操作にしたがって、データベースはロールフォ ワード保留状態に 置かれません。LOGRETAIN を CAPTURE に設定して、 取られたオ ンライン・バックアップ・イメージを使用した データベース・リストア操作 (フィ ックスパック 4 以前のバージョン 7.2 ) はサポートされています。 ------------------------------------------------------------------------ 13.3 NEWLOGPATH2 は、DB2_NEWLOGPATH2 と呼ばれるようになりました NEWLOGPATH2 レジストリー変数は、DB2_NEWLOGPATH2 に呼び方が変更されました。 ------------------------------------------------------------------------ 13.4 DB2 データ・リンク・マネージャー (AIX または Solaris 版) のバックアッ プ方式の選択 Tivoli Storage Manager システム・オプション・ファイルに PASSWORDACCESS オプ ション を設定する前に、/usr/lib に libApiDS.a ライブラリー・ファイルへの記 号リンクが含まれていることを確認する必要があります。 ------------------------------------------------------------------------ 13.5 Tivoli Storage Manager -- LAN フリー・データ転送 DB2 ユニバーサル・データベース では、Tivoli の LAN フリー・データ転送テクノ ロジーを使用して、 TSM server のバックアップ、リストアを行うことができるよ うになりました。 DB2 ユニバーサル・データベース の以下のいずれかのバージョ ンを Tivoli ADSM 3.1.x クライアントと 一緒に使用している場合、TSM server の バックアップまたはリストア中に 問題が起きる場合があります。 * DB2 (AIX 版) (32 ビット) * DB2 for Solaris 操作環境 (32 ビット) * DB2 for HP-UX (32 ビット) 問題が起きた場合、以下のステップを実行して問題を訂正してください。 1. db2stop コマンドを発行します。 2. DB2 UDB サーバーの sqllib/adsm ディレクトリーに移動します。 3. libtadsm.a のバックアップ・コピーを取ります。 libtadsm.a.bak という名 前のコピーを作成してください。 4. libadsm.a を libtasdm.a にコピーします。 5. db2start コマンドを発行します。 6. 失敗したバックアップまたはリストアのコマンドを再発行してください。 ------------------------------------------------------------------------ データ移動ユーティリティー 手引きおよび解説書 ------------------------------------------------------------------------ 14.1 エクスポート、インポート、およびロードの LOB ファイル・ハンドルの変更 DB2 UDB は、LOB 情報のインポート、エクスポート、およびロードを行うときに、 LOB ロケーション指定子 (LLS) を利用するようになりました。これにより、 複数 LOB を単一ファイルに保管することができます。 LLS は、LOB データがファイル内のどこにあるかを示すストリングです。 LLS の形 式は filename.ext:nnn:mmm/ で、filename.ext は LOB を含むファイルの名前、 nnn は ファイル内の LOB の相対位置 (単位はバイト)、および mmm は LOB の長さ (バイト) です。たとえば、db2exp.001.123.456/ の LLS は、LOB が db2exp.001 ファイルにあり、ファイルの 123 バイト相対位置で始まり、256 バイトの長さであ ることを示します。 LLS で指定されたサイズが 0 の場合、LOB の長さは 0 です。 長さが --1 の場合、LOB は NULL であり、ファイル名および相対位置は無視されま す。 lobsinfile 修飾子を使用してデータをエクスポートする場合、 LOB は常に別々の ファイルに置かれるとは限りません。複数 LOB が各 LOB ファイルに存在し、複数 LOB ファイルが各 LOB パスに存在する場合があります。 データ・ファイルには、 ファイル名のみではなく LLS レコードが含まれるようになりました。 インポートおよびロードでも、エクスポート機能への変更点をハンドルするように なりました。データのロードまたはインポートにおいて lobsinfile で変更された オプションを指定すると、 対応する LOB 列ごとに LLS が存在します。LOB 列に LLS 以外のものが見つかると、 データベースはこれを LOB ファイルとして扱い、 ファイル全体を LOB としてロードします。 14.1.1 IXF 考慮事項 3 つの新規 IXF データ・タイプがあります。LLS で示される場合、これらの 3 つ のタイプは CLOB、BLOB、および DBCLOB に該当します。これらのデータ・タイプの 値は、 それぞれ 964、960、および 968 です。 IXF ファイルは LOB 列ごとに独自の D レコードを必要とするようになりました。 これはエクスポート・ツールによって自動的に作成されますが、IXF ファイルを作 成するのにサード・パーティーのユーティリティーを使用している場合は、手動で 作成する必要があります。さらに、非ヌル LOB だけではなく、表内の LOB ごとに LLS が必要です。 LOB 列がヌルの場合、ヌル LOB を示す LLS を書き込み必要があ ります。 ------------------------------------------------------------------------ 14.2 インポート、エクスポート、およびロード・ユーティリティーに対するコー ド・ページ・サポート インポート、エクスポート、およびロード・ユーティリティーを使用して、新しい 中国語 コード・ページ GB 18030 (コード・ページ ID 5488) および新しい日本語 コード・ページ ShiftJISX 0213 (コード・ページ ID 1394) から DB2 UDB ユニコ ード・データベースへ データを転送できるようになりました。さらに、エクスポー ト・ユーティリティー は DB2 UDB ユニコード・データベースから GB 18030 また は ShiftJIS X0213 コード・ページ・データ へのデータ転送にも使用できます。 たとえば、次のコマンドを実行すると、リモート側で接続されたクライアントに あ る Shift_JISX0213 データ・ファイル u/jp/user/x0213/data.del が MYTABLE に ロードされます。 db2 load client from /u/jp/user/x0213/data.del of del modified by codepage=1394 insert into mytable ここで の MYTABLE は DB2 UDB ユニコード・データベース上にあります。 ------------------------------------------------------------------------ 14.3 db2relocatedb (新規コマンド) db2relocatedb - データベースの再配置 ユーザー提供の構成ファイルでの指定にしたがって、データベースの名前変更、あ るいはデータベース またはデータベースの一部 (たとえば、コンテナーやログ・デ ィレクトリー) の再配置を行います。 このツールは、DB2 インスタンスおよびデー タベース・サポート・ファイルに対して必要な変更を 加えます。 権限 なし 必要な接続 なし コマンド構文 >>-db2relocatedb----f--configFilename-------------------------->< コマンド・パラメーター -f configFilename データベースの再配置に必要な構成情報を含んでいるファイルの名前を指定し ます。 これは相対ファイル名でも絶対ファイル名でも構いません。 構成ファ イルの形式は次の通りです。 DB_NAME=oldName,newName DB_PATH=oldPath,newPath INSTANCE=oldInst,newInst NODENUM=nodeNumber LOG_DIR=oldDirPath,newDirPath CONT_PATH=oldContPath1,newContPath1 CONT_PATH=oldContPath2,newContPath2 ... 説明: DB_NAME 再配置されるデータベースの名前を指定します。データベース名が変更 される場合は、 古い名前と新しい名前の両方を指定する必要がありま す。 これは必須フィールドです。 DB_PATH 再配置されるデータベースのパスを指定します。これは、そのデータベ ースが 最初に作成された場所のパスです。 データベース・パスが変わ る場合は、新旧両方のパスを指定する必要があります。 これは必須フィ ールドです。 INSTANCE データベースが入っているインスタンスを指定します。データベースが 新しいインスタンスへ 移動する場合は、新旧両方のインスタンスを指定 する必要があります。 これは必須フィールドです。 NODENUM 変更されるデータベース・ノードのノード番号を指定します。 デフォル トは 0 です。 LOG_DIR ログ・パスのロケーションの変更を指定します。ログ・パスが変わる場 合は、 新旧両方のパスを指定する必要があります。 ログ・パスがデー タベース・ログの下にある場合は、この指定はオプショナルで、 その場 合、パスは自動的に更新されます。 CONT_PATH 表スペース・コンテナーのロケーションの変更を指定します。新旧両方 のコンテナー・パスを 指定する必要があります。複数のコンテナー・パ スを変更する場合は、複数の CONT_PATH 行を 提供できます。コンテナ ー・パスがデータベース・パスの下にある場合は、この指定はオプショ ナルで、 その場合、パスは自動的に更新されます。 注:ブランク行またはコメント文字 (#) で始まる行は無視されます。 例 例 1 パス /home/db2inst1 上にあるインスタンス DB2INST1 内のデータベースの名前 を TESTDB から PRODDB に変更するには、以下の構成ファイルを作成します。 DB_NAME=TESTDB,PRODDB DB_PATH=/home/db2inst1 INSTANCE=db2inst1 NODENUM=0 この構成ファイルを relocate.cfg として保管し、以下のコマンドを使用して デー タベース・ファイルを変更します。 db2relocatedb -f relocate.cfg 例 2 データベース DATAB1 をパス /dbpath 上のインスタンス JSMITH から インスタン ス PRODINST に移動するには、次のようにします。 1. ディレクトリー /dbpath/jsmith 内のファイルを /dbpath/prodinst に 移動 する。 2. 以下の構成ファイルを db2relocatedb コマンドと一緒に使用して データベー ス・ファイルを変更する。 DB_NAME=DATAB1 DB_PATH=/dbpath INSTANCE=jsmith,prodinst NODENUM=0 例 3 データベース PRODDB はパス /databases/PRODDB 上のインスタンス INST1 の中に あります。 2 つの表スペース・コンテナーのロケーションを次のように変更する必 要があります。 * SMS コンテナー /data/SMS1 を /DATA/NewSMS1 に移動する。 * DMS コンテナー /data/DMS1 を /DATA/DMS1 に移動する。 ディレクトリーとファイルが新しいロケーションに物理的に移動したら、以下の構 成ファイル を db2relocatedb コマンドと一緒に使用して、新しいロケーションが 認識されるようにデータベース・ファイルを変更できます。 DB_NAME=PRODDB DB_PATH=/databases/PRODDB INSTANCE=inst1 NODENUM=0 CONT_PATH=/data/SMS1,/DATA/NewSMS1 CONT_PATH=/data/DMS1,/DATA/DMS1 例 4 データベース TESTDB はインスタンス DB2INST1 の中にあります。このデータベー スは パス /databases/TESTDB 上で作成されました。その後には、表スペースと共 に 以下のコンテナーが作成されました。 TS1 TS2_Cont0 TS2_Cont1 /databases/TESTDB/TS3_Cont0 /databases/TESTDB/TS4/Cont0 /Data/TS5_Cont0 /dev/rTS5_Cont1 TESTDB は新しいシステムに移動されます。その新しいシステムでのインスタンスは NEWINST で、 このデータベースのロケーションは /DB2 となります。 データベースを移動する際には、/databases/TESTDB/db2inst1 ディレクトリーに 存在するすべてのファイルを /DB2/newinst ディレクトリーに移動する必要があり ます。 これは、この移動の一環として最初の 5 つのコンテナーが再配置されるこ とを意味します。 (最初の 3 つのコンテナーの位置はデータベース・ディレクトリ ーとの相対位置で、その次の 2 つの コンテナーの位置はデータベース・パスとの 相対位置です。) これらのコンテナーは そのデータベース・ディレクトリー内また はデータベース・パス内にあるため、 構成ファイルにリストする必要はありませ ん。新しいシステムで残りの 2 つのコンテナーを 異なるロケーションに移動する 場合は、この 2 つは構成ファイルにリストする必要があります。 ディレクトリーとファイルが新しいロケーションに物理的に移動したら、以下の構 成ファイル を db2relocatedb コマンドと一緒に使用して、新しいロケーションが 認識されるようにデータベース・ファイルを変更できます。 DB_NAME=TESTDB DB_PATH=/databases/TESTDB,/DB2 INSTANCE=db2inst1,newinst NODENUM=0 CONT_PATH=/Data/TS5_Cont0,/DB2/TESTDB/TS5_Cont0 CONT_PATH=/dev/rTS5_Cont1,/dev/rTESTDB_TS5_Cont1 例 5 データベース TESTDB はノード 10 および 20 に 2 つの区分を持っています。どち らのノードでも、 インスタンスは SERVINST で、データベース・パスは /home/servinst です。 両方のノードで、このデータベースの名前は SERVDB に変 更され、データベース・パス は /databases に変更されます。さらにノード 20 で は、ログ・ディレクトリー が /testdb_logdir から /servdb_logdir に変更されま す。 変更は両方のノードに対して行われるため、構成ファイルをそれぞれのノードごと に作成し、 その対応する構成ファイルを使用して db2relocatedb を それぞれのノ ードごとに実行する必要があります。 ノード 10 に対しては、以下の構成ファイルが使用されます。 DB_NAME=TESTDB,SERVDB DB_PATH=/home/servinst,/databases INSTANCE=servinst NODE_NUM=10 ノード 20 に対しては、以下の構成ファイルが使用されます。 DB_NAME=TESTDB,SERVDB DB_PATH=/home/servinst,/databases INSTANCE=servinst NODE_NUM=20 LOG_DIR=/testdb_logdir,/servdb_logdir 使用上の注意 データベースが属するインスタンスが変わる場合は、このコマンドを実行する前に 以下のことを行って、 インスタンスおよびデータベース・サポート・ファイルへの 変更が確実に行われるようにする必要が あります。 * データベースを別のインスタンスに移動する場合は、新しいインスタンスを作 成する。 * コピーされるデータベースに属しているファイル / 装置を、新しいインスタ ンスが常駐するシステムに コピーする。必要な場合には、必ずパス名を変更 してください。 * コピーされたファイル / 装置に関する許可を変更して、インスタンス所有者 がそれらの所有者に なるようにする。 インスタンスが変わる場合は、このツールはその新しいインスタンスの所有者が実 行する必要が あります。 EEE 環境では、このツールは変更が必要なすべてのノードに対して実行されなけれ ばなりません。 それぞれのノードごとに、変更されるノードの NODENUM 値を含む 構成ファイルを個別に用意する 必要があります。たとえば、データベースの名前が 変更される場合は、すべてのノードが影響を 受けるため、db2relocatedb コマンド を各ノードごとに 別々の構成ファイルを使用して実行する必要があります。 移動 するコンテナーが単一ノードに属しているのであれ ば、db2relocatedb コマンドは そのノードに対して一度のみ実行する だけで済みます。 参照項目 詳しくは、「コマンド解説書 」のコマンド 「db2inidb - ミラーリングされたデー タベースの初期化」を 参照してください。 ------------------------------------------------------------------------ 14.4 db2move -- 使用可能な新規オプション db2move ツールに、--aw および --sn の 2 つのオプションが追加されました。以 下に、このツールの完全な 文書を記します。 db2move ツールを使用したデータの移動 このツールを使用すると、たくさんの表を複数のワークステーション上の DB2 デー タベース間で容易に移動できます。このツールは、システム・カタログ表から 特定 のデータベースを照会したり、すべてのユーザー表からなるリストをコンパイルし たりします。 その後、これらの表を PC/IXF 形式でエクスポートします。PC/IXF ファイルは、同じシステム上の別のローカル DB2 データベースにインポートまたは ロードできます。または、別のワークステーション・プラットフォームに転送して から、そのプラットフォームの DB2 データベースにインポートまたはロードできま す。 注:このツールを使用しても、構造型列を持つ表は移動されません。 権限 ユーザーの要求するアクションに応じて、このツールは DB2 のエクスポート、イン ポート、 およびロード API を呼び出します。したがって、要求を出しているユー ザー ID には、 それら API に必要な適切な許可が必要です。許可がない場合は、 要求は失敗します。 コマンド構文 .----------------------------. V | >>-db2move--dbname--action-------+----------------------+--+--->< +--tc--table-creators--+ +--tn--table-names-----+ +--sn--schema names----+ +--io--import-option---+ +--lo--load-option-----+ +--l--lobpaths---------+ +--u--userid-----------+ +--p--password---------+ '--aw------------------' コマンド・パラメーター dbname データベースの名前。 action EXPORT、IMPORT、または LOAD のうちいずれか 1 つ。 -tc table-creators。デフォルトはすべての作成者です。 これは EXPORT アクションのみです。このオプションを指定すると、 このオ プションで示す作成者の作成した表だけがエクスポートされます。 指定しな い場合は、デフォルトとしてすべての作成者を使用します。複数の作成者を指 定する場合は、それぞれの作成者をコンマで区切る必要があります。 作成者 ID 同士の間にブランクを入れないようにしてください。 指定できる作成者の 最大数は 10 です。このオプションを "-tn" および "-sn" と一緒に使用する と、エクスポートする表を選択できます。 文字ストリング内の任意の場所で、ワイルドカード文字としてアスタリスク (*) を使用できます。 -tn table-names。デフォルトはすべてのユーザー表です。 これは EXPORT アクションのみです。このオプションを指定すると、 指定さ れたストリングの中の名前と正確に一致する表だけがエクスポートされます。 指定しない場合は、デフォルトとしてすべてのユーザー表を使用します。 複 数の表名を指定する場合は、それぞれの表名をコンマで区切る必要がありま す。 表名同士の間にブランクを入れないようにしてください。指定できる表 名の最大数は 10 です。 このオプションを "-tc" および "-sn" と一緒に使 用すると、エクスポートする表を選択できます。 db2move は、指定された表 名と名前が一致し、 かつ指定された表作成者と作成者が同じ表だけをエクス ポートします。 文字ストリング内の任意の場所で、ワイルドカード文字としてアスタリスク (*) を使用できます。 -sn スキーマ名。デフォルトはすべてのスキーマです。 これは EXPORT アクションのみです。このオプションを指定すると、 指定さ れたストリングの中のスキーマと正確に一致する表だけがエクスポートされま す。 指定しない場合は、デフォルトとしてすべてのスキーマを使用します。 複数のスキーマ名を指定する場合は、それぞれのスキーマ名をコンマで区切る 必要があります。 スキーマ名同士の間にブランクを入れないようにしてくだ さい。 指定できるスキーマ名の最大数は 10 です。 このオプションを "-tc" および "-tc" と一緒に使用すると、エクスポートする表を選択できます。 db2move は、指定された表名と名前が一致し、特定の表スキーマと スキーマ が同じで、かつ指定された表作成者と作成者が同じ表だけをエクスポートしま す。 文字ストリング内の任意の場所で、ワイルドカード文字としてアスタリスク (*) を使用できます。 注:長さが 8 文字より小さいスキーマ名を 8 文字長に埋め込みます。 たと えば、スキーマ "AUSER" および "BUSER" を組み込み、 ワイルドカード 文字を使用したい場合、-sn *USER* と指定します。 -io インポート・オプション。デフォルトは REPLACE_CREATE です。 有効なオプションは、INSERT、 INSERT_UPDATE、REPLACE、CREATE、および REPLACE_CREATE です。 -lo load-option。デフォルトは INSERT です。 有効なオプションは、INSERT および REPLACE です。 -l lobpaths。デフォルトは現行ディレクトリーです。 このオプションは、EXPORT の一部として LOB ファイルを作成したり、 IMPORT や LOAD の一部として LOB ファイルを検索したりする場所の 絶対パ ス名を指定します。複数の LOB パスを指定する場合は、 それぞれの LOB パ スをコンマで区切る必要があります。 LOB パス同士の間にブランクを入れな いようにしてください。EXPORT 中に最初のパスのスペースが不足した場合、 または IMPORT や LOAD 中にパス内にファイルが見つからない場合は、 2 番 目以降のパスを順次使用します。 EXPORT アクションの場合で、LOB パスが指定されている場合は、 LOB パス・ ディレクトリー内のファイルはすべて削除され、 ディレクトリーは除去さ れ、新しいディレクトリーが作成されます。 これを指定しない場合、現行デ ィレクトリーが LOB パスとして使用されます。 -u ユーザー ID。デフォルトはログオンしているユーザー ID です。 ユーザー ID とパスワードはどちらもオプションです。 ただし、どちらか一 方を指定すると、もう一方も指定しなければなりません。 リモート・サーバ ーに接続しているクライアント上でコマンドを実行している場合は、 ユーザ ー ID とパスワードを指定する必要があります。 -p パスワード。デフォルトはログオンしているパスワードです。 ユーザー ID とパスワードはどちらもオプションです。 ただし、どちらか一 方を指定すると、もう一方も指定しなければなりません。 リモート・サーバ ーに接続しているクライアント上でコマンドを実行している場合は、 ユーザ ー ID とパスワードを指定する必要があります。 -aw 警告を受け入れます。 EXPORT アクションのみに使用されます。このオプションを指定すると、 エク スポート中に警告を受信する表が db2move.lst ファイルに組み込まれます。 このオプションを省略すると、エクスポート中に警告を受信する表が db2move.lst ファイルに組み込まれません。このオプションを使用するか否か にかかわらず、 表の .ixf ファイルおよび .msg ファイルが生成されます。 例 * db2move sample export これは、すべての表を SAMPLE データベースにエクスポートします。 すべて のオプションにデフォルト値が使われます。 * db2move sample export -tc userid1,us*rid2 -tn tbname1,*tbname2 これは、"userid1" または "us%rid2" というようなユーザー ID によって作 成された表で、表名が "tbname1" または "%tbname2" というような名前であ る表を、すべてエクスポートします。 * db2move sample import -l D:\LOBPATH1,C:\LOBPATH2 この例は、OS/2 または Windows オペレーティング・システムのみに当てはま ります。 このコマンドは、SAMPLE データベース内のすべての表をインポート します。 LOB パス "D:\LOBPATH1" および "C:\LOBPATH2" から LOB ファイル を検索します。 * db2move sample load -l /home/userid/lobpath,/tmp この例は UNIX ベースのシステムのみに当てはまります。 このコマンドは、 SAMPLE データベース内のすべての表をロードします。 サブディレクトリー /home/userid/lobpath および tmp の両方から LOB ファイルを検索します。 * db2move sample import -io replace -u userid -p password これは、SAMPLE データベース内のすべての表を REPLACE モードでインポート します。 指定されたユーザー ID とパスワードが使われます。 使用上の注意 このツールは、ユーザー作成の表をエクスポート、インポート、またはロードしま す。 あるデータベースを、1 つのオペレーティング・システムから別のオペレーテ ィング・システムへ複製する際には、 db2move を使用すると表の移動が容易になり ます。 また、表に関連付けられた他のオブジェクト (別名、ビュー、トリガー、ユ ーザー定義関数など) をすべて移動する必要があります。 db2look (DB2 統計およ び DDL 抽出ツール: コマンド解説書 を参照) を利用すると、データ定義言語 (DDL) ステートメントをデータベースから取り出すことによって、 いくつかのオブ ジェクトの移動が容易になります。 エクスポート、インポート、またはロード API がdb2move によって呼び出される と、FileTypeMod パラメーターはlobsinfile に設定されます。つまり、LOB データ は PC/IXF ファイルとは 別個のファイルの中に入れられます。LOB ファイルの名前 に使用できるファイル名は 26 000 個あります。 LOAD アクションは、データベースとデータ・ファイルがあるマシン上で ローカル に実行しなければなりません。ロード API が db2move によって呼び出されると、 CopyTargetList パラメーターは NULL に設定され、コピーは実行されません。 logretain がオンに設定されていると、後でロード操作をロールフォワードするこ とはできません。 ロードされる表が入れられる表スペースはバックアップ保留状態 になり、アクセスできなくなります。データベース全体のバックアップ、または 個々の表スペースのバックアップを取るには、 表スペースをバックアップ保留状態 から解除する必要があります。 バージョン 5.2 のクライアントからバージョン 6 のデータベースに対して発行さ れる場合、 このツールは、長さが 18 文字より長い表名または列名をサポートしま せん。 EXPORT 使用時に必要なファイルと生成されるファイル: * 入力: なし。 * 出力: EXPORT.out EXPORT アクションの結果の要約。 db2move.lst 元の表名、および対応する PC/IXF ファイル名 (tabnnn.ixf) と メッセ ージ・ファイル名 (tabnnn.msg) のリスト。このリストに加えて、エク スポートされた PC/IXF ファイル、および LOB ファイル (tabnnnc.yyy) が、 db2move IMPORT または LOAD アクションの入力として使われま す。 tabnnn.ixf 特定の表からエクスポートした PC/IXF ファイル。 tabnnn.msg 対応する表のエクスポート・メッセージ・ファイル。 tabnnnc.yyy 特定の表からエクスポートした LOB ファイル。 "nnn" は表番号。"c" は英字。"yyy" は 001 から 999 の範囲の数字。 これらのファイルが作成されるのは、エクスポートする表に LOB データ が含まれている場合だけです。それらの LOB ファイルが作成される場合 は、lobpath ディレクトリーに入れられます。LOB ファイルに使用でき る名前は全部で 26 000 個あります。 system.msg ファイルやディレクトリーの作成または削除コマンドに対するシステ ム・メッセージを含むメッセージ・ファイル。これが使用されるのは、 アクションが EXPORT で、LOB パスが指定されている場合のみです。 IMPORT 使用時に必要なファイルと生成されるファイル: * 入力: db2move.lst EXPORT アクションからの出力ファイル。 tabnnn.ixf EXPORT アクションからの出力ファイル。 tabnnnc.yyy EXPORT アクションからの出力ファイル。 * 出力: IMPORT.out IMPORT アクションの結果の要約。 tabnnn.msg 対応する表のインポート・メッセージ・ファイル。 LOAD 使用時に必要なファイルと生成されるファイル: * 入力: db2move.lst EXPORT アクションからの出力ファイル。 tabnnn.ixf EXPORT アクションからの出力ファイル。 tabnnnc.yyy EXPORT アクションからの出力ファイル。 * 出力: LOAD.out LOAD アクションの結果の要約。 tabnnn.msg 対応する表のロード・メッセージ・ファイル。 ------------------------------------------------------------------------ 14.5 第 2 章 インポート 14.5.1 バッファー挿入を行うインポートを使用 このセクションの最後の注を次のようにしてください。 注:EEE を除くすべての環境で、 INSERT_UPDATE パラメーターが指定されたイン ポート操作を行う間は、 バッファー挿入機能が使用不可になります。 ------------------------------------------------------------------------ 14.6 第 3 章 ロード 14.6.1 ロード操作後の保留状態 この節の最後の段落の最初の 2 文が、以下のように変更されました。 ロード・プロセスに関連した第 4 の状態 (検査保留状態) は、参照制約と検査制約、 DATALINKS 制約、AST 制約、または生成列制約に関係しています。 たとえば、既存の表が親表であり、そこに含まれる 1 次キーが従属表内の 外部キーによって参照されている場合、その親表の中のデータを置き換えると その従属表 (表スペースではない) は検査保留状態になります。 14.6.2 ロード制約事項と制限 生成された列およびロード・ユーティリティーには、以下の制約事項が適用されま す。 * 生成された列が索引の 「組み込み列」でなければ、あるいは generatedoverride ファイル・タイプ修飾子が使用されていなければ、生成さ れた列を固有索引に持つ表を ロードすることはできません。この修飾子が使 用されている場合は、列のすべての値が入力データ・ファイルに 提供される ことが予想されます。 * generatedoverride ファイル・タイプ修飾子が使用されていなければ、 生成 された列を区分化キーに持つ表をロードすることはできません。 この修飾子 が使用されている場合は、列のすべての値が入力データ・ファイルに 提供さ れることが予想されます。 14.6.3 totalfreespace ファイル・タイプ修飾子 totalfreespace ファイル・タイプ修飾子 (LOAD) が変更されて、0 〜 2 147 483 647 の 範囲の値を受け入れるようになりました。 ------------------------------------------------------------------------ 14.7 第 4 章 オートローダー 14.7.1 rexecd - 認証を YES に設定している場合はオートローダーの実行に必須 以下の注釈が「オートローダー・オプション」セクションの AUTHENTICATION およ び PASSWORD パラメーターの説明に追加されます。 Linux 環境では、認証オプションを YES に設定してオートローダーを実行している 場合は rexecd を すべてのマシンで使用可能にしておく必要があります。rexecd が使用可能でない場合は、次のエラー・メッセージが生成されます。 openbreeze.torolab.ibm.com: 接続が拒否されました SQL6554N 処理をリモート実行しようとしたときに、エラーが発生しました。 次のエラー・メッセージが db2diag.log ファイルに生成されます。 2000-10-11-13.04.16.832852 Instance:svtdbm Node:000 PID:19612(db2atld) Appid: oper_system_services sqloRemoteExec Probe:31 ------------------------------------------------------------------------ 14.8 fork 中にオートローダーが停止する場合があります AIX 4.3.3 には、オートローダーが fork 中に停止することが原因で発生する libc 問題のフィックスが含まれています。 オートローダーはマルチスレッド・プログラ ムです。 複数のスレッドの 1 つが他のプロセスへと分岐します。 子プロセスを分 岐するということは子プロセスに生成された 親プロセスのメモリーのようなイメー ジにつながります。 libc.a が、同じプロセス内のヒープから、マルチスレッドのメモリーの 割り振り を管理するために使用したロックが、非 fork スレッドに 保留されることは可能で す。 子プロセスに非 fork スレッドが存在しなくなると、 このロックは子プロセ スの中では解放されなくなります。 これは親プロセスがしばしば停止するためで す。 ------------------------------------------------------------------------ 14.9 付録 C. エクスポート/インポート/ロード・ユーティリティー・ファイル形式 以下の更新がこの付録に追加されています。 エクスポート、インポート、およびロード・ユーティリティーは、これらが 非ユニ コード・データベースに接続されたユニコード・クライアントで使用される ときは サポートされません。ユニコード・クライアントは、ユニコード・クライアントが ユニコード・データベースに接続されているときにのみサポートされます。 ------------------------------------------------------------------------ DB2 レプリケーションの手引きおよび解説書 ------------------------------------------------------------------------ 15.1 レプリケーションおよび非 IBM サーバー 非 IBM サーバー (Informix、Microsoft SQL Server、Oracle、Sybase、 および Sybase SQL Anywhere など) にデータを複製する場合、あるいはそれらから データ を複製する場合には、DataJoiner バージョン 2 以降を使用しなければなりませ ん。 リレーショナル・コネクト バージョン 7 には更新機能がないため、 このタ イプのレプリケーションにリレーショナル・コネクト機能を使用することはできま せん。 また、すべてのプラットフォーム (AS/400、OS/2、OS/390、 UNIX、および Windows) 上において、既存の DB2 または DataJoiner に対して 異種レプリケーシ ョンを管理するには、DJRA (DataJoiner Replication Administration) を使用する 必要があります。 ------------------------------------------------------------------------ 15.2 Windows 2000 上のレプリケーション DB2 DataPropagator バージョン 7 には、Windows 2000 オペレーティング・システ ムとの互換性があります。 ------------------------------------------------------------------------ 15.3 SQL ファイルの保管時に知られているエラー DB2 コネクト パーソナル・エディションのコントロール・センターを使用している 場合、 SQL ファイルを保管することはできません。 SQL ファイルを保管しようと 試みたとき、データベース管理サーバー (DAS) が活動状態にないことを示す エラ ー・メッセージが表示されます。 これは実際、DAS が DB2 コネクト PE とともに 出荷されていないため、DAS を使用できない場合に 起こります。 ------------------------------------------------------------------------ 15.4 DB2 保守 レプリケーション環境で使用する各種 DB2 製品について、最新の DB2 保守をイン ストールするよう お勧めします。 ------------------------------------------------------------------------ 15.5 Web 上の Data Difference Utility Data Difference Utility (DDU) は、Web (ftp://ftp.software.ibm.com/ps/products/datapropagator/fixes/) から ダウン ロードできます。 DDU は、同じファイルの 2 つのバージョンを比較し、その差が 記録された出力ファイルを 生成するためのサンプル・ユーティリティーです。 詳 細については、サンプル・ユーティリティーに付属の README ファイルを参照して ください。 ------------------------------------------------------------------------ 15.6 第 3 章 データ・レプリケーション・シナリオ 15.6.1 レプリケーションのシナリオ 新しい異質のレプリケーション・シナリオについては、DataPropagator Web サイト のライブラリー・ページ (http://www.ibm.com/software/data/dpropr/) を参照し てください。そのシナリオのステップにしたがって、AIX の Oracle データベース にあるレプリケーションのソース表から、 DB2 (Windows NT 版) のデータベースに あるターゲット表へのコピーを行います。このシナリオは、DB2 DataJoiner レプリ ケーション管理 (DJRA) ツール、トリガーのキャプチャー、アプライ・プログラ ム、および DB2 DataJoiner を使用します。 ブックの 44 ページにある、パスワード・ファイル作成のステップ 6 の説明は 次 のように訂正してください。 ステップ 6: パスワード・ファイルの作成 アプライ・プログラムはソース・サーバーへの接続を必要としているため、 ユーザ ー認証用に、パスワード・ファイルを作成する必要があります。アプライ・プログ ラムを 実行するユーザー ID は、パスワード・ファイルを読み取ることができるこ とを確認してください。 パスワード・ファイルを作成するには、以下の手順で行います。 1. Windows NT のコマンド・プロンプト・ウィンドウで、C:\scripts ディレクト リーに移動します。 2. DEPTQUAL.PWD というディレクトリーに、新規ファイルを作成します。このフ ァイルは Notepad などのテキスト・エディターで作成してください。 パスワ ード・ファイルの命名規則は、applyqual.pwd です。 applyqual は、サブス クリプション・セットを作成した時にアプライ修飾子の大文字小文字と値に一 致する必要のある 大文字小文字の区別をするストリングです。このシナリオ では、アプライ修飾子は DEPTQUAL です。 注:DB2 DataPropagator のバージョン 5 も サポートされます。 3. パスワード・ファイルの内容には、次の形式があります。 SERVER=server USER=userid PWD=password それぞれ次の意味があります。 server ソース、ターゲット、または制御サーバーの名前で、 サブスクリプショ ン・セット表で現れます。このシナリオでは、これらの名前は SAMPLE と COPYDB です。 userid 特殊なデータベースを管理するために使用する予定のユーザー ID。 こ の値は、Windows NT および UNIX オペレーティング・システムで大文字 小文字の区別があります。 password ユーザー ID に関連したパスワード。この値は、Windows NT および UNIX オペレーティング・システムで大文字小文字の区別があります。 このファイルにはブランク行または注釈行を書き込まないでください。サーバ ー名、 ユーザー ID、およびパスワード情報のみを追加してください。 4. パスワード・ファイルの内容は、次の内容に類似しています。 SERVER=SAMPLE USER=subina PWD=subpw SERVER=COPYDB USER=subina PWD=subpw DB2 認証およびセキュリティーに関しての詳細については、 「IBM DB2 管理の手引 き」 を参照してください。 ------------------------------------------------------------------------ 15.7 第 5 章 レプリケーションの計画 15.7.1 表および列名 レプリケーションは、表および列名のブランクをサポートしません。 15.7.2 DATALINK レプリケーション DATALINK レプリケーションは、バージョン 7.1 フィックスパック 1 の一部として Solaris で 使用可能です。これにはソースおよびターゲット DATALINK ファイル・ システムで動作する FTP デーモンが 必要で、MDTM (modtime) コマンドをサポート します。このコマンドは、提供されたファイルの 最終変更時間を表示します。 Solaris オペレーティング・システム バージョン 2.6 あるいは MDTM 用の FTP サ ポートが含まれないその他のバージョンを使用している場合、WU-FTPD のような追 加のソフトウェアが必要です。 AS/400 上の DB2 データベースと他のプラットフォーム上の DB2 データベース間で DATALINK 列を複製することはできません。 AS/400 プラットフォームでは、DATALINK 値の「注釈」属性のレプリケーションは サポートされていません。 AIX 4.2 を稼働中の場合は、デフォルトのユーザー出口プログラム (ASNDLCOPY) を 実行する前に、APAR IY03101 (AIX 4210-06 RECOMMENDED MAINTENANCE FOR AIX 4.2.1) の PTF をインストールしなければなりませせん。 この PTF には、FTP デ ーモンの "modtime/MDTM" コマンドの Y2K 修正が 含まれます。この修正を検査す るには、"modtime " コマンドから戻される 最終変更日付を確認してくださ い ( は January 1, 2000 以降に修正されたファイル)。 ターゲット表が外部 CCD 表の場合は、DB2 DataPropagator は DATALINK ファイル を 複製するために ASNDLCOPY ルーチンを呼び出します。 ASNDLCOPY および ASNDLCOPYD プログラムの使用方法に関する最新情報については、 各プログラムの ソース・コードのプロローグ・セクションを参照してください。 以下の制約事項が 適用されます。 * 内部 CCD 表には DATALINK 標識を含めることができますが、DATALINK 値には 含めることはできません。 * 圧縮された外部 CCD 表には DATALINK 値を含めることができます。 * 圧縮されていない CCD ターゲット表には DATALINK 列を含めることはできま せん。 * ソースおよびターゲット・サーバーが同じである場合、サブスクリプション・ セットに DATALINK 列を持つメンバーを含めることはできません。 15.7.3 LOB の制約事項 圧縮された内部 CCD 表には LOB 列または LOB 標識への参照を 含めることはでき ません。 15.7.4 レプリケーションの計画 65 ページで、「コネクティビティー」には次のような意味が含まれます。 アプライ・プログラムが制御サーバーに接続できない場合は、 アプライ・プログラムは終了します。 AS/400 版のデータ・ブロッキングを使用する場合、インターバル中に複製する デ ータ量の合計が、ブックの 69 ページに記載されている "4 MB" ではなく、 "4,000,000 行" を超えないように注意してください。 ------------------------------------------------------------------------ 15.8 第 6 章 レプリケーション環境のセットアップ 15.8.1 任意の場所で更新 (Update-anywhere) の前提条件 任意の場所で更新するレプリケーションを、競合検出および 150 以上の サブスク リプション・セット・メンバーでサブスクリプション・セットに セットアップする には、以下の DDL を実行して制御サーバー上に ASN.IBMSNAP_COMPENSATE 表を作成 する必要があります。 CREATE TABLE ASN.IBMSNAP_COMPENSATE ( APPLY_QUAL char(18) NOT NULL, MEMBER SMALLINT, INTENTSEQ CHAR(10) FOR BIT DATA, OPERATION CHAR(1)); 15.8.2 レプリケーション環境のセットアップ 95 ページで、「CD テーブル、索引、および表スペースのカスタマイズ」で DPREPL.DFT ファイルは \sqllib\bin ディレクトリーまたは \sqllib\java ディレ クトリーのいずれかにあると述べています。 実際は DPREPL.DFT は \sqllib\cc デ ィレクトリーにあります。 128 ページの保存制限に関する説明で、キャプチャー・プログラムがウォーム・ス タート したとき、またはキャプチャー・プログラムのプルーン・コマンドが使用さ れたときのみ、行を絞り込むために 保存制限が使用されると述べられています。 自動プルーニング・オプション付きでキャプチャー・プログラムを開始した場合、 キャプチャー・プログラムは 行を絞り込むために保存制限を使用しません。 ------------------------------------------------------------------------ 15.9 第 8 章 問題判別 レプリケーション・アナライザーは Windows 32 ビット・システムおよび AIX 上で 起動します。 AIX 上でアナライザーを実行する場合、/usr/local/bin/analyze と の競合を回避するために、sqllib/bin ディレクトリーがご使用の PATH 環境変数の /usr/local/bin よりも前にあることを確認してください。 レプリケーション・アナライザーには次の追加のオプションのキーワードがありま す。CT および AT。 CT=n n 日前以降のキャプチャー・トレース表の項目のみを 表示します。キーワー ドはオプションです。このキーワードを指定しない場合、 デフォルトは 7 日 となります。 AT=n n 日前以降のアプライ・トレール表の項目のみを 表示します。キーワードは オプションです。このキーワードを指定しない場合、 デフォルトは 7 日とな ります。 例: analyze mydb1 mydb2 f=mydirectory ct=4 at=2 deepcheck q=applyqual1 レプリケーション・アナライザーで、以下のキーワード情報が更新されました。 deepcheck アナライザーが、以下の情報を含むより完全な分析を実施することを指定しま す。 変更データ (CD) および作業単位 (UOW) 表のプルーニング情報、 DB2 (OS/390 版) 区分表スペースおよび圧縮の詳細、サブスクリプション・キーと 関連する ターゲット索引の分析、サブスクリプション予定表、およびサブス クリプション・セットの SQL ステートメント・エラー。分析にはすべてのサ ーバーが含まれます。 キーワードはオプションです。 lightcheck 以下の情報が報告書から除外されます。 ASN.IBMSNAP_SUBS_COLS 表のすべて の列の詳細、 サブスクリプションのエラー、変則性、省略、および 誤ったあ るいは非効率的索引。 この情報の縮小により、 リソースが節約され、より小 さな HTML 出力ファイルが作成されます。 このキーワードはオプションで、 deepcheck キーワードと相互に排他的です。 アナライザー・ツールは AS/400 プラットフォームのレプリケーションの PTF で 入手可能です。これらのツールはレプリケーション環境に関する情報を収集し、 HTML ファイルが作成されて IBM サービス技術員に送られ、 問題判別の手助けとな ります。AS/400 版のツールを入手するには、適切な PTF (たとえば、製品 5769DP2 には、PTF SF61798 のそれに代わる最新のもの) をダウンロードしてください。 「トラブルシューティング」セクションに以下の問題と解決を追加してください。 問題: アプライ・プログラムが変更の複製を行わずにループ; アプライ・トレール表は STATUS=2 を示します。 サブスクリプション・セットに複数のソース表が含まれています。このセット内にある ソース表のホット・スポット処理を向上させるため、そのソース表に内部 CCD 表が 定義されていますが、その内部 CCD 表は別のサブスクリプション・セットにあります。 ソース表が更新されても、内部 CCD 表を埋め込むアプライ・プロセスは非同期的に 実行されます (たとえば、アプライ・プログラムが開始されない、またはイベントが トリガーされないなどの可能性があります)。ソース表からターゲット表に更新を 複製するアプライ・プログラムは、内部 CCD 表が更新されるのを待っているため、 ループします。 このループを停止するには、内部 CCD 表に対してアプライ・プログラムを開始 (または レプリケーションを引き起こすイベントをトリガー) します。アプライ・プログラムは 内部 CCD 表を取り込み、ループしているアプライ・プログラムがすべてのソース表からの 変更を処理できるようにします。 似たような状態が、複数のアプライ・プログラムによって取り込まれた 内部 CCD 表を持つソース表を含むサブスクリプション・セットで起きる場合があります。 ------------------------------------------------------------------------ 15.10 第 9 章 キャプチャー・プログラムおよびアプライ・プログラム (AS/400 版) 178 ページの「実行管理機能に関する注意事項」は以下のように解釈してくださ い。 デフォルト定義を変更したり、独自の定義を提供したりすることができます。 独自のサブシステム記述を作成する場合は、サブシステムの名前を QZSNDPR にし、それを QDPR 以外のライブラリーに作成する必要があります。 これらの定義の変更に関する詳細については、SD88-5009「AS/400e シリーズ 実行管理の手引き」を参照してください。 178 ページの「DB2 DataPropagator/400 のインストールの検査とカスタマイズ」に 以下を追加してください。 トランザクションのボリュームが大きいために起こるロック競合の問題がある場合は、 デフォルトの待ちタイムアウト値を 30 から 120 に増やすことができます。 取り込みジョブの開始ごとにジョブを変更することができます。または、以下の手順で、 ご使用のサブシステム上で実行されているすべてのジョブのデフォルト待ちタイムアウト値を 変更することもできます。 1. QGPL/QBATCH を重複させて新規のクラス・オブジェクトを作成するには、以下のコマンドを実行します。 CRTDUPOBJ OBJ(QBATCH) FROMLIB(QGPL) OBJTYPE(*CLS) TOLIB(QDPR) NEWOBJ(QZSNDPR) 2. 新規に作成されたクラスの待ちタイムアウト値を変更します (たとえば、300 秒に変更します)。 CHGCLS CLS(QDPR/QZSNDPR) DFTWAIT(300) 3. 新規に作成したクラスを使用するには、サブシステム記述 QDPR/QZSNDPR 内の ルーティング項目を更新してください。 CHGRTGE SBSD(QDPR/QZSNDPR) SEQNBR(9999) CLS(QDPR/QZSNDPR) 194 ページの「ジャーナル・レシーバー削除出口ルーチンの使用」には、 「ジャー ナル・レシーバー削除出口ルーチンの登録を除去する場合、ソース表に 使用されて いるすべてのジャーナルに DLTRCV(*NO) があることを確認してください。」 とい う文があります。 195 ページで、ADDEXITPGM コマンド・パラメーターは以下のようになります。 ADDEXITPGM EXITPNT(QIBM_QJO_DLT_JRNRCV) FORMAT(DRCV0100) PGM(QDPR/QZSNDREP) PGMNBR(*LOW) CRTEXITPNT(*NO) PGMDTA(65535 10 QSYS) ------------------------------------------------------------------------ 15.11 第 10 章 キャプチャー・プログラムおよびアプライ・プログラム (OS/390 版) 第 10 章で、以下の段落を更新します。 15.11.1 DB2 DataPropagator (OS/390 版) の前提条件 DB2 DataPropagator (OS/390 版) バージョン 7 (V7) を実行するには、 DB2 (OS/390 版) バージョン 5、DB2 (OS/390 版) バージョン 6、または DB2 (OS/390 版) バージョン 7 が必要です。 15.11.2 OS/390 での UNICODE および ASCII エンコード・スキーム DB2 DataPropagator (OS/390 版) V7 は、UNICODE および ASCII エンコード・スキ ームを サポートしています。 この新しいエンコード・スキームを活用するには、 DB2 (OS/390 版) V7 が必要で、 下のセクションで説明されているように DB2 DataPropagator ソース表、ターゲット表、 および制御表を手操作で作成または変 換しなければなりません。 ただし、エンコード・スキームを変更しなくても、 既 存のレプリケーション環境は DB2 DataPropagator (OS/390 版) V7 では動作しませ ん。 15.11.2.1 エンコード・スキームの選択 ソース、CD、およびターゲット表が同じエンコード・スキームを使用している場 合、 レプリケーション環境でデータを変換する必要性を最小にすることができま す。 表のエンコード・スキームを選択するとき、表スペースの文字データは ASCII、UNICODE、 または EBCDIC でエンコードできるという、単一 CCSID 規則に したがってください。 表スペース内のテーブルはすべて、同じエンコード・スキー ムを使用しなければなりません。 SQL ステートメントの表すべてのエンコード・ス キームは同じでなければなりません。 また、視点および結合に使用される表もすべ て、同じエンコード・スキームを使用する必要があります。 単一 CCSID 規則にしたがっていないと、DB2 はバインド時または実行時に違反を検 出し、SQLCODE -873 を返します。 どの表が ASCII になり、どの表が UNICODE に なるかは、 使用しているクライアント/サーバー構成によって異なります。 特に、 表のエンコード・スキームを選択するときには以下の規則にしたがってください。 * DB2 (OS/390 版) のソース表またはターゲット表は EBCDIC、ASCII、または UNICODE に することができます。 この表は、サポートされている DBMS (DB2 ファミリー、または DataJoiner 付きの非 DB2) に 同じ、または異なるエン コード・スキームを持つ表との間でコピーできます。 * DB2 (OS/390 版) ソース・サーバーでは、同じサーバー上の CD、UOW、レジス ター、 および prune 制御表はすべて、同じエンコード・スキームを使用しな ければなりません。 この整合性を確実にするには、常にエンコード・スキー ムを明示的に指定してください。 * 同じ制御サーバー上の制御表 (ASN.IBMSNAP_SUBS_xxxx) はすべて、同じエン コード・スキームを 使用しなければなりません。 * その他の制御表はどのエンコード・スキームでも使用できますが、 ASN.IBMSNAP_CRITSEC 表は EBCDIC のままにしておくようお勧めします。 15.11.2.2 エンコード・スキームの設定 表に適切なエンコード・スキームを指定するには、表の生成に使用されている SQL を変更します。 * 新しいソース表とターゲット表を適切なエンコード・スキームで作成するか、 既存のターゲット表とソース表のエンコード・スキームを変更してください。 既存の表のエンコード・スキームを変更する前にキャプチャー・プログラムと アプライ・プログラムを 停止してから、キャプチャー・プログラムをコール ド・スタートしてアプライ・プログラムを 再始動するようお勧めします。 既 存の表のエンコード・スキームを変更するには: 1. Reorg ユーティリティーを使用して既存の表をコピーします。 2. 既存の表をドロップします。 3. 新しいエンコード・スキームを指定して、表を再作成します。 4. Load ユーティリティーを使用して、古いデータを新しい表にロードしま す。 Load ユーティリティーと Reorg ユーティリティーについて詳しくは、 「DB2 ユニバーサル・データベース (OS/390 版) ユーティリティーの手引きおよび 解説書」を 参照してください。 * 新しい制御表を適切なエンコード・スキームで作成するか、既存の制御表の エンコード・スキームを変更します。 DPCNTL.MVS は DB2 (OS/390 版) とともに出荷され、sqllib\samples\repl に あります。 このファイルには、制御表を作成するいくつかの CREATE TABLE ステートメントが含まれています。 ASCII または UNICODE でなければならな い表 (ASN.IBMSNAP_REGISTER、ASN.IBMSNAP_PRUNCNTL など) の場合、 以下の 例に示されているように、CCSID ASCII または CCSID UNICODE キーワードを 追加してください。 CREATE TABLE ASN.IBMSNAP_PRUNCNTL ( TARGET_SERVER CHAR( 18) NOT NULL, TARGET_OWNER CHAR( 18) NOT NULL, TARGET_TABLE CHAR( 18) NOT NULL, SYNCHTIME TIMESTAMP, SYNCHPOINT CHAR( 10) FOR BIT DATA, SOURCE_OWNER CHAR( 18) NOT NULL, SOURCE_TABLE CHAR( 18) NOT NULL, SOURCE_VIEW_QUAL SMALLINT NOT NULL, APPLY_QUAL CHAR( 18) NOT NULL, SET_NAME CHAR( 18) NOT NULL, CNTL_SERVER CHAR( 18) NOT NULL, TARGET_STRUCTURE SMALLINT NOT NULL, CNTL_ALIAS CHAR( 8) ) CCSID UNICODE DATA CAPTURE CHANGES IN TSSNAP02; 既存の制御表および CD 表を変更するには、 Reorg ユーティリティーと Load ユーティリティーを使用します。 * 新しいレプリケーション・ソースまたはサブスクリプション・セットを作成す るとき、 管理ツールによって生成された SQL ファイルを変更し、適切なエン コード・スキームを 指定してください。 この SQL には、レプリケーショ ン・ソースおよびサブスクリプション・セットそれぞれについて、 CD および ターゲット表を作成するために使用される複数の CREATE TABLE ステートメン トが含まれています。 必要に応じて、キーワード CCSID ASCII または CCSID UNICODE を追加してください。 例: CREATE TABLE user1.cdtable1 ( employee_name varchar, employee_age decimal ) CCSID UNICODE; CCSID の詳細については、 「DB2 UDB (OS/390 版) SQL 解説書」を参照して ください。 ------------------------------------------------------------------------ 15.12 第 11 章 キャプチャー・プログラムおよびアプライ・プログラム (UNIX 版) 15.12.1 UNIX および Windows でのキャプチャー・プログラムとアプライ・プログ ラムの環境変数の設定 ソース・データベースをデフォルト・コード・ページ値以外のコード・ページで 作 成した場合、DB2CODEPAGE 環境変数を該当するコード・ページに設定してくださ い。 DB2CODEPAGE を設定する前のコード・ページ値を取得する際の情報について は、 「DB2 管理の手引き」を 参照してください。キャプチャー・プログラムは、 データの取り込み元のデータベースと同じコード・ページで実行する必要がありま す。 DB2 は、キャプチャー・プログラムが実行されている活動状態の環境から キ ャプチャー・プログラムのコード・ページを取得します。 DB2CODEPAGE が設定され ていない場合、DB2 はコード・ページ値をオペレーティング・システムから取得し ます。 オペレーティング・システムから取得される値は、データベースの作成時に デフォルト・コード・ページを使用した場合、キャプチャー・プログラムには正し い値になります。 ------------------------------------------------------------------------ 15.13 第 14 章 表の構造 339 ページで、値 "2" の STATUS 列の記述に、以下の文章を追加してください。 内部 CCD 表を使用する際に、適用追跡表の状況列で "2" の値を繰り返し得る場合は、 「第 8 章: 問題判別機能」で、「問題: アプライ・プログラムが複製の変更を行わずにループし、 適用追跡表が STATUS=2 を表示」を参照してください。 ------------------------------------------------------------------------ 15.14 第 15 章 キャプチャー・プログラムとアプライ・プログラムのメッセージ メッセージ ASN0017E は以下のようになります。 ASN0017E キャプチャー・プログラムが重大な内部エラーを検出し、正しいエラー・メッセー ジを発行できませんでした。 ルーチン名は "routine" です。 戻りコードは "return_code" です。 メッセージ ASN1027S が追加されます。 ASN1027S ラージ・オブジェクト (LOB) 列の指定が多すぎます。エラー・コードは "" です。 説明:サブスクリプション・セット・メンバーに指定されている ラージ・オブジェ クト (BLOB、CLOB、または DBCLOB) 列が多すぎます。 許可されている列の最大数 は 10 です。 ユーザーの応答: 超過したラージ・オブジェクト列を サブスクリプション・セッ ト・メンバーから除去してください。 メッセージ ASN1048E は以下のようになります。 ASN1048E 適用循環の実行が失敗しました。詳細については、アプライ・トレール表を参照し てください。 "" 説明:適用循環に失敗しました。 メッセージでは、 "" は ""、 ""、および "" を示しています。 ユーザーの応答: 適用循環が失敗した理由を調べるには、 監査トレール表の APPERRM フィールドをチェックしてください。 ------------------------------------------------------------------------ 15.15 付録 A キャプチャー・プログラムおよびアプライ・プログラムをアプリケー ション内で開始する ブックの 399 ページで、キャプチャー・プログラムおよびアプライ・プログラムを 開始する サンプル・ルーチンの注釈にいくつかエラーが記載されていますが、 サ ンプル内のコードは正しいです。サンプルの後半は適用パラメーターに 関する内容 ですが、注釈ではキャプチャー・パラメーターに関することとなっています。 キャプチャー・プログラムおよびアプライ・プログラム API のサンプルと、それぞ れの MAKE ファイルを、 以下のディレクトリーから入手できます。 NT の場合 - sqllib\samples\repl UNIX の場合 - sqllib/samples/repl ------------------------------------------------------------------------ システム・モニター 手引きおよび解説書 ------------------------------------------------------------------------ 16.1 db2ConvMonStream 使用上の注意の中で、スナップショット・データ・ストリーム・タイプの構造は、 SQLM_ELM_SUBSECTION は sqlm_subsection である必要があります。 ------------------------------------------------------------------------ 問題判別の手引き ------------------------------------------------------------------------ 17.1 ユーザーがログオンしていないときに DB2 を Windows 95、Windows 98、 ま たは Windows ME で開始 db2start コマンドを Windows 95、Windows 98、または Windows Millennium Edition (ME) 環境で 正常に機能させるには、以下のどちらかを行う必要がありま す。 * Windows ログオン・ウィンドウまたは Microsoft ネットワーキング・ ログオ ン・ウィンドウを使用してログオンします。 * db2logon コマンドを実行します (db2logon コマンドについては、(注1) を 参照してください)。 さらに、ログオン中、または db2logon コマンドで指定される ユーザー ID は、 DB2 の要件を満たしている必要があります ((注2) を参照)。 db2start コマンドが開始されると、 ユーザーがログオンされていることをチェッ クします。ユーザーがログオンされている場合は、 db2start コマンドはそのユー ザーの ID を使用します。 ユーザーがログオンされていない場合は、db2start コ マンドは、db2logon コマンドが実行されたかどうか、 実行されている場合は、 db2start コマンドが db2logon コマンドで指定されているユーザー ID を 使用し ているかどうかをチェックします。db2start コマンドが有効なユーザー ID を見つ けることができない場合は、 コマンドは終了します。 DB2 ユニバーサル・データベース バージョン 7 を Windows 95、Windows 98、また は Windows ME にインストール中に インストール・ソフトウェアは、システムのブ ート時に db2start コマンドを 実行するショートカットを「スタートアップ」フォ ルダーにデフォルトで追加します (詳しくは、(注1) を参照してください)。 シ ステムの ユーザーが一度もログオンしたことがない場合、または db2logon コマン ドを実行したことがない場合は、db2start コマンドは終了します。 ユーザーが Windows やネットワークにログオンする機会が少ない場合は、 以下の ようにバッチ・ファイルからコマンドを実行することにより、 db2start コマンド の前に db2logon コマンドを実行する要求を隠すことができます。 1. db2start.exe コマンドに続いて db2logon コマンドを実行するバッチ・ファ イルを作成してください。 例: @echo off db2logon db2local /p:password db2start cls exit 2. バッチ・ファイルの名前を db2start.bat とし、 DB2 をインストールしたド ライブおよびパスの下の /bin ディレクトリーに保管してください。バッチ・ ファイルをこの場所に置くことにより、 オペレーティング・システムがバッ チ・ファイルへのパスを検索できるようになります。 DB2 がインストールされているドライブおよびパスは、DB2 レジストリー変数 DB2PATH に保管されます。DB2 がインストールされているドライブとパスを検 出するには、 次のコマンドを実行してください。 db2set -g db2path db2set コマンドにより、c:\sqllib という値が戻されるとします。 この場 合、バッチ・ファイルを以下に保管します。 c:\sqllib\bin\db2start.bat 3. システムのブート時に DB2 を開始するには、スタートアップ・フォルダー内 の ショートカットからバッチ・ファイルを実行する必要があります。2 つの オプションがあります。 o DB2 インストール・プログラムで作成されたショートカットを変更し、 db2start.exe の代わりにバッチ・ファイルを実行するようにします。前 の例では、ショートカットは db2start.bat バッチ・ファイルを 実行し ます。DB2 インストール・プログラムで作成されたショートカットは DB2 - DB2.lnk と呼ばれ、ほとんどのシステムで、 c:\WINDOWS\Start Menu\Programs\Start\DB2 - DB2.lnk に位置します。 o バッチ・ファイルを実行する独自のショートカットを追加し、DB2 イン ストール・プログラムで 追加されたショートカットを削除してくださ い。DB2 ショートカットを削除するには、 次のコマンドを使用してくだ さい。 del "C:\WINDOWS\Start Menu\Programs\Startup\DB2 - DB2.lnk" 独自で作成したショートカットを使用する場合は、ショートカットの 終 了時にクローズ 属性を設定する必要があります。この属性を設定しない と、 db2start コマンドが完了した後も、DOS コマンド・プロンプトが タスクバーに残ったままになります。db2start 処理中に DOS ウィンド ウが開かないようにするには、このショートカット (およびショートカ ットが 実行中の DOS ウィンドウ) を最小化にして実行するよう設定し て作成できます。 注:システムのブート時に DB2 を開始する代わりに、 DB2 を使用する アプリケーションの実行の前に DB2 を開始させることができま す。 詳細については、(注5) を参照してください。 db2start コマンドの前に db2logon コマンドを実行するバッチ・ファイルを使用す る場合で、ユーザーが頻繁にログオンする場合は、 db2start コマンドは機能し続 けますが、DB2 はログオン・ユーザーの ユーザー ID を使用するという点が異なり ます。追加の詳細については、(注1) を参照してください。 注: 1. db2logon コマンドはユーザー・ログオンを シミュレートします。db2logon コマンドの形式は、次の通りです。 db2logon userid /p:password コマンドに指定されるユーザー ID は、DB2 の命名要求を 満たす必要があり ます (詳細については、(注2) を参照)。 ユーザー ID とパスワードなしで コマンドを実行すると、ユーザー ID とパスワード用の プロンプトのウィン ドウがオープンします。指定されたパラメーターがユーザー ID のみの 場合 は、ユーザーに対してパスワードのプロンプトは出されません。ある条件の下 では、 以下に述べるようにパスワードが要求されます。 db2logon コマンドによって設定されるユーザー ID とパスワードの値は、ユ ーザーが Windows ログオン・ウィンドウあるいは Microsoft ネットワークの ログオン・ウィンドウの いずれも使用せずにログオンした場合にのみ使用さ れます。 ユーザーがログオンし、db2logon コマンドが 実行された場合、 db2logon コマンドからのユーザー ID は すべての DB2 アクションで使用さ れますが、db2logon コマンドで指定されたパスワードは無視されます。 ユーザーが Windows ログオン・ウィンドウあるいは Microsoft ネットワーク のログオン・ウィンドウを使用してログオンしなかった場合、 db2logon コマ ンドは次のように使用されます。 o db2start コマンドは開始時にユーザー ID を 使用しますが、パスワー ドを必要としません。 o 表の作成のようなアクションで高水準修飾子がない場合は、 高水準修飾 子としてユーザー ID が使用されます。 例: 1. 次を実行します。db2logon db2local 2. その後、次を実行します。create table tab1 db2local.tab1 という高水準修飾子で表が作成されます。 表やその他のオブジェクトのスキーマ名に相当するユーザー ID を 使用 してください。 o システムがサーバーへのクライアントとして機能する場合は、 ユーザー ID とパスワードなしで CONNECT ステートメントを実行し (たとえば、 CONNECT TO TEST)、認証は server に設定され、 db2logon コマンドか らのユーザー ID と パスワードが、リモート・サーバーのユーザーの妥 当性検査に使用されます。ユーザーが明示的ユーザー ID およびパスワ ード (たとえば、 CONNECT TO TEST USER userID USING password) を使 用して 接続すると、CONNECT ステートメントで指定されている値が使用 されます。 2. バージョン 7 では、ログオンに使用される、または db2logon コマンドで指 定されるユーザー ID は、 次の DB2 要件を満たさなければなりません。 o 次の語は使用できません。USERS、ADMINS、GUESTS、PUBLIC、LOCAL、 ま たは SQL 解説書 にリストされている SQL 予約語。 o SQL, SYS または IBM で開始することはできません。 o 以下の文字を含めることができます。 + A から Z (Windows 95、Windows 98、および Windows ME では、ユ ーザー ID の 大文字小文字が区別されます) + 0 から 9 + @, #, または $ 3. カスタマイズされた対話式インストール中に、あるいは応答ファイル・ イン ストールを実行中の場合は、DB2.AUTOSTART=NO オプションを指定して、 スタ ートアップ・フォルダー内に db2start ショートカットを作成しないようにす ることができます。 これらのオプションを使用すると、スタートアップ・フ ォルダー内に db2start ショートカットは作成されず、独自のショートカット を追加して db2start.bat ファイルを実行する必要があります。 4. Windows 98 と Windows ME では、 Windows 98 または Windows ME の始動時 に常にログオンするユーザー ID を指定するオプションを使用できます。 こ の場合、Windows ログオン・ウィンドウは表示されません。このオプションを 使用すると、ユーザー ID が DB2 要件 (詳細については (注2) を参照) を 満たしていると、ログオンが行われ、db2start コマンドが続きます。このオ プションを使用しないと、常にログオン・ウィンドウが 現れます。ログオン せずにこのウィンドウを取り消すと、上記で述べたように 事前に db2start コマンドが実行されているか、 あるいはバッチ・ファイルから呼び出されて いるかのいずれかでなければ、 db2logon コマンドは失敗します。 5. システム・ブート中に DB2 を開始しない場合は、 DB2 をアプリケーションか ら開始することができます。DB2 を使用する アプリケーションの初期設定の 一部として、db2start.bat ファイルを実行することができます。この方法を 使用すると、これを使用している アプリケーションが開始されたときにのみ DB2 は開始されます。 アプリケーションを終了すると、db2stop コマンドが 実行され、DB2 を停止します。このようにして、 システム・ブート時に DB2 が開始されない場合でも、 ビジネス・アプリケーションで DB2 を開始するこ とができます。 DB2 シンクロナイザー・アプリケーションを使用するには、あるいは アプリ ケーションから同期化 API を呼び出すには、実行用にダウンロードされたス クリプトが ローカル・インスタンスまたはローカル・データベースのいずれ かに対して操作する コマンドを含む場合は、DB2 を開始させる必要がありま す。 これらのコマンドは、データベース・スクリプトまたはインスタンス・ スクリプトに 含めるか、あるいはオペレーティング・システム (OS) スクリ プトに組み込むことが できます。OS スクリプトにコマンド行プロセッサー、 あるいは インスタンスまたはデータベースを使用する DB2 API が含まれない 場合は、 DB2 を開始しなくても実行することができます。どのコマンドが同 期化処理中に スクリプトから実行されるかを事前に判別するのは難しいの で、 通常は同期化の開始前に DB2 を開始しておきます。 db2sync コマンドまたは同期化 API の いずれかをアプリケーションから呼び 出さない場合は、アプリケーションの 初期設定中に DB2 を開始します。同期 化を開始するのに DB2 内の DB2 シンクロナイザーのショートカットを使用す る場合は、 db2sync.bat ファイルを実行するよう DB2 シンクロナイザーのシ ョートカットを変更する必要があります。同期化の開始前に DB2 が実行され ていることを確認するために、 バッチ・ファイルに以下のコマンドを含めて ください。 @echo off db2start.bat db2sync.exe db2stop.exe cls exit この例では、上記で述べたように、db2start.bat ファイルで db2logon およ び db2start コマンドが呼び出されると想定しています。 アプリケーションの開始時に DB2 を開始することに決めたら、 DB2 のインス トールにおいて DB2 を開始するスタートアップ・フォルダーへの ショートカ ットが追加されないよう確認してください。詳細については、(注3) を参照 してください。 ------------------------------------------------------------------------ 17.2 第 1 章 効果的なトラブルシューティングの手段 17.2.1 問題分析および環境データ収集用のツール 問題に関連した情報をある程度識別するのに役立ち、さらにその他の関係のある情 報を収集して お客様サポートがお客様の環境と問題を理解するのを援助するユーテ ィリティーがあります。 このユーティリティーを使用して収集されるものの多くに ついては、この章の残りの部分で説明されて います。 そのユーティリティーは db2support です。 構文およびコマンド行オプションの詳細は、コマンド解説書 に記載されています。 このユーティリティーの目的は、DB2 を実行しているクライアントまたはサーバ ー・マシンに関する 環境データを収集し、次に出力の大部分を収集してブラウズ可 能な XML、HTML、または 圧縮ファイル・アーカイブとしてパッケージすることで す。 このユーティリティーには、対話式の質疑応答を行うプロセスを使用して問題 の種類に関するデータを ユーザーから収集できるようにするためのオプションも用 意されています。 このプロセスは、問題を明確にするのに役立つだけでなく、問題 に関して最終的にお客様サポートに 連絡した際にはお客様サポートへの情報提供も 行います。 注:このユーティリティーは、シン・クライアントまたはランタイム・クライアン トでは 使用できません。 このユーティリティーの場合は、クライアントに DB2 エンジン・ライブラリーがインストールされている 必要があります。 17.2.1.1 収集データ出力 このユーティリティーは、圧縮した形での重要データベース・システム情報の集合 (単一ファイル・ アーカイブ) を生成します。 このアーカイブには、最も必要な情 報が記述された HTML 報告書が組み込まれます。 その情報はこの報告書を使用して 表示できます。 デフォルトでは、カスタマー・データのセキュリティーと機密性を保護するため に、db2support は 表データ、スキーマ (DDL)、またはログを収集しません。 一部 のオプションを使用すると、スキーマおよびデータのいくつかの側面を組み込む (たとえば、 アーカイブ・ログを組み込む) ようにできます。 データベース・スキ ーマまたはデータを露出するオプションは注意深く使用する必要があります。 db2support を呼び出すと、機密データの扱われ方を示すメッセージが表示されま す。 収集されて単一アーカイブに圧縮されるファイルは次の通りです。 どのような条件下でも収集されるもの 1. db2diag.log 2. すべてのトラップ・ファイル 3. ロック・リスト・ファイル (-d の指定付き) 4. ダンプ・ファイル 5. ユーザー出口 (-d の指定付き) 6. バッファー・プールおよび表スペース (SPCS) 制御ファイル (-d の指定付き) 7. 各種のシステム関連ファイル 8. 各種のシステム・コマンドからの出力 9. db config (-d の指定付き) 10. dbm config ファイル 11. ログ・ファイル・ヘッダー・ファイル (-d の指定付き) 12. リカバリー・ヒストリー・ファイル 13. db2cli.ini オプションで収集されるもの 1. アクティブ・ログ・ファイル 2. db2dump ディレクトリーの内容 (つまり、上では収集されなかったもの) 3. コア・ファイル (-a を指定した場合はすべてのコア・ファイル、-r を指定し た場合は 最新のコア・ファイルのみ) 4. 拡張システム情報 (-s) HTML 報告書の内容は次のファイルから構成されます。 どのような条件下でも収集されるもの 1. あれば、PMR 番号 (-n を指定した場合) 2. オペレーティング・システムとそのレベル (例 : AIX 4.2.1) 3. DB2 リリース情報 4. エンジン・ライブラリー・ヘッダー情報 5. 32 ビットか 64 ビットかの検出 6. DB2 インストール・パス情報 7. db2nodes.cfg の内容 (EEE 報告書の場合) 8. CPU とディスクの数、およびメモリー容量 9. このインスタンス上のデータベースのリスト 10. レジストリー情報、環境 (PATH および LIBPATH を含む) 11. 現行ファイル・システムおよび inodes 用のディスク・フリー・スペース (UNIX の場合) 12. JDK レベル 13. dbm config 14. データベース・リカバリー・ヒストリー・ファイルのリスト 15. sqllib ディレクトリーに対する「ls -lR」(または Windows でそれと等価の もの) 16. LIST NODE DIRECTORY 17. LIST ADMIN NODE DIRECTORY 18. LIST DCS DIRECTORY 19. LIST DCS APPLICATIONS EXTENDED 20. すべてのインストール済みソフトウェアのリスト 「-s」を指定した場合に収集されるもの 1. 詳細なディスク情報 (区分レイアウト、タイプ、LVM 情報など) 2. 詳細なネットワーク情報 3. カーネル統計 4. ファームウェアのバージョン 5. その他のプラットフォーム固有コマンド DB2 が始動済みである場合に収集されるもの 1. クライアントの接続状態 2. db/dbm config (db cfg には -d オプションが必須) 3. CLI config 4. メモリー・プール情報 (サイズおよび消費量) (-d オプションを使用した場合 は完全なデータ) 5. LIST ACTIVE DATABASES 6. LIST DATALINKS MANAGERS 7. LIST DCS APPLICATIONS -c が指定済みでデータベースへの接続が可能な場合に収集されるもの 1. ユーザー表の数 2. DB データのおおよそのサイズ 3. データベースのスナップショット 4. アプリケーションのスナップショット 5. バッファー・プール情報 6. LIST APPLICATIONS 7. LIST COMMAND OPTIONS 8. LIST DATABASE DIRECTORY 9. LIST INDOUBT TRANSACTIONS 10. LIST NODEGROUPS 11. LIST NODES 12. LIST ODBC DATA SOURCES 13. LIST PACKAGES/TABLES 14. LIST TABLESPACE CONTAINERS 15. LIST TABLESPACES 16. LIST DRDA IN DOUBT TRANSACTIONS 「-q」を指定した場合に収集されるもの 対話式質疑応答モードが開始されます。「どのような問題か説明してください」と いう オプションの質問が 1 つあることと、数回だけカスタマー情報を求められる ことがあるだけで、 それ以外のすべての質問には複数の選択肢の中から答えを選べ ばよいようになっています。 すべての質問 (念のための質問も含む) と答えが収集 されます。 場合によっては、あるタスクを実行してそのタスクの結果を追加のディ レクトリーに入れるよう ユーティリティーから求められることがあります。 対話 モードの間は、どの質問をするのかを決定するのに小さなデシジョン・ツリーが使 用されます。 これらの対話式の質問により、問題のカテゴリーの判別が援助されま す。そのカテゴリーに基づいて、 さらにいくつかの関連質問が行われて、追加デー タが収集される場合があります。 質問が終わると、自動モードで収集されたデータ もすべて収集されます。 すべての質問に対する答えと自動モードで収集されたあら ゆるデータが保管されて、 サービスへの送信に向けて準備されます。 17.2.1.2 detailed_system_info.html の表示 db2support を非英語環境のシステムで実行していて、detailed_system_info.html を 正しく表示できないという問題が起こっている場合は、Internet Explorer バー ジョン 5 以降 を DOS エンコード方式と組み合わせて使用しなければならない可能 性があります。 エンコード方式を変更するには、「表示」-->「エンコード」--> 「中央 ヨーロッパ言語 (DOS)」を選択してください。 必要なエンコード・サポー トをまだ取得していない場合 は、Microsoft Updates Web サイトから必要なファイ ルをダウンロードするよう Internet Explorer から 求められます。 この情報は 2 バイト言語 (中国語 (簡体字)、中国語 (繁体字)、日本語、および韓国語) には 適 用されません。 17.2.1.3 DB2 サポート・ツールの構文を一時に 1 ページに表示 DB2 サポート・ツールの構文を一時に 1 ページに表示するには、次のコマンドを実 行してください。 db2support | more ------------------------------------------------------------------------ 17.3 第 2 章 DB2 ユニバーサル・データベース・サーバーの障害追及 「ロックおよびデッドロック」セクションの「遅い、またはハングしたように見え るアプリケーション」 サブセクションにある「次のキー・ロックによってロック待 機またはデッドロックは起こりません」の 下の説明を次のように変更します。 次のキー・ロック は、すべての INSERT および DELETE ステートメントの次のキ ー、 および SELECT ステートメントの結果セットを超える、次に大きなキー値を自 動的にロックすることによって、 反復可能読み取り (RR) 分離レベルを保証しま す。 索引のキー部分を更新する UPDATE ステートメントの場合、元の索引キーは削 除され、新しいキー値が挿入されます。 次のキー・ロックは、キー挿入とキー削除 の両方で行われます。 これは、ANSI および SQL92 標準 RR を保証するために必要 で、DB2 デフォルトです。 アプリケーションのスナップショット情報を調べてください。 次のキー・ロックに 問題があると思われる場合、どのアプリケーションも 反復可能読み取り (RR) の振 る舞いに依存せず、走査がコミットされていない削除をスキップしても 問題なけれ ば、DB2_RR_TO_RS オプションをオンに設定できます。 DB2_RR_TO_RS がオンであれば、索引キーの挿入および削除で次のキー・ロックが行 われないため、 ユーザー表に対する走査で RR の振る舞いは保証されません。 カ タログ表はこのオプションの影響を受けません。 その他の振る舞いの変更は、DB2_RR_TO_RS がオンであれば、走査の対象となってい る行であっても、 削除済みでコミットされていない行は走査でスキップされること です。 たとえば、トランザクション A が column1=10 の行を削除し、 トランザクション B が column1>8 かつ column1<12 を走査するとします。 DB2_RR_TO_RS がオフであれば、トランザクション B は、トランザクション A がコ ミット またはロールバックを行うのを待ちます。 トランザクション A がロールバ ックした場合、column1=10 の行はトランザクション B の 照会の結果セットに組み 込まれます。 DB2_RR_TO_RS がオンであれば、トランザクション B は、トランザクション A がコ ミット またはロールバックを行うのを待ちません。 トランザクション B は、削除 された行が含まれていない照会結果をすぐに受け取ります。 ANSI および SQL92 標準 RR が必要な場合、またはコミットされていない削除を走 査にスキップさせたくない場合、 このオプションを使用しないでください。 ------------------------------------------------------------------------ 17.4 第 8 章 DB2 データ・リンク・マネージャーのトラブルシューティング バージョン 7 フィックスパック 2 では、FEDERATED オプションの値を指定せずに ソース・ファイルをプリコンパイル、またはバインド・ファイルをバインドする と、 SQL1179W 警告メッセージがサーバーによって生成されます。ソース・ファイ ルまたは バインド・ファイルにニックネームに対する静的 SQL 参照が含まれてい るときも、 同じメッセージが生成されます。これには次の 2 つの例外がありま す。 * バージョン 7 フィックスパック 2 以前のフィックスパック・レベルにあるク ライアント、または 下位レベル・クライアントの場合、sqlaprep() API はメ ッセージ・ファイルに この SQL1179W 警告を報告しない。コマンド行プロセ ッサー PRECOMPILE コマンドも、 この場合は警告を出力しません。 * バージョン 7 フィックスパック 2 以前のフィックスパック・レベルにあるク ライアント、または 下位レベル・クライアントの場合、sqlabndx API はメッ セージ・ファイルに この SQL1179W 警告を報告する。ただし、メッセージ・ ファイルには、パッケージが 作成されなかったことを示す SQL0092N が組み 込まれてしまいます。パッケージは 実際には作成されているため、これは間 違いです。コマンド行プロセッサー BIND コマンドも、 同じ警告を誤って返 します。 ------------------------------------------------------------------------ 64 ビット・プラットフォームで DB2 ユニバーサル・データベースを使用する ------------------------------------------------------------------------ 18.1 第 5 章 構成 18.1.1 LOCKLIST 次の情報を表 2 に追加する必要があります。 パラメーター 前の上限 現在の上限 LOCKLIST 60000 524288 18.1.2 shmsys:shminfo_shmmax 64 ビット Solaris オペレーティング・システム上の DB2 ユーザーは、 必要に応 じて /etc/system にある "shmsys:shminfo_shmmax" の値を増やし、 ラージ・デー タベースの共有メモリー設定を割り振ることができるようにしてください。 「DB2 (UNIX 版) 概説およびインストール」ブックでは、このパラメーターを 「マシンの 物理 RAM の 90% (バイト数)」に設定するよう推奨しています。この推奨は、64 ビ ット実装マシンでも有効です。 ただし、 「DB2 (UNIX 版) 概説およびインストール」ブックでは、次の推奨には問 題があります。 4 GB より大きい RAM (Solaris オペレーティング・システムで は、合計 64 GB まで) の 32 ビット・システムでは、ユーザーが shmmax の値を 4 GB より大きい数に設定し、 32 ビット・カーネルを使用している場合、カーネルは この数の下位 32 ビットのみ を参照し、その結果、shmmax が非常に小さい値にな ることが あります。 ------------------------------------------------------------------------ 18.2 第 6 章 制約事項 64 ビット・オペレーティング・システムでは、現在 LDAP サポートはありません。 32 ビットおよび 64 ビット・データベースを、同じパスに作成することはできませ ん。 たとえば、32 ビット・データベースが にある場合には、次のよ うになります。 db2 create db on これが 64 ビット・インスタンスから実行されると、「SQL10004C データベース・ ディレクトリー にアクセス中に入出力エラーが発生しました。」となり、失敗しま す。 ------------------------------------------------------------------------ XML エクステンダー 管理およびプログラミング IBM DB2 XML エクステンダーのリリース情報は、DB2 XML Web サイト http://www-4.ibm.com/software/data/db2/extenders/xmlext/library.html にあり ます。 ------------------------------------------------------------------------ MQSeries このセクションでは、DB2 と MQSeries を使用して、メッセージングとデータベー ス・アクセスを 結合するアプリケーションを構成する方法について説明します。こ のセクションで取り上げているのは、 ユーザー定義関数 (UDF) に似た関数のセッ トで、これは DB2 ユニバーサル・データベース バージョン 7.2 では オプション で使用可能にすることができます。これらの基本的な関数を使用すると、単純なイ ベント通知から データウェアハウスに至るまで、広範囲なアプリケーションをサポ ートできます。 データウェアハウス・アプリケーションについて詳しくは、新たに更新された、 「データウェアハウス・センター管理の手引き」を参照して ください ( http://www.ibm.com/software/data/db2/udb/winos2unix/support から入手可能)。 ------------------------------------------------------------------------ 20.1 DB2 MQSeries 関数のインストールおよび構成 このセクションでは、DB2 MQSeries 関数を利用するために DB2 環境を構成する方 法について 説明します。次の手順を正常に完了すると、SQL 内から DB2 MQSeries 関数を利用できます。各関数に ついては、「リリース情報」の「SQL 解説書」セク ションで説明しています。 DB2 MQSeries 関数を構成し、使用可能にする基本的な手順は、以下の通りです。 1. MQSeries をインストールします。 2. MQSeries AMI をインストールします。 3. DB2 MQSeries 関数を使用可能にし、構成します。 さらに、DB2 MQSeries 関数から提供される発行/サブスクリプション機能を利用す るためには、 MQSeries Integrator または MQSeries 発行/サブスクリプション機 能もインストールする 必要があります。MQSeries Integrator に関する情報は、 http://www.ibm.com/software/ts/mqseries/integratorから入手できます。 MQSeries 発行/サブスクリプション機能に関する情報は、 http://www.ibm.com/software/ts/mqseries/txppacsのカテゴリー 3 に 記載されて います。 20.1.1 MQSeries のインストール 最初のステップは、最新のフィックスパックをともなう最小限の MQSeries バージ ョン 5.1 が、DB2 サ ーバーにインストールされることを確認することです。 この バージョンの MQSeries がすでにインストールされて いる場合は、次のステップ 「MQSeries AMI のインストール」へ進んでください。 DB2 バージョン 7.2 には、 DB2 で使用される MQSeries サーバーのコピーが含まれて います。MQSeries をイ ンストールするため、または既存の MQSeries インストールを アップグレードする ための、プラットフォーム別の手順が、 http://www.ibm.com/software/ts/mqseries/library/manualsの プラットフォーム 別「概説およびインストール」マニュアルに記載されています。 インストール・プ ロセスを進めていく中で、必ずデフォルトのキュー・マネージャーを セットアップ してください。 20.1.2 MQSeries AMI のインストール 次のステップは、MQSeries Application Messaging Interface (AMI) をインストー ル する作業です。これは、管理およびプログラミングのタスクを完全に 分離する MQSeries プログラミング・インターフェースの拡張です。DB2 MQSeries 関数は、 このインターフェースのインストールを必要とします。MQSeries AMI がすでに DB2 サーバーに インストールされている場合は、次のステップ「DB2 MQSeries 関数を 使用可能にする」へ 進んでください。MQSeries AMI がまだインストールされてい ない場合は、DB2 7.2 に 添付されているインストール・パッケージからインストー ルするか、 または MQSeries Support Pacs の Web サイト http://www.ibm.com/software/ts/mqseries/txppacs から AMI の コピーをダウン ロードしてインストールします。AMI は、「カテゴリー 3 - 製品拡張機能」に あ ります。便宜上、DB2 には MQSeries AMI のコピーを添付してあります。このファ イルは、 sqllib/cfg ディレクトリー内にあります。ファイルの名前は、以下のよ うに オペレーティング・システムによって異なります。 AIX バージョン 4.3 以上 ma0f_ax.tar.Z HP-UX ma0f_hp.tar.Z Solaris 操作環境 ma0f_sol7.tar.Z Windows 32 ビット ma0f_nt.zip 圧縮されたインストール・イメージに含まれている AMI readme ファイルに、 通常 の AMI インストール・プロセスが記載されているので、それにしたがってくださ い。 20.1.3 DB2 MQSeries 関数を使用可能にする このステップでは、DB2 MQSeries 関数のデータベースを構成し、使用可能にしま す。 enable_MQFunctions ユーティリティーは柔軟なコマンドで、 まずセットアッ プされている MQSeries 環境が適切であるかを調べ、次に DB2 MQSeries 関数の デ フォルト構成をインストールおよび作成し、これらの関数を使用して指定のデータ ベースを 使用可能にし、最後に構成が機能することを確認します。 1. Windows NT または Windows 2000 の場合は、ステップ 5 へ進みます。 2. UNIX でのグループの設定: これらの関数を UNIX 上で使用可能にする場合 は、 まず DB2 インスタンス所有者 (多くの場合、db2inst1) と隔離された UDF に関連付けられている ユーザー ID (多くの場合、db2fenc1) を MQSeries グループ mqm に追加する必要があります。 これは、DB2 関数が MQSeries にアクセスするために必要です。 3. UNIX 上で DB2 環境変数を設定する: AMT_DATA_PATH 環境変数を DB2 が認識 できる リストに追加します。ファイル $INSTHOME/sqllib/profile.env を編 集する ことによって、AMT_DATA_PATH を DB2ENVLIST に追加できます。 db2set コマンドを使用することもできます。 4. UNIX 上でデータベース・インスタンスを再始動する: 環境変数の変更を有効 にする には、データベース・インスタンスを再始動する必要があります。 5. UNIX の場合は $INSTHOME/sqllib/cfg に、 Windows の場合は %DB2PATH%/cfg にディレクトリーを変更します。 6. コマンド enable_MQFunctions を実行して、 DB2 MQSeries 関数のデータベー スを構成し、使用可能にします。このコマンドの詳細に ついては、20.6, enable_MQFunctions を参照してください。いくつかの一般的な例を 後述しま す。正常に完了すると、指定されたデータベースが使用可能になり、構成が テストされます。 7. コマンド行処理プログラムを使用してこれらの関数をテストするには、使用可 能に なったデータベースに接続した後で次のコマンドを実行します。 values DB2MQ.MQSEND('a test') values DB2MQ.MQRECEIVE() 最初のステートメントでは「a test」という メッセージを DB2MQ_DEFAULT_Q キューへ送り、2 番目のステートメントではそれを 受け取ります。 注:enable_MQFunctions を実行した結果として、 デフォルトの MQSeries 環境が 確立されます。MQSeries キュー・マネージャー DB2MQ_DEFAULT_MQM と デフ ォルト・キュー DB2MQ_DEFAULT_Q が作成されます。 ファイル amt.xml、 amthost.xml、および amt.dtd が、 AMT_DATA_PATH が指しているディレクト リーにまだ存在していない場合は、作成されます。 amthost.xml ファイルが 存在しているが、connectionDB2MQ の定義が含まれて いない場合は、該当す る情報を伴ってファイルに行が追加されます。元のファイルの コピーは DB2MQSAVE.amthost.xml として保管されます。 ------------------------------------------------------------------------ 20.2 MQSeries メッセージ・スタイル DB2 MQSeries 関数では、データグラム、発行/サブスクリプション (p/s)、および 要求/応答 (r/r) の 3 つのメッセージング・モデルをサポートしています。 データグラムとして送信されるメッセージは、応答を要求せずに単一の宛先に 送ら れます。 p/s モデルでは、1 つ以上のパブリッシャーがパブリケーション・サービ スへ メッセージを送信し、パブリケーション・サービスがそのメッセージを 1 つ 以上の サブスクライバーに配布します。要求/応答はデータグラムと似ています が、送信側が 応答の受け取りを要求します。 ------------------------------------------------------------------------ 20.3 メッセージ構造 MQSeries では、送信するメッセージの特定の構造化をそれ自体で指示したり、サポ ート したりすることはありません。 MQSeries Integrator (MQSI) などの他の製品は、C または Cobol、あるいは XML ストリングの 形式のメッセージをサポートします。MQSI 内の構造化メッセージ は、メッセージ・リポジトリーに よって定義されます。XML メッセージには一般的 に、自己記述のメッセージ構造があり、 リポジトリーによって管理可能です。メッ セージは構造化されていないこともあり、 その場合はユーザー・コードでメッセー ジの内容を解析または構成する必要があります。 このようなメッセージは多くの場 合、半構造化メッセージで、メッセージ内のフィールドを 区切るためにバイト位置 または固定区切り文字を使用します。このような半構造化メッセージの サポート は、MQSeries Assist Wizardによって提供されます。XML メッセージのサポート は、 DB2 XML Extender の新機能によって提供されます。 ------------------------------------------------------------------------ 20.4 MQSeries 関数の概説 MQSeries 関数のセットは、SQL ステートメントにメッセージング操作を組み込むた めに、 DB2UDB バージョン 7.2 によって提供されるものです。つまり、このサポー トは、 データベース・インターフェースを使用して C、Java、SQL などのサポート されている言語で 作成されたアプリケーションに使用できるということです。下記 の例はすべて SQL で記述されて います。この SQL は、他のプログラム言語からも すべて標準の方法で使用できます。上記の すべての MQSeries メッセージ・スタイ ルがサポートされています。MQSeries 関数の詳細に ついては、「リリース情報」 の「SQL 解説書」セクションを参照してください。 基本構成では、MQSeries サーバーが DB2 とともにデータベース・サーバー・マシ ン上に 置かれます。MQSeries 関数は、DB2 にインストールされ、MQSeries サーバ ーへのアクセスを 提供します。DB2 クライアントは、DB2 サーバーへアクセス可能 なマシン上に置かれます。 MQSeries 関数には、複数のクライアントがデータベー スを介して同時にアクセスできます。 DB2 クライアントは、提供された関数を使用 して、SQL ステートメント内のメッセージング操作を 実行します。これらのメッセ ージング操作を使用して、DB2 アプリケーションは相互に、または 他の MQSeries アプリケーションと通信することができます。 enable_MQFunctions コマンドは、MQSeries 関数用に DB2 データベース を使用可 能にするために使用されます。このコマンドは、 クライアント・アプリケーション が他の管理アクションを実行せずに使用できる単純な デフォルト構成を自動的に確 立します。詳しくは、20.6, enable_MQFunctions およ び 20.7, disable_MQFunctions を参照してください。デフォルト構成では、 アプリケーショ ン・プログラマーに、簡単な使い方と、開発用のシンプルなインターフェースが 提 供されます。必要に応じて、追加の機能を構成できます。 例 1: デフォルト構成を使用して単純なメッセージを送信するには、次のような SQL ステートメントを 使用します。 VALUES DB2MQ.MQSEND('simple message') これにより、simple message というメッセージが、デフォルト構成で 指定されて いる MQSeries キュー・マネージャーとキューへ送られます。 MQSeries の Application Message Interface (AMI) では、メッセージング・アク ションと、 そのアクションの実行方法を示す定義が、完全に分離されています。こ れらの定義は、 外部リポジトリー・ファイルに保持され、AMI 管理ツールを使用し て管理されます。これにより、 AMI アプリケーションの開発と保守が容易になりま す。DB2 で提供される MQSeries 関数は、 AMI MQSeries インターフェースに基づ いています。AMI は、構成情報を保管するために、 AMI リポジトリーと呼ばれる外 部構成ファイルの使用をサポートしています。デフォルト構成には、 DB2 とともに 使用されるように構成されている MQSeries AMI リポジトリーが含まれています。 MQSeries AMI の 2 つの重要な概念であるサービス・ポイントとポリシーは、 DB2 MQSeries 関数にも引き継がれています。サービス・ポイントとは、メッセージを送 受信する 論理エンドポイントのことです。各サービス・ポイントは、AMI リポジト リーに、 MQSeries キュー名およびキュー・マネージャーとともに定義されていま す。 ポリシーは、指定されたメッセージング操作に使用するサービス・オプション の品質を 定義します。サービスの重要な品質としては、メッセージ優先順位や持続 性などが あります。デフォルトのサービス・ポイントとポリシー定義が提供される ので、開発者は それを利用してアプリケーションを単純化させることができます。 例 1 は、デフォルトの サービス・ポイントとポリシー名を明示的に指定して、次 のように書き換えることができます。 例 2: VALUES DB2MQ.MQSEND('DB2.DEFAULT.SERVICE', 'DB2.DEFAULT.POLICY', 'simple message') キューは、そのキューとアプリケーションが常駐するサーバーにある 1 つ以上の アプリケーションによってサービスされます。多くの構成では、各種アプリケーシ ョンと用途を サポートするために、複数のキューが定義されます。このため多くの 場合、MQSeries 要求を 作成するときには、さまざまなサービス・ポイントを定義 することが重要になります。次に例を示します。 例 3: VALUES DB2MQ.MQSEND('ODS_Input', 'simple message') 注:この例では、ポリシーが指定されていないので、デフォルト・ポリシーが使用 されます。 20.4.1 制約事項 MQSeries は、メッセージ操作とデータベース操作をアトミック・トランザクション として 1 つの作業単位に結合する機能を提供します。この機能は、UNIX および Windows では、 MQSeries 関数によって最初からサポートされているわけではあり ません。 送受信の関数を使用する場合、タイプ VARCHAR のメッセージの最大長 は、4000 文 字です。タイプ CLOB のメッセージを送受信する場合の 最大長は、1 MB です。 MQPublish を使用してメッセージを発行する際の 最大メッセージ・サイズもありま す。 CLOB メッセージおよび VARCHAR メッセージを処理する場合は、 異なる関数が必要 な場合もあります。一般に MQ 関数の CLOB バージョンは、MQ 関数と同一の構文 を使用します。 唯一の違いは、その名前の末尾に CLOB の文字が 付いている点で す。たとえば、MQREAD に相当する関数は、CLOB で は、MQREADCLOB です。これら の関数について詳しくは 42.3.3, MQSeries 関数でサポートされるようになった CLOB データ を参照してください。 20.4.2 エラー・コード MQSeries 関数から戻される戻りコードは、「MQSeries アプリケーション・メッセ ージング・インターフェース」 マニュアルの「付録 B」に記載されています。 ------------------------------------------------------------------------ 20.5 使用のシナリオ MQSeries 関数は、さまざまなシナリオで使用できます。このセクションでは、 基 本メッセージング、アプリケーション接続、およびデータ・パブリケーションなど の 一般的なシナリオについて検討します。 20.5.1 基本メッセージング すべてのデータベース・アプリケーションが同じ DB2 サーバーに接続すると、 MQSeries DB2 関数によって最も基本的な形式のメッセージングが行われます。クラ イアントは、 データベース・サーバーに対してローカルである場合と、ネットワー ク環境に分散している場合が あります。 単純なシナリオでは、クライアント A が MQSEND 関数を呼び出して、ユーザー定義 の ストリングをデフォルトのサービス・ロケーションに送ります。次に、データベ ース・サーバー上 の DB2 内で MQSeries 関数が実行されます。その後、クライア ント B が MQRECEIVE 関数を 呼び出して、デフォルト・サービスに定義されている キューの先頭にあるメッセージを除去し、 それをクライアントへ戻します。再び、 この作業を行うための MQSeries 関数が DB2 によって 実行されます。 データベース・クライアントでは、多数の方法で単純なメッセージングを使用でき ます。 一般的なメッセージングの使用法には次のようなものがあります。 * データ収集 -- 情報が、1 つ以上の情報源からメッセージ形式で受け取られま す。情報源は、 SAP や社内で開発されたアプリケーションのような商用アプ リケーションです。 このようなデータがキューから受け取られ、後から行う 処理や分析のためにデータベース表に 保管されます。 * ワークロード分散 -- 作業要求は、同じアプリケーションの複数のインスタン スによって 共用されるキューに送られます。インスタンスが作業を実行する 準備が整うと、実行する 作業要求が含まれているキューの一番上からメッセ ージを受け取ります。この技法によって、 複数のインスタンスが、プールさ れた要求の単一のキューで表されるワークロードを共用できます。 * アプリケーション・シグナリング -- いくつかのプロセスが共同作業を行う状 況では、 プロセスの作業を調整するためにメッセージが使用されることがよ くあります。このような メッセージには、コマンドや実行する作業の要求が 含まれています。一般的に、この種の シグナリングは一方通行です。つま り、メッセージを開始する側は応答を期待していません。 詳しくは、 20.5.4.1, 要求/応答通信 を参照してください。 * アプリケーション通知 -- 通知は、応答を期待していない開始側からデータが 送られる シグナリングと似ています。ただし、通知には一般に、発生したビ ジネス・イベントに関する データが含まれています。20.5.4.2, 発行/サブス クリプション は、通知の拡張形式です。 次のシナリオでは、上記の単純なシナリオを拡張して、リモート・メッセージング を 組み込みます。つまり、メッセージがマシン A とマシン B 間で送信されます。 以下の ようなステップがあります。 1. DB2 クライアントが、マシン B 上のリモート・キューを表すように定義され た ターゲット・サービスを指定して、MQSEND 呼び出しを実行します。 2. MQSeries DB2 関数が、メッセージを送信するための実際の MQSeries 作業を 実行します。マシン A 上の MQSeries サーバーが、メッセージを受け入れ、 マシン A の サービス・ポイント定義と現行 MQSeries 構成に定義されている 宛先へ送ることを 保証します。サーバーは、これがマシン B 上のキューであ ることを判別します。 次にマシン B 上の MQSeries サーバーへメッセージを 送り、必要に応じて再試行します。 3. マシン B 上の MQSeries サーバーが、マシン A 上のサーバーからのメッセー ジを 受け入れ、マシン B 上の宛先キューに入れます。 4. マシン B 上の MQSeries クライアントが、キューの先頭にあるメッセージを 要求します。 20.5.2 メッセージの送信 DB2 ユーザーまたは開発者は、MQSEND を使用して、送信するデータ、送信先、およ び 送信日時を選択します。業界では、これを「送信および喪失」と呼びます。これ は、 送信側が、メッセージを必ず宛先に届ける MQSeries の保証された送達プロト コルを 信頼して、単純にメッセージを送ることを意味しています。この例を次に示 します。 例 4: ポリシー highPriority を用いて、ユーザー定義のストリングを サービス・ ポイント myPlace に送信するには: VALUES DB2MQ.MQSEND('myplace','highPriority','test') ここでは、ポリシー highPriority が、AMI リポジトリーに定義されているポリシ ーを 参照します。このポリシーは、MQSeries の優先順位を最高レベルに設定し、 サービスのその他の 品質 (たとえば、持続性など) を調整するものです。 メッセージの内容は、SQL とユーザー指定データの有効な組み合わせから成りま す。 これには、ネストされた関数、演算子、およびキャストが含まれます。たとえ ば、 表 EMPLOYEE に VARCHAR 列の LASTNAME、FIRSTNAME、および DEPARTMENT が あるとします。 DEPARTMENT 5LGA の各従業員の情報が含まれているメッセージを送 信するには、次のようにします。 例 5: SELECT DB2MQ.MQSEND(LASTNAME || ' ' || FIRSTNAME || ' ' || DEPARTMENT) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' この表に整数の AGE 列も含まれていた場合は、次のように組み込まれます。 例 6: SELECT DB2MQ.MQSEND (LASTNAME || ' ' || FIRSTNAME || ' ' || DEPARTMENT|| ' ' || char(AGE)) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' 表 EMPLOYEE に AGE 列ではなく、タイプ CLOB の列 RESUME がある場合、 DEPARTMENT 5LGA の各 従業員の情報を含むメッセージは、次のコマンドによって送 信されます。 例 7: SELECT DB2MQ.MQSEND (clob(LASTNAME) || ' ' || clob(FIRSTNAME) || ' ' || clob(DEPARTMENT) || ' ' || RESUME)) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' 例 8: 最後に、次の例では、有効な SQL 式を使用してメッセージ内容を取得できる方法を 示します。2 番目の表 DEPT に VARCHAR 列 DEPT_NO およ び DEPT_NAME が含まれ ている場合、従業員の LASTNAME および DEPT_NAME を含むメッセージは、 次のよ うにして送信されます。 例 8: SELECT DB2MQ.MQSEND(e.LASTNAME || ' ' || d.DEPTNAME) FROM EMPLOYEE e, DEPT d WHERE e.DEPARTMENT = d.DEPTNAME 20.5.3 メッセージの取り出し MQSeries DB2 関数を使用すると、メッセージの受け取りまたは読み取りが可能にな ります。 読み取りと受け取りの違いは、読み取りではキューの先頭にあるメッセー ジをキューから 除去せずに戻す一方、受け取り操作ではメッセージがキューから除 去されます。 受け取り操作を 使用してメッセージを取り出した場合は、一度度し かメッセージを取り出すことが できませんが、読み取り操作を使用してメッセージ を取り出した場合は、同じ メッセージを何度も取り出すことができます。 この例 を次に示します。 例 8: VALUES DB2MQ.MQREAD() この例では、デフォルト品質のサービス・ポリシーを使用して、デフォルト・サー ビスに 定義されているキューの先頭にあるメッセージを含む VARCHAR ストリング を戻します。 読み取るメッセージがない場合は、NULL 値が戻されることに注意し てください。キューは この操作では変更されません。 例 9: VALUES DB2MQ.MQRECEIVE('Employee_Changes') 上記の例では、デフォルト・ポリシーを使用して、Employee_Changes サービスに 定義されているキューのヘッドからメッセージを除去する方法を示しています。 DB2 の非常に強力な機能の 1 つに、ユーザー定義の (またはDB2 提供の) 関数から 表を 生成する機能があります。 この表関数機能を活用すると、キューの内容を DB2 表として 実体化することができます。次の例は、これを最も単純な形式で示し ています。 例 10: SELECT t.* FROM table ( DB2MQ.MQREADALL()) t この照会によって、デフォルト・サービスに定義されているキューの中のすべての メッセージと、これらのメッセージに関するメタデータから構成された表が戻され ます。 戻される表の構造の完全な定義は「付録」にありますが、最初の列はメッセ ージの内容を 反映し、残りの列にはメタデータが格納されます。メッセージだけを 戻すには、例を 次のように書き換えます。 例 11: SELECT t.MSG FROM table (DB2MQ.MQREADALL()) t 表関数によって戻される表は、データベースから直接取り出される表と何ら 変わり ありません。つまり、この表をさまざまな方法で利用できるということです。 たと えば、表の内容を別の表と結合したり、キューの中のメッセージの数をカウントし たり することができます。 例 12: SELECT t.MSG, e.LASTNAME FROM table (DB2MQ.MQREADALL() ) t, EMPLOYEE e WHERE t.MSG = e.LASTNAME 例 13: SELECT COUNT(*) FROM table (DB2MQ.MQREADALL()) t この場合も、表関数で視点を作成することによって、表のソースがキューであると いう 事実を隠すことができます。たとえば、次の例では、NEW_EMPLOYEES という名 前の サービスが参照しているキューに、NEW_EMP という名前の視点を作成します。 例 14: CREATE VIEW NEW_EMP (msg) AS SELECT t.msg FROM table (DB2MQ.MQREADALL()) t この場合、視点はメッセージ全体を含む 1 つの列だけで定義されています。メッセ ージの 構造が単純な場合、たとえば固定長のフィールドが 2 つある場合などは、 DB2 の組み込み関数を 使用して、メッセージを解析し、2 つの列に分けるのが順当 な方法です。たとえば、特定の キューに送られるメッセージに必ず 18 文字のラス トネームが含まれており、その後に 18 文字の ファーストネームが続く場合は、各 フィールドを含むビューを別々の列に次のように定義できます。 例 15: CREATE VIEW NEW_EMP2 AS SELECT left(t.msg,18) AS LNAME, right(t.msg,18) AS FNAME FROM table(DB2MQ.MQREADALL()) t DB2 ストアード・プロシージャー・ビルダーの新機能である MQSeries Assist Wizard を 使用すると、区切られたメッセージ構造を列にマップする、新しい DB2 表関数と視点を 作成できます。 最後に、メッセージの内容をデータベースに保管しておくとよいでしょう。メッセ ージ 内容を操作および保管するには、SQL のすべての能力を使用すれば行うことが できます。 この最も単純な例を次に示します。 例 16: INSERT INTO MESSAGES SELECT t.msg FROM table (DB2MQ.MQRECEIVEALL()) t 表 MESSAGES に 1 つの列 VARCHAR(2000) があるとします。上記のステートメント に よって、デフォルト・サービス・キューからのメッセージが表に挿入されます。 この技法は、さまざまな状況に応じて変化させることができます。 20.5.4 アプリケーション間接続 アプリケーション統合は、多くのソリューションの共通要素です。購入した アプリ ケーションを既存のインフラストラクチャーに統合するか、または新しく開発され た アプリケーションを既存の環境に統合するかにかかわらず、さまざまな種類のサ ブシステムの コレクションをつなぎ合わせて作業全体を形成するというタスクに直 面することがよくあります。 MQSeries は一般に、アプリケーションを統合するた めの不可欠なツールであるという 評価を受けています。MQSeries は、ほとんどの ハードウェア、ソフトウェア、および 言語環境プログラムにアクセス可能で、さま ざまな種類のアプリケーションのコレクションに 相互接続する手段を提供します。 このセクションでは、いくつかのアプリケーション統合のシナリオと、DB2 でのそ の 使用法について説明します。トピックが非常に広範囲なので、アプリケーション 統合を 包括的に扱うのは、この作業の目的とするところではありません。したがっ てここでは、 2 つの単純なトピック、つまり要求/応答通信、および MQSeries Integrator と 発行/サブスクリプションだけを取り上げます。 20.5.4.1 要求/応答通信 要求/応答 (R/R) 通信方式は、あるアプリケーションが別のアプリケーションの サ ービスを要求するという、非常に一般的な技法です。これを行うために、要求側が サービス提供側に、何らかの作業の実行を求めるメッセージを送る方法がありま す。作業が 完了したら、提供側は、結果 (または単に完了の確認) を要求側へ戻す かどうかを 決めることができます。しかし、上記の基本的なメッセージング技法を 使用した場合、 送信側の要求をサービス提供側の応答に接続するものが何もありま せん。要求側が 続行する前に応答を待機しない限りは、各応答をその要求に関連付 けるためにいくつかの メカニズムを使用する必要があります。開発者にこのような メカニズムの作成を強いる ことなく、MQSeries は、メッセージの交換時にメッセ ージを相関させることを可能に する相関 ID を提供します。 このメカニズムはさまざまな方法で使用できますが、最も単純な方法は、要求側が 既知の 相関 ID を使用してメッセージにマークを付ける方法です。この例を次に示 します。 例 17: DB2MQ.MQSEND ('myRequester','myPolicy','SendStatus:cust1','Req1') このステートメントでは、最後のパラメーター Req1 を MQSEND ステートメントに 上方から追加して、要求の相関 ID を指示しています。 この特定の要求に対する応答を受け取るには、次のように、対応する MQRECEIVE ス テートメントを 使用して、この相関 ID に一致する指示されたサービスに定義され ている最初のメッセージを選択的に 取り出してください。 例 18: DB2MQ.MQRECEIVE('myReceiver','myPolicy','Req1') 要求をサービスするアプリケーション・サービスがビジー状態であるときに、応答 が 送られる前に要求側が上記の MQRECEIVE を発行すると、この相関 ID に一致す る メッセージは見つかりません。 サービス要求と相関 ID の両方を受け取るには、次のようなステートメントを使用 します。 例 19: SELECT msg, correlid FROM table (DB2MQ.MQRECEIVEALL('aServiceProvider','myPolicy',1)) t これにより、最初の要求のメッセージと相関 ID がサービス aServiceProvider か ら 戻されます。 サービスが実行されたら、aRequester に記述されているキューへ応答メッセージを 送ります。一方、サービス要求側は他の作業を行うことが可能です。実際、初期サ ービス 要求へ、設定された時間内に応答する保証はありません。このようなアプリ ケーション・ レベルのタイムアウトは、開発者が管理する必要があります。また、 要求側は、応答の存在を 検出するためにポーリングする必要があります。 このような時間に依存しない非同期処理の利点は、要求側とサービス提供者が相互 に 完全に独立して実行する点です。この方法は、アプリケーションが断続的に接続 される環境と、 複数の要求または応答が処理前に集約されるバッチ指向性の高い環 境の両方に適合します。 この種の集約は多くの場合、データウェアハウスまたは操 作可能なデータ保管を定期的に 更新するために、データウェアハウス環境で使用さ れます。 20.5.4.2 発行/サブスクリプション 単純なデータ発行 アプリケーション統合のもう 1 つの一般的なシナリオは、1 つのアプリケーション が 別のアプリケーションへインタレストのイベントについて通知するというもので す。これは、 別のアプリケーションがモニターしているキューへメッセージを送る という簡単な方法で 行うことができます。メッセージの内容は、ユーザー定義スト リングにすることも、 データベース列から構成することもできます。多くの場合、 単純なメッセージとは、 MQSEND 関数を使用して送る必要があるものすべてを指し ます。このようなメッセージを 複数の受信側に同時に送る必要があるときには、 MQSeries AMI の配布先リスト機能を 使用できます。 配布先リストは、AMI 管理ツールを使用して定義します。配布先リストは、個々の サービスのリストで構成されます。配布先リストに送られるメッセージは、リスト に 定義されているあらゆるサービスに転送されます。これは特に、いくつかのサー ビスが 常にすべてのメッセージに関与することが分かっているときに役立ちます。 次の例では、 配布先リスト interestedParties にメッセージを送信します。 例 20: DB2MQ.MQSEND('interestedParties','information of general interest'); 特定のサービスが受け取るメッセージに対してより多くの制御が必要な場合は、 発 行/サブスクリプション機能が必要です。発行/サブスクリプション・システムは一 般に、 多くのサブスクライバーが複数のパブリッシャーからのメッセージを受け取 るために 登録できる、スケーラブルで安全な環境を提供します。この機能をサポー トするために、 MQSeries Integrator または MQSeries 発行/サブスクリプション 機能とともに、 MQPublish インターフェースを使用できます。 MQPublish を使用すると、ユーザーは、メッセージに関連付けるトピックをオプシ ョンで 指定できます。トピックによって、サブスクライバーは、受け入れるメッセ ージをより 明確に指定できます。手順は以下の通りです。 1. MQSeries 管理者が、MQSeries Integrator 発行/サブスクリプション機能を構 成します。 2. 関係するアプリケーションが、MQSI 構成に定義されているサブスクリプショ ン・ ポイントにサブスクライブし、オプションで関係するトピックを指定し ます。 各サブスクライバーは関連のあるトピックを選択し、また内容に基づ いて MQSeries Integrator V2 の サブスクリプション技法を使用することも できます。サービス名で表されているキューが サブスクライバーを定義して いることに注意してください。 3. DB2 アプリケーションが、サービス・ポイント Weather へメッセージを発行 します。 メッセージは、天候が Sleet でトピックが Austin であることを示 しているため、 関係するサブスクライバーへ Austin の天候が Sleet である ことを通知します。 4. 実際にメッセージを発行するメカニズムが、DB2 提供の MQSeries 機能に よ って処理されます。メッセージが、Weather という名前のサービスを使用して MQSeries Integrator へ送られます。 5. MQSI は Weather サービスからメッセージを受け入れ、MQSI 構成に定義され ている 処理を実行し、メッセージが満たしているサブスクリプションを判別 します。MQSI は次に、 メッセージが基準を満たしているサブスクライバー・ キューへ、メッセージを転送します。 6. Weather サービスにサブスクライブし、Austin 内のインタレストを登録した アプリケーションが、受信サービスの中でメッセージ Sleet を受け取りま す。 すべてのデフォルトとヌル・トピックを使用してこのデータを発行するには、 次の ステートメントを使用します。 例 21: SELECT DB2MQ.MQPUBLISH(LASTNAME || ' ' || FIRSTNAME || ' ' || DEPARTMENT|| ' ' ||char(AGE)) FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' すべてのパラメーターを完全に指定し、LASTNAME だけを含むようにメッセージを 単純化すると、ステートメントは次のようになります。 例 22: SELECT DB2MQ.MQPUBLISH('HR_INFO_PUB', 'SPECIAL_POLICY', LASTNAME, 'ALL_EMP:5LGA', 'MANAGER') FROM EMPLOYEE WHERE DEPARTMENT = '5LGA' このステートメントは、SPECIAL_POLICY サービスを使用して、 HR_INFO_PUB パブ リケーション・サービスへメッセージを発行します。メッセージは、 送信側が MANAGER トピックであることを示しています。トピック・ストリングから、 「:」 で連結することによって複数のトピックを指定できることがわかります。この例で は、 2 つのトピックが使用されているため、サブスクライバーは、ALL_EMP または 5LGA の どちらかについて登録し、これらのメッセージを受け取ることができま す。 発行されたメッセージを受け取るには、まず指定されたトピックが含まれている 関 係するメッセージを登録し、メッセージを送るサブスクライバー・サービスの名前 を 指示する必要があります。AMI サブスクライバー・サービスは、ブローカー・サ ービスと 受信側サービスを定義することに注意してください。ブローカー・サービ スとは、 サブスクライバーが発行/サブスクリプション・ブローカーと通信する方 法のことで、 受信側サービスとは、サブスクリプション要求と一致するメッセージ の宛先のことです。 次のステートメントでは、トピック ALL_EMP 内のインタレス トを登録します。 例 23: DB2MQ.MQSUBSCRIBE('aSubscriber', 'ALL_EMP') アプリケーションがサブスクライブすると、トピック ALL_EMP とともに発行される メッセージは、サブスクライバー・サービスによって定義されている受信側サービ スに 転送されます。アプリケーションには、並列サブスクリプションが複数存在す ることが あります。サブスクリプションに適合するメッセージを取得するには、通 常のメッセージ 検索機能を使用できます。たとえば、サブスクライバー・サービス aSubscriber に、 受信側サービスが aSubscriberReceiver であると定義されてい る場合は、次の ステートメントで最初のメッセージが非破壊的に読み取られます。 例 24: DB2MQ.MQREAD('aSubscriberReceiver') メッセージと、メッセージが発行されたトピックの両方を判別するには、表関数を 使用します。次のステートメントでは、最初の 5 つのメッセージを aSubscriberReceiver から 受け取り、メッセージとトピックの両方を表示します。 例 25: SELECT t.msg, t.topic FROM table (DB2MQ.MQRECEIVEALL('aSubscriberReceiver',5)) t トピック ALL_EMP のメッセージをすべて読み取るには、発行する SQL の能力を 次 のように調整します。 例 26: SELECT t.msg FROM table (DB2MQ.MQREADALL('aSubscriberReceiver')) t WHERE t.topic = 'ALL_EMP' 注:MQRECEIVEALL が制限付きで使用され、トピック ALL_EMP で発行された メッ セージだけでなく、キュー全体が占有されるかどうかを確認することは重要で す。 これは、制限が適用される前に表関数が実行されるためです。 それ以上特定のトピックにサブスクリプションしない場合は、次のようなステート メントを 使用して、明示的にアンサブスクリプションする必要があります。 例 27: DB2MQ.MQUNSUBSCRIBE('aSubscriber', 'ALL_EMP') このステートメントが実行されると、発行/サブスクリプション・ブローカーは そ れ以上、このサブスクリプションに一致するメッセージを送信しません。 自動発行 データベース・メッセージングでのもう 1 つの重要な技法は、自動発行です。 DB2 内でトリガー機能を使用すると、トリガー呼び出しの一部として自動的にメッセー ジを 発行できます。データ発行を自動化する技法はほかにもありますが、このトリ ガー・ベースの 方法では、管理者または開発者に、メッセージ内容の構成における 自由度と、 トリガー・アクションの定義における柔軟性が与えられます。トリガー の使用と同様に、 実行の頻度とコストにも注意を払う必要があります。下の例で は、トリガーを MQSeries DB2 関数とともに使用する方法を示します。 次の例では、新しい従業員が雇用されるたびにメッセージを発行する簡単な方法を 示します。NEW_EMP の登録済みインタレストとともに HR_INFO_PUB サービスに サ ブスクリプションするユーザーまたはアプリケーションはいずれも、新しい従業員 の 日付、名前、および部署が含まれたメッセージを受け取ります。 例 28: CREATE TRIGGER new_employee AFTER INSERT ON employee REFERENCING NEW AS n FOR EACH ROW MODE DB2SQL VALUES DB2MQ.MQPUBLISH('HR_INFO_PUB&', 'NEW_EMP', current date || ' ' || LASTNAME || ' ' || DEPARTMENT) ------------------------------------------------------------------------ 20.6 enable_MQFunctions enable_MQFunctions 指定されたデータベースの DB2 MQSeries 関数を使用可能にして、DB2 MQSeries 関 数を 正しく実行できることを検査します。このコマンドは、MQSeries および MQSeries AMI が インストールおよび構成されていない場合は失敗します。 権限 以下のいずれかとなります。 * sysadm * dbadm * 関数の暗黙的または明示的なスキーマ名が存在しない場合は、データベース上 の IMPLICIT_SCHEMA * スキーマ名 DB2MQ が存在する場合は、スキーマ上の CREATEIN 特権 コマンド構文 >>-enable_MQFunctions----n--database----u--userid---------------> >-----p--password----+--------+---+-------------+-------------->< '-force--' '-noValidate--' コマンド・パラメーター -n database 使用可能にするデータベースの名前を指定します。 -u userid データベースに接続するユーザー ID を指定します。 -p password ユーザー ID のパスワードを指定します。 -force 再インストール時に出された警告を無視するように指定します。 -noValidate DB2 MQSeries 関数の妥当性検査を実行しないように指定します。 例 次の例では、DB2MQ 関数が作成されます。ユーザーはデータベース SAMPLE に 接続 します。デフォルト・スキーマ DB2MQ が使用されています。 enable_MQFunctions -n sample -u user1 -p password1 使用上の注意 DB2 MQ 関数は、このコマンドによって自動的に作成されるスキーマ DB2MQ の下で 実行されます。 このコマンドの実行前に * MQ と AMI がインストールされていること、および MQSeries のバージョンが 5.1 以降で あることを確認します。 * 環境変数 $AMT_DATA_PATH が定義されていることを確認します。 * ディレクトリーを DB2PATH の cfg サブディレクトリーに変更します。 UNIX の場合: * db2set を使用して AMT_DATA_PATH を DB2ENVLIST へ追加します。 * UDF 実行に関連付けられているユーザー・アカウントが mqm グループのメン バーで あることを確認します。 * このコマンドを呼び出すユーザーが mqm グループのメンバーであることを確 認します。 注:AIX 4.2 は MQSeries 5.2 ではサポートされていません。 ------------------------------------------------------------------------ 20.7 disable_MQFunctions disable_MQFunctions 指定されたデータベースの DB2 MQSeries 関数を使用不可にします。 権限 以下のいずれかとなります。 * sysadm * dbadm * 関数の暗黙的または明示的なスキーマ名が存在しない場合は、データベース上 の IMPLICIT_SCHEMA * スキーマ名 DB2MQ が存在する場合は、スキーマ上の CREATEIN 特権 コマンド構文 >>-disable_MQFunctions----n--database----u--userid--------------> >-----p--password---------------------------------------------->< コマンド・パラメーター -n database データベースの名前を指定します。 -u userid データベースに接続するために使用するユーザー ID を指定します。 -p password ユーザー ID のパスワードを指定します。 例 次の例では、DB2MQ 関数がデータベース SAMPLE に関して使用不可になります。 disable_MQFunctions -n sample -u user1 -p password1 ------------------------------------------------------------------------ 管理ツール 部分目次 * ツールを実行前の追加のセットアップ o 21.1 Linux 上の浮動小数点スタックを使用不可にする o 21.2 日本語版 Linux 環境で必要な特定の Java レベル * コントロール・センター o 22.1 DB2 サーバー (VSE および VM 版) の管理化 o 22.2 コントロール・センターの Java 1.2 サポート o 22.3 Windows オペレーティング・システムでオンライン・ヘルプを使用 時の 「無効なショートカット」エラー o 22.4 キーボード・ショートカットの不作動 o 22.5 OS/2 版 Java コントロール・センター o 22.6 Windows オペレーティング・システム上のジャーナルで完了したジ ョブを表示する際の 「ファイル・アクセスが拒否されました」エラー o 22.7 複数サイト更新テスト接続 o 22.8 DB2 (OS/390 版) のコントロール・センター o 22.9 DB2 (OS/390 版) コントロール・センターの修正 o 22.10 「地理情報層の作成」ダイアログへの変更点 o 22.11 DB2 コントロール・センターの障害追及情報 o 22.12 UNIX ベース・システム上でのコントロール・センターの障害追及 o 22.13 OS/2 上での infopop の問題 o 22.14 jdk11_path 構成パラメーターのヘルプ o 22.15 スクリプト・センターまたはジャーナルを使用中の Solaris シス テム・エラー (SQL10012N) o 22.16 DPREPL.DFT ファイルのヘルプ o 22.17 複数のコントロール・センター・アプレットの立ち上げ o 22.18 アプレットとして実行中のコントロール・センターのオンライ ン・ヘルプ o 22.19 コントロール・センターをアプレット・モードで実行 (Windows 95) o 22.20 大きな照会結果の操作 * コマンド・センター o 23.1 コマンド・センターの対話式ページでステートメント終止符を認識 * インフォメーション・センター o 24.1 Windows オペレーティング・システムでの「無効なショートカッ ト」エラー o 24.2 Netscape がすでにオープンしているときに、Netscape Navigator の外部 Web リンクをオープンする (UNIX ベース・システム) o 24.3 インフォメーション・センター開始時の問題 * ウィザード o 25.1 データベース作成ウィザードの拡張サイズの設定 o 25.2 MQSeries 補助ウィザード o 25.3 OLE DB 補助ウィザード o 25.4 ストアード・プロシージャー・ビルダーを使用した OS/390 用の Java ストアード・プロシージャーの構築 ------------------------------------------------------------------------ ツールを実行前の追加のセットアップ ------------------------------------------------------------------------ 21.1 Linux 上の浮動小数点スタックを使用不可にする Linux 環境で glibc 2.2.x を使用する場合、コントロール・センターなどの DB2 Java GUI ツールを 実行する前に、浮動小数点スタックを使用不可にする必要があ ります。 浮動小数点スタックを使用不可にするには、次のようにして LD_ASSUME_KERNEL 環境変数を 2.2.5 に設定します。 bash$ export LD_ASSUME_KERNEL=2.2.5 ------------------------------------------------------------------------ 21.2 日本語版 Linux 環境で必要な特定の Java レベル 日本語版の Linux 環境でコントロール・センターなどの Java GUI ツールを実行す るには、 特定の IBMJava118-SDK-1.1.8-2.0.i386.rpm レベルが必要です。この特 定の Java のレベルを、www6.software.ibm.com/dl/dklx/dklx118-p からダウンロ ードすることができます。 ------------------------------------------------------------------------ コントロール・センター ------------------------------------------------------------------------ 22.1 DB2 サーバー (VSE および VM 版) の管理化 DB2 ユニバーサル・データベース バージョン 7 コントロール・センターでは、 DB2 サーバー (VSE および VM 版) データベースのサポート機能が拡張されていま す。 すべての DB2 サーバー (VSE および VM 版) データベース・オブジェクトを コントロール・センターから表示することができます。 CREATE INDEX、REORGANIZE INDEX、UPDATE STATISTICS ステートメント、 および REBIND コマンドもサポート します。 REORGANIZE INDEX および REBIND では、DB2 が DB2 サーバー (VSE およ び VM 版) ホストで稼働しているストアード・プロシージャーを必要とします。 こ のストアード・プロシージャーは、DB2 サーバー (VSE および VM 版) の VSE およ び VM 機能のコントロール・センターによって提供されます。 完全に組み込まれたコントロール・センターでは、DB2 サーバーが稼働している プ ラットフォームに関係なく、ユーザーが DB2 を管理することが許可されています。 DB2 サーバー (VSE および VM 版) オブジェクトは、DB2 ユニバーサル・データベ ース・ オブジェクトと一緒にコントロール・センターのメイン・ウィンドウに表示 されます。 オブジェクトを選択すると、これらのオブジェクトを管理するための対 応する アクションやユーティリティーが呼び出されます。 たとえば、特定のデー タベースの索引をリストし、索引の 1 つを選択し、 再編成することができます。 データベースの表をリストし統計の更新を実行したり、 表をレプリケーション・ソ ースとして定義したりすることもできます。 DB2 サーバー (VSE および VM 版) オブジェクト上で管理タスクを実行するよう コ ントロール・センターを構成する情報については、 DB2 コネクト 使用者の手引き または インストールおよび構成補足 を参照してください。 ------------------------------------------------------------------------ 22.2 コントロール・センターの Java 1.2 サポート コントロール・センターは、Java 1.2 の bi-di サポートを使用して、 アラビア語 やヘブライ語といった両方向言語をサポートします。 このサポートは、Windows NT プラットフォームでのみ提供されます。 このサポートを認識し使用するには、コントロール・センター用に Java 1.2 がイ ンストールされていなければなりません。 1. JDK 1.2.2 は DB2\bidi\NT ディレクトリー下の DB2 UDB CD で入手可能で す。 ibm-inst-n122p-win32-x86.exe はインストール・プログラムで、 ibm-jdk-n122p-win32-x86.exe は JDK 配布です。 両方のファイルをご使用の ハード・ディスクの一時ディレクトリーにコピーし、 そこからインストー ル・プログラムを実行してください。 2. これを、\java\Java12 にインストールしてください。 は DB2 のインストール・パスです。 3. JDK/JRE インストールにおいてプロンプトが出された際に、 JDK/JRE を System VM として選択しないようにしてください。 Java 1.2 が正しくインストールされた後に通常の方法で コントロール・センター を開始すると、Java 1.2 が使用されます。 Java 1.2 の使用を停止するには、\java\Java12 から JDK/JRE をアンイ ンストールするか、あるいは \java\Java12 サブディレクトリーを別の名 前に変更してください。 注:\java\Java12 と \Java12 を 混同しないようにしてくだ さい。 \Java12 は DB2 インストールの一部であり、 Java 1.2 の JDBC サポートを含みます。 ------------------------------------------------------------------------ 22.3 Windows オペレーティング・システムでオンライン・ヘルプを使用時の 「無 効なショートカット」エラー コントロール・センターのオンライン・ヘルプを使用時に、 次のようなエラーが出 される場合があります。「無効なショートカット」。 最近、新規の Web ブラウザ ーあるいは新しいバージョンの Web ブラウザーを インストールした場合、HTML お よび HTM 文書が正しいブラウザーで 関連付けられていることを確認してくださ い。 Windows ヘルプのトピック 「ファイルを開くときに起動するプログラムを変 えるには」を参照してください。 ------------------------------------------------------------------------ 22.4 キーボード・ショートカットの不作動 いくつかの言語で、UNIX ベース・システムおよび、OS/2 版のコントロール・セン ターのいくつかの キーボード・ショートカット (ホット・キー) が動作しない場合 があります。 オプションを選択する際はマウスを使用してください。 ------------------------------------------------------------------------ 22.5 OS/2 版 Java コントロール・センター コントロール ・センターは、HPFS 形式のドライブにインストールする必要があり ます。 ------------------------------------------------------------------------ 22.6 Windows オペレーティング・システム上のジャーナルで完了したジョブを表示 する際の 「ファイル・アクセスが拒否されました」エラー DB2 ユニバーサル・データベース (Windows NT 版) で、スクリプト・センターで 作成されたジョブの詳細を表示するジャーナルをオープンしようとする際に、 「フ ァイル・アクセスが拒否されました」エラーが出されます。 ジョブ状況は完了を示 します。この状況は、スクリプト・センターで作成された ジョブが START コマン ドを含むときに起こります。 これを回避するには、バッチ・ファイルおよびジョブ それ自体の両方で、 START の代わりに START/WAIT を使用してください。 ------------------------------------------------------------------------ 22.7 複数サイト更新テスト接続 バージョン 7 コントロール・センターの複数サイト更新テスト接続機能は、 ター ゲット・インスタンスのバージョンによって制限されています。 「リモート」テス ト接続機能を実行するには、ターゲット・インスタンスが少なくともバージョン 7 でなければなりません。 バージョン 6 で複数サイト更新テスト接続機能を実行す るには、 コントロール・センターをターゲット・インスタンス上にローカルに立ち 上げ、 そこから実行しなければなりません。 ------------------------------------------------------------------------ 22.8 DB2 (OS/390 版) のコントロール・センター OS/390 版 の DB2 UDB コントロール・センターでは、IBM DB2 の ライセンス・ユ ーティリティーの使用を管理することができます。 DB2 UDB (OS/390 版) の別個に 注文可能な要素であるユーティリティー機能は、 DB2 コントロール・センターで管 理する前に、ご使用の環境内でライセンス登録し、 インストールする必要がありま す。 DB2 (OS/390 版) サブシステムを構成する際にコントロール・センターで定義され る "CC390" データベースは、コントロール・センターの内部サポートとして使用さ れます。 このデータベースを変更しないでください。 DB2 (OS/390 版) バージョン 7.1 については、コントロール・センターの目次や インフォメーション・センターのタスク情報では特に記載されていませんが、 マニ ュアルでは DB2 (OS/390 版) バージョン 7.1 の機能をサポートしてます。 DB2 (OS/390 版) バージョン 6 特有の機能の多くは DB2 (OS/390 版) バージョン 7.1 にも関連しており、 また、特にバージョンについて述べていない DB2 (OS/390 版) バージョン 7.1 特有の機能が目次にいくつかあります。 コントロール・センター で DB2 (OS/390 版) バージョン 7.1 サブシステムを構成した場合、 このバージョ ンのすべての文書にアクセスすることができます。 DB2 (OS/390 版) のコントロール・センターから DDL の生成機能にアクセスし、 使用するには、以下の DDL の生成機能をインストールする必要があります。 * バージョン 5 の場合、DB2 (OS/390 版) バージョン 5 と一緒に DB2Admin 2.0 をインストールします。 * バージョン 6 の場合、DB2 (OS/390 版) バージョン 6 の DB2 管理機能の PTF として使用する 小規模なプログラミング機能強化をインストールする必 要があります。 * バージョン 7.1 の場合、DDL の生成機能は、DB2 (OS/390 版) バージョン 7.1 の DB2 管理機能と別価格の部品です。 コントロール・センターからストアード・プロシージャー・ビルダーにアクセスす ることができますが、 DB2 UDB コントロール・センターの開始前にインストール済 みである必要があります。 これは DB2 アプリケーション開発クライアントの部品 です。 DB2 (OS/390 版) サブシステムをワークステーション上で直接カタログ化するに は、 クライアント構成アシスタント・ツールを使用するよう選択してください。 1. ソース・ページで、「データベースへの接続を手動で構成する」ラジオ・ボタ ンを 指定します。 2. プロトコル・ページで、適切な通信情報を完成させます。 3. データベース・ページで、「データベース名」フィールドにサブシステム名を 指定します。 4. ノード・オプション・ページで、 「(オプション) ノード・オプションの構成 」チェック・ボックスを選択します。 5. 「オペレーティング・システム」フィールドでリストから MVS/ESA、OS/390 を選択します。 6. 「終了」をクリックして構成を完了します。 ゲートウェイ・マシンを使用して DB2 (OS/390 版) サブシステムをカタログ化する には、 ゲートウェイ・マシンで上記 1-6 のステップを行い、その後に以下を行っ てください。 1. クライアント・マシンで、コントロール・センターを開始します。 2. 「システム」フォルダー上で右クリックし、追加を 選択します。 3. 「システムの追加」ダイアログで、「システム名」フィールドに ゲートウェ イ・マシン名を入力します。 4. DB2DAS00 を「リモート・インスタンス」フィールドに 入力します。 5. TCP/IP プロトコルの場合、プロトコル・パラメーターで、「ホスト名」フィ ールドに ゲートウェイ・マシンのホスト名を指定します。 6. 523 を「サービス名」フィールドに 入力します。 7. 「了解」をクリックしてシステムを追加します。 「システム」フォルダーに ゲートウェイ・マシンが追加されているのがご覧になれます。 8. ゲートウェイ・ゲートウェイ名を展開します。 9. 「インスタンス」フォルダー上で右クリックし、追加を 選択します。 10. 「インスタンスの追加」ダイアログで「最新表示」を クリックして、ゲート ウェイ・マシンで使用可能なインスタンスをリストします。 ゲートウェイ・ マシンが Windows NT システムである場合は、DB2 (OS/390 版) サブシステム はインスタンス DB2 の下にカタログ化されるでしょう。 11. インスタンスを選択します。プロトコル・パラメーターがこのインスタンス用 に自動的に埋められます。 12. 「了解」をクリックしてインスタンスを追加します。 13. 「インスタンス」フォルダーをオープンして、追加したばかりのインスタンス を表示します。 14. インスタンスを展開します。 15. 「データベース」フォルダー上で右クリックし、 追加を選択します。 16. 「最新表示」プッシュボタンをクリックして、ゲートウェイ・マシン上の ロ ーカル・データベースを表示します。「データベースの追加」ダイアログで DB2 サブシステムを追加している場合は、 「データベース名」フィールドに サブシステム名を入力します。 オプション: サブシステム (またはデータベ ース) のローカル別名を入力します。 17. 「了解」をクリックする。 これで、サブシステムをコントロール・センターに正常に追加しました。 データベ ースをオープンすると、DB2 (OS/390 版) サブシステムが表示されます。 セクション「コントロール・センター 390」の最初の段落に次の記載があります。 OS/390 版 DB2 UDB コントロール・センターでは、IBM DB2 のライセンス・ユーティリティーの 使用を管理することができます。OS/390 版 DB2 UDB の個別に注文可能な機能の要素である ユーティリティー機能は、DB2 コントロール・センターで管理する前に、ご使用の環境内で ライセンス登録し、インストールする必要があります。 このセクションは次のように変更されました。 OS/390 版 DB2 コントロール・センターでは、IBM DB2 のライセンス・ユーティリティーの 使用を管理することができます。個別に注文可能な製品の要素であるユーティリティー機能は、 DB2 コントロール・センターで管理するためには、ご使用の環境内でライセンス登録し、 インストールする必要があります。 ------------------------------------------------------------------------ 22.9 DB2 (OS/390 版) コントロール・センターの修正 バージョン 7 で DB2 UDB コントロール・センターを使用してこれらのサブシステ ムを管理するには、 DB2 (OS/390 版) バージョン 5 および DB2 (OS/390 版) バー ジョン 6 の 390 Enablement 機能に APAR PQ36382 を 適用する必要があります。 この修正なしでは、これらのサブシステムに対してユーティリティーを実行するた めに、 バージョン 7 で DB2 UDB コントロール・センターを使用することはできま せん。 APAR は以下の FMID に適用されます。 DB2 for OS/390 Version 5 390 Enablement: FMID JDB551D DB2 for OS/390 Version 6 390 Enablement: FMID JDB661D ------------------------------------------------------------------------ 22.10 「地理情報層の作成」ダイアログへの変更点 「<<」および「>>」ボタンが、「地理情報層の作成」ダイアログから除去されまし た。 ------------------------------------------------------------------------ 22.11 DB2 コントロール・センターの障害追及情報 概説およびインストールのブックの 「コントロール・センター インストールおよ び構成」の章の 「トラブルシューティング情報」というセクションで、コントロー ル・センターをアプレットとして 起動中に問題があった場合、クライアント・ブラ ウザーの CLASSPATH をコマンド・ウィンドウから 設定解除するよう記載されてい ます。 このセクションではまた、ブラウザーをコマンド・ウィンドウから開始する よう 述べています。ただし、ブラウザー開始のコマンドは提供されていません。 Internet Explorer を立ち上げるには、start iexplore と入力し、 Enter を押し てください。Netscape を立ち上げるには、start netscape と入力し、 Enter を押 してください。これらのコマンドは、ブラウザーが PATH に設定されていると想定 しています。 設定されていない場合は、PATH に追加するか、あるいはブラウザー の インストール・ディレクトリーに移動し、start コマンドを再実行してくださ い。 ------------------------------------------------------------------------ 22.12 UNIX ベース・システム上でのコントロール・センターの障害追及 UNIX ベース・システム上でコントロール・センターを開始できない場合は、 JAVA_HOME 環境変数を Java のインストール先に位置付けるよう設定してくださ い。 * Java が /usr/jdk118 の下にインストールされている場合は、JAVA_HOME を /usr/jdk118 にします。 * sh、ksh、または bash シェルの場合: export JAVA_HOME=/usr/jdk118. * csh または tcsh シェルの場合: setenv JAVA_HOME /usr/jdk118 ------------------------------------------------------------------------ 22.13 OS/2 上での infopop の問題 OS/2 上でコントロール・センターを実行する際、画面解像度 1024x768 で 256 色 を使用し、 「ワークプレース・シェル・パレットを考量する」がチェックされてい ると、 現行ウィンドウの枠に広がる infopop が、黒の背景に黒のテキストで表示 される場合があります。 この問題を修正するには、画面解像度の設定を 256 色以 上にするか、 あるいは「ワークプレース・シェル・パレットを考量する」を未チェ ックにしてください。 ------------------------------------------------------------------------ 22.14 jdk11_path 構成パラメーターのヘルプ コントロール・センターのヘルプで、Java 開発キット 1.1 インストール・パス (jdk11_path) 構成パラメーターに関する 1 行 (副見出し適用の下) が欠落してい ます。 適用の下の完全なリストは次のようになります。 * データベース・サーバー (ローカルおよびリモート・クライアント) * クライアント * データベース・サーバー (ローカル・クライアント) * 区分データベース・サーバー (ローカルおよびリモート・クライアント) * サテライト・データベース・サーバー (ローカル・クライアント) ------------------------------------------------------------------------ 22.15 スクリプト・センターまたはジャーナルを使用中の Solaris システム・エラ ー (SQL10012N) Solaris システムをスクリプト・センターまたはジャーナルから選択した場合、 以 下のエラーが起きる場合があります。 SQL10012N - 指定されたライブラリー "/udbprod/db2as/sqllib/function/unfenced/ db2scdar!ScheduleInfoOpenScan" のロード中に予期しないオペレーティング・ システム・エラーを受け取りました。SQLSTATE=42724 これは、Solaris ランタイム・リンカーのバグによるものです。 この問題を訂正す るには、次のパッチを適用します。 105490-06 (または 107733) for Solaris 2.6 ------------------------------------------------------------------------ 22.16 DPREPL.DFT ファイルのヘルプ コントロール・センターで、「ツール設定」ノートブックのレプリケーション・ペ ージの ヘルプのステップ 5d で、次のような記載があります。 ファイルをコントロール・センター用の作業ディレクトリー (たとえば SQLLIB\BIN) に保管し、システムでデフォルト・ファイルとして 使用できます。 ステップ 5d は以下のように訂正されます。 ファイルをコントロール・センター用の作業ディレクトリー (たとえば SQLLIB\CC) に保管し、システムでデフォルト・ファイルとして 使用できます。 ------------------------------------------------------------------------ 22.17 複数のコントロール・センター・アプレットの立ち上げ 同じマシンで複数のコントロール・センター・アプレットを同時に立ち上げること はできません。 この制限は、サポートされている任意のブラウザー上で実行してい るコントロール・センター・アプレットに適用されます。 ------------------------------------------------------------------------ 22.18 アプレットとして実行中のコントロール・センターのオンライン・ヘルプ コントロール・センターがアプレットとして起動中に、 F1 キーは infopops を持 つウィンドウまたはノートブックでのみ機能します。 F1 キーを押して、以下のコンポーネントで infopops を 表示することができま す。 * DB2 ユニバーサル・データベース (OS/390 版) * ウィザード コントロール・センターの残りのコンポーネントでは、 F1 キーにより何のヘルプ も表示されません。 その他のコンポーネントのヘルプを表示するには、「ヘルプ」 プッシュボタンを 使用するか、あるいはヘルプ・プルダウン・メニューを使用して ください。 ------------------------------------------------------------------------ 22.19 コントロール・センターをアプレット・モードで実行 (Windows 95) スクリプト・センターを開こうとする際に、無効なユーザー ID または パスワード を指定すると、失敗する場合があります。 コントロール・センターにサインオンす る場合は、有効なユーザー ID およびパスワードを入力するよう注意してくださ い。 ------------------------------------------------------------------------ 22.20 大きな照会結果の操作 ユーザーは、いくつもの行を返す照会を簡単に作成できます。 ただし、実際に返さ れる行数をユーザーが予測することは容易ではありません。 数千 (または数百万) の行を返す可能性のある照会には、以下の 2 つの問題があります。 1. 結果の検索に時間がかかる可能性がある。 2. 結果を保管するために、大量のクライアント・メモリーが必要になる可能性が ある。 このプロセスを簡単にするために、DB2 は大きな結果セットを分割します。 DB2 は、一度に 1 つのチャンクの照会結果を検索して表示します。 この結果、以下のようになります。 1. 最初の照会のチャンクを残りのチャンクの検索中に表示できるため、表示時間 が削減されます。 2. 1 つのチャンクの照会結果のみが指定の時刻にクライアントに保管されるた め、 クライアントのメモリー所要量が削減されます。 メモリー内の照会結果の行数を制御するには 1. 「ツール設定」ノートブックの「一般」ページをオープンします。 2. 「最大サイズ」セクションで、以下を選択します。 o 「サンプル・コンテンツ」ウィンドウに表示される結果行の数を制限す るための 「サンプル・コンテンツ」。 結果セットのチャンク・サイズ (行数) を入力フィールドに指定してください。 o コマンド・センターの「照会結果」ページに表示される結果行の数を制 限するための 「コマンド・センター」。 結果セットのチャンク・サイ ズ (行数) を入力フィールドに指定してください。 「サンプル・コンテンツ」ウィンドウまたはコマンド・センターの「照会結果」ペ ージの 照会の結果を操作すると、照会でメモリーに保持されている行数が 「メモ リー内の行」フィールドに示されます。 この数が、最大サイズ・セットを超えるこ とはありません。 結果セットの次のチャンクを検索するには、「次へ」をクリック します。 「次へ」が非アクティブであれば、最後の結果セットに到達したというこ とです。 ------------------------------------------------------------------------ コマンド・センター ------------------------------------------------------------------------ 23.1 コマンド・センターの対話式ページでステートメント終止符を認識 コマンド・センターの対話式ページで、ツール設定で指定されたステートメント終 了文字を 認識するようになりました。ステートメント終了文字が指定されていない 場合は、 デフォルトで改行文字が使用されます。 ------------------------------------------------------------------------ インフォメーション・センター ------------------------------------------------------------------------ 24.1 Windows オペレーティング・システムでの「無効なショートカット」エラー インフォメーション・センターを使用する場合、 次のようなエラーが出される場合 があります。「無効なショートカット」。最近、新規の Web ブラウザーあるいは新 しいバージョンの Web ブラウザーを インストールした場合、HTML および HTM 文 書が正しいブラウザーで 関連付けられていることを確認してください。 Windows ヘルプのトピック 「ファイルを開くときに起動するプログラムを変えるには」を参 照してください。 ------------------------------------------------------------------------ 24.2 Netscape がすでにオープンしているときに、Netscape Navigator の外部 Web リンクをオープンする (UNIX ベース・システム) Netscape Navigator がすでに開いて、ローカル DB2 HTML ドキュメントか、外部の Web サイトを 表示している場合、インフォメーション・センターから外部の Web サイトを開こうとすると Netscape でエラーが発生します。エラーは次のように表 示されます。「Netscape は <外部サイト> というファイルまたはディレクトリーを 見つけることができません。」 この問題に対処するには、外部の Web サイトを開く前に 開いている Netscape ブ ラウザーを閉じます。 Netscape が再起動し、外部の Web サイトが表示されます。 このエラーはすでに開いている Netscape で、ローカルの DB2 HTML ドキュメント を開こうとしても 起こりませんのでご注意ください。 ------------------------------------------------------------------------ 24.3 インフォメーション・センター開始時の問題 いくつかのシステムで、スタート・メニュー、ファースト・ステップ、または db2ic コマンドを使用してインフォメーション・センターを 呼び出すと、開始が遅 い場合があります。この問題が発生した場合は、コントロール・センターを開始 し、 ヘルプ --> インフォメーション・センターを開始します。 ------------------------------------------------------------------------ ウィザード ------------------------------------------------------------------------ 25.1 データベース作成ウィザードの拡張サイズの設定 データベース作成ウィザードを使用して、新規データベースの ユーザー表スペース (カタログまたは一時表以外) の拡張サイズおよび プリフェッチ・サイズ・パラメ ーターを設定することができます。 この機能は、ウィザードの「ユーザー表」ペー ジのユーザー表スペースに 少なくとも 1 つのコンテナーが含まれている場合にの み使用できます。 ------------------------------------------------------------------------ 25.2 MQSeries 補助ウィザード DB2 バージョン 7.2 では新しい MQSeries Assist ウィザードが利用できます。 こ のウィザードは、 DB2 MQSeries 関数を使って MQSeries キューから読み取る表関 数を作成します。 DB2 MQSeries 関数も バージョン 7.2 に新規に追加されたもの です。このウィザードは、 それぞれの MQSeries メッセージを、ユーザーの指定に よって、区切られたストリング または固定長列として処理できます。処理された表 関数はユーザーの指定にしたがって構文解析し、 それぞれの MQSeries メッセージ をその表関数の行として返します。このウィザードでは、 表関数の上部に視点を作 成したり、MQSeries メッセージや表関数の結果をプレビューする こともできま す。このウィザードは、ストアード・プロシージャー・ビルダーまたは データウェ アハウス・センターから立ち上げることができます。 このウィザードの要件は以下の通りです。 * MQSeries バージョン 5.2 * MQSeries アプリケーション・メッセージング・インターフェース (AMI) * DB2 MQSeries 関数 上記の要件の詳細は、MQSeries を参照してください。 サンプルおよび MQSeries Assist ウィザード・チュートリアルについては、 http://www.ibm.com/software/data/db2/udb/ide のチュートリアル・セクションを 参照してください。 ------------------------------------------------------------------------ 25.3 OLE DB 補助ウィザード このウィザードのガイドにしたがうと、Microsoft OLE DB 標準をサポートする別の データベース・プロバイダーのデータを読み取る表関数を作成することが できま す。オプションとして、OLE DB 表機能で読み取られるデータで DB2 表を 作成する こと、および OLE DB 表機能の視点を作成することが できます。このウィザード は、ストアード・プロシージャー・ビルダーまたは データウェアハウス・センター から立ち上げることができます。 このウィザードの要件は以下の通りです。 * OLE DB プロバイダー (Oracle、Microsoft SQL Server など) * OLE DB サポート関数 サンプルおよび OLE DB 補助ウィザード・チュートリアルについては、 http://www.ibm.com/software/data/db2/udb/ide のチュートリアル・セクションを 参照してください。 ------------------------------------------------------------------------ 25.4 ストアード・プロシージャー・ビルダーを使用した OS/390 用の Java ストア ード・プロシージャーの構築 DB2 ストアード・プロシージャー・ビルダーは、OS/390 用の Java ストアード・プ ロシージャーの 構築をサポートするようになりました。 要件: * 開始する前に、DB2 (OS/390 版) 上でセットアップ・タスクをいくつか実行す る必要があります。情報については、 http://www-4.ibm.com/software/data/db2/os390/sqlproc を参照してくださ い。 * 分散デバッガーを使用する予定である場合、OS/390 上の WLM アドレス・スペ ースで RUNOPTS for TEST および TCP/IP アドレスを指定する必要がありま す。 * コレクション ID は、OS/390 上の JDBC ドライバーのバインディング時に使 用されるものと 一致している必要があります。 * DB2SPB.ini ファイルを変更して、以下の項目を組み込みます。 SPOPTION_WLM_JAVA_ENVIRONMENT = WLMENVJ SPOPTION_JAVAPROC_BUILDER = SYSPROC.DSNTJSPP SPOPTION_BIND_OPTIONS_JAVA = ACT(REP) SPOPTION_COLLIDJ = DSNJDBC SPOPTION_HPJ_COMPILE_OPTIONS_DEBUG = -g SPOPTION_HPJ_COMPILE_OPTIONS = -nog -O ストアード・プロシージャー・ビルダーを使用して OS/390 用の Java ストアー ド・プロシージャーを作成するには: 1. 「Java ストアード・プロシージャーの挿入」ウィザードを開きます。 a. プロジェクト・ツリーの OS/390 データベース接続の下で、ストアー ド・プロシージャー・フォルダーを右クリックします。 b. 「挿入 -> ウィザードを使用した Java ストアード・プロシージャー」 を選択します。ウィザードが開きます。 2. 次のように OS/390 オプションを指定してウィザードを完了します。 o コレクション ID は、JDBC ドライバーが OS/390 でバインドされたとき に BIND PACKAGE(collid) で指定されたものと同じでなければなりませ ん。 o Java パッケージは固有でなければなりません。 3. 「了解」をクリックします。ストアード・プロシージャーが作成され、プロジ ェクト・ツリーにリストされます。 4. ストアード・プロシージャーを右クリックして、「ビルド」を選択します。 ------------------------------------------------------------------------ ビジネス・インテリジェンス 部分目次 * ビジネス・インテリジェンス・チュートリアル o 26.1 改訂されたビジネス・インテリジェンス・チュートリアル * DB2 ユニバーサル・データベース クイック・ツアー * データウェアハウスセンター 管理の手引き o 28.1 入手可能な更新 o 28.2 ウェアハウス・サーバーの機能強化 o 28.3 OS/390 エージェントを使用して Trillium バッチ・システム JCL を実行 o 28.4 データウェアハウスセンターの 2 つの新規サンプル・プログラム o 28.5 更新された DB2 ウェアハウス・マネージャーによる ETI.Extract (R) 移行プログラム の管理 o 28.6 共通ウェアハウス・メタデータ交換 (CWMI) を使用したインポート およびエクスポート + 28.6.1 入門 + 28.6.2 メタデータのインポート + 28.6.3 インポート・ユーティリティー実行後のメタデータの更新 + 28.6.4 メタデータのエクスポート o 28.7 タグ言語メタデータ・インポート / エクスポート・ユーティリテ ィー + 28.7.1 キー定義 + 28.7.2 ステップおよび処理のスケジュール o 28.8 SAP ステップ情報 + 28.8.1 SAP ステップの出力パラメーターを指定した場合の遅延 + 28.8.2 入力パラメーター値は SAP ステップ間で共用されています + 28.8.3 SAP ステップ実行時のアクセス違反エラー o 28.9 SAP コネクター情報 + 28.9.1 SAP コネクター・インストール上の制約事項 + 28.9.2 GetDetail BAPI のパフォーマンス * DB2 OLAP スターター・キット o 29.1 OLAP Server Web サイト o 29.2 サポートされるオペレーティング・システム・サービス・レベル o 29.3 UNIX での DB2 OLAP スターター・キットを完了する o 29.4 Solaris 操作環境用の追加構成 o 29.5 すべてのオペレーティング・システム用の追加構成 o 29.6 ODBC を OLAP スターター・キット用に構成 + 29.6.1 UNIX システム上でのデータ・ソースの構成 + 29.6.1.1 環境変数の構成 + 29.6.1.2 odbc.ini ファイルの編集 + 29.6.1.3 データ・ソースの odbc.ini ファイルへの追加 + 29.6.1.4 DB2 の ODBC 設定の例 + 29.6.1.5 Oracle の ODBC 設定の例 + 29.6.2 UNIX システムでの OLAP メタデータ・カタログの構成 + 29.6.3 Windows システムでのデータ・ソースの構成 + 29.6.4 Windows システムでの OLAP メタデータ・カタログの構成 + 29.6.5 データ・ソースを構成したら o 29.7 OLAP スターター・キット・デスクトップからのログイン + 29.7.1 スターター・キットのログインの例 o 29.8 OLAP スターター・キットのサンプル・データベースを手動で 作成 および構成する o 29.9 アプリケーションを OLAP スターター・キット・バージョン 7.2 に移行 o 29.10 既知の問題および制限事項 o 29.11 OLAP スプレッドシート・アドイン EQD ファイルの欠落 * 情報カタログ・マネージャー管理の手引き o 30.1 情報カタログ・マネージャー初期設定ユーティリティー + 30.1.1 + 30.1.2 ライセンス交付の問題 + 30.1.3 インストールの問題 o 30.2 情報カタログ・マネージャーの機能強化 o 30.3 情報カタログ・マネージャー と Sybase の Windows 環境での非互 換性 o 30.4 DB2 バージョン 7 情報カタログ・マネージャーによる DB2 バージ ョン 5 情報カタログへのアクセス o 30.5 情報カタログのセットアップ o 30.6 別の製品とのメタデータの交換 o 30.7 flgnxoln コマンドでのメタデータの交換 o 30.8 MDISDGC コマンドでのメタデータの交換 o 30.9 プログラムの呼び出し * 情報カタログ・マネージャー・プログラミングの手引きおよび解説書 o 31.1 情報カタログ・マネージャー理由コード * 情報カタログ・マネージャー 使用者の手引き * 情報カタログ・マネージャー: オンライン・メッセージ o 33.1 FLG メッセージへの修正 + 33.1.1 メッセージ FLG0260E + 33.1.2 メッセージ FLG0051E + 33.1.3 メッセージ FLG0003E + 33.1.4 メッセージ FLG0372E + 33.1.5 メッセージ FLG0615E * 情報カタログ・マネージャー: オンライン・ヘルプ o 34.1 Web 用情報カタログ・マネージャー * DB2 ウェアハウス・マネージャー インストールの手引き o 35.1 入手できる「DB2 ウェアハウス・マネージャー・インストールの手 引き」の更新 o 35.2 ウェアハウス・トランスフォーマーのソフトウェア要件 * 照会パトローラー管理の手引き o 36.1 DB2 照会パトローラー・クライアントの分離コンポーネント o 36.2 ノード状況の変更 o 36.3 dqpmigrate を使用した DB2 照会パトローラーのバージョン 6 か らの移行 o 36.4 照会管理の使用可能化 o 36.5 制御表の表スペースのロケーション o 36.6 dqpstart コマンドの新しいパラメーター o 36.7 iwm_cmd コマンドの新しいパラメーター o 36.8 新しいレジストリー変数: DQP_RECOVERY_INTERVAL o 36.9 Query Administrator の開始 o 36.10 ユーザー管理 o 36.11 ジョブ・キューの作成 o 36.12 コマンド行インターフェースの使用 o 36.13 クエリー・イネーブラー注意事項 o 36.14 ブランク列ページを返すことができる DB2 クエリー・パトローラ ー・トラッカー o 36.15 照会パトローラーおよびレプリケーション・ツール o 36.16 クエリー・パトローラーのパフォーマンス改善 o 36.17 バージョン 6 で作成された照会パトローラー・ユーザー用の EXECUTE 特権の消失 o 36.18 照会パトローラーの制約事項 o 36.19 付録 B. DB2 照会パトローラー・クライアントのトラブルシュー ティング ------------------------------------------------------------------------ ビジネス・インテリジェンス・チュートリアル ------------------------------------------------------------------------ 26.1 改訂されたビジネス・インテリジェンス・チュートリアル フィックスパック 2 には、バージョン 7.1 に存在したさまざまな問題が訂正され た、 改訂版のビジネス・インテリジェンス・チュートリアルとデータウェアハウス センター・ サンプル・データベースが組み込まれています。改訂されたデータウェ アハウスセンター・ サンプル・データベースを適用するには、以下を行ってくださ い。 サンプル・データベースをまだインストールしていない場合は、「ファースト・ス テップ」 ランチ・パッドを使用して新しいサンプル・データベースを作成します。 「ス タート」をクリックし、「プログラム」-->「IBM DB2」-->「ファースト・ス テップ」を 選択してください。 以前にサンプル・データベースをインストールした場合は、 サンプル・データベー ス DWCTBC、TBC_MD、および TBC をドロップしてください。 保存したいデータをサ ンプル・データベースに追加してあった場合は、ドロップする前に バックアップを 取っておいてください。3 つのサンプル・データベースをドロップするには、 次の ようにします。 1. DB2 コマンド・ウィンドウをオープンするために、「スタート」を クリック し、「プログラム --> IBM DB2 --> コマンド・ウィンドウ」を 選択します。 2. DB2 コマンド・ウィンドウで、次の 3 つのコマンドをそれぞれ入力して、 Enter を押します。 db2 drop database dwctbc db2 drop database tbc_md db2 drop database tbc 3. DB2 コマンド・ウィンドウをクローズします。 4. 「ファースト・ステップ」ランチ・パッドを使用して新しいサンプル・データ ベースを 作成します。「スタート」をクリックし、 「プログラム --> IBM DB2 --> ファースト・ステップ」を 選択してください。 ------------------------------------------------------------------------ DB2 ユニバーサル・データベース クイック・ツアー DB2 Linux または Linux/390 版ではクイック・ツアーは利用できません。 クイック・ツアーは、少ないシステム・フォントでも実行できるよう最適化されて います。 OS/2 のクイック・ツアーを正しく表示できるよう、お使いの Web ブラウ ザーのフォント・サイズを 調整する必要がある場合があります。 フォント・サイ ズの調整についての情報は、お使いの Web ブラウザーのヘルプをご参照ください。 クイック・ツアーを正しく表示するには (SBCS のみ)、8 ポイントの Helv フォン トのご使用をお勧めします。 日本語および韓国語をご利用のお客さまは、8 ポイン トの明朝フォントのご使用をお勧めします。 フォントの設定を変更する際は、「プ リファレンス」ウィンドウの「フォント」ページで 「デフォルト・フォントを使 用、ドキュメント指定のフォントを上書きする」のオプションが 選択されているこ とを確認してください。 場合によっては、クイック・ツアーが後に 2 つ目のブラウザー・ウィンドウを 立 ちあげます。この問題を解決するには、クイック・ツアーをクローズし、 以下の 3.4, Netscape を立ち上げようとした場合のエラー・メッセージ のステップにした がってください。 クイック・ツアーを立ち上げているときに、以下と同様の JavaScript エラーを受 信する場合があります。 ファイル:/C/Program Files/SQLLIB/doc/html/db2qt/index4e.htm、行 65: ウィンドウが定義されていません。 この JavaScript エラーは、クイック・ツアーが立ち上がった後、「クイック・ツ アーの 立ち上げ」ページ、index4e.htm が自動的に閉じるのを妨げます。 index4e.htm が 表示されているブラウザー・ウィンドウを閉じると、「クイック・ ツアーの立ち上げ」ページを 閉じることができます。 「変更された点」セクションの「データ管理」トピックでは、 「オンデマンド・ロ グ保存サポート」が、バージョン 7.1 でサポートされていると記述されています。 これはあてはまりません。 また、次の記述もあります。 ログ・ファイルのサイズが 4GB から 32GB に増えました。 この文は次のように訂正してください。 アクティブ・ログ・スペースの合計が 4GB から 32GB に増えました。 DB2 データ・リンク・マネージャーの記述をしているセクションには、 次の内容の 文があります。 また、NetBackup を使用したバックアップとリストア用に、 Veritas XBSA インターフェースの使用をサポートするようになりました。 この文は次のように訂正してください。 また、ファイル保存とリストアのために XBSA インターフェースをサポートする ようになりました。XBSA インターフェースをサポートする記憶管理機能には、 Legato NetWorker および Veritas NetBackup が含まれます。 ------------------------------------------------------------------------ データウェアハウスセンター 管理の手引き ------------------------------------------------------------------------ 28.1 入手可能な更新 「データウェアハウスセンター 管理の手引き」はフィックスパック 4 の一部とし て更新され、最新の PDF は 、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンライン でダウンロードできます。 これらの注釈の情報は、 更新された解説書への追加情 報です。 更新された資料は、 すべて CD でも入手できます。 この CD は、PTF 番 号 U478862 を使用して、DB2 サービス を介して注文できます。 DB2 サービスへの 連絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 28.2 ウェアハウス・サーバーの機能強化 フィックスパック 5 では、ウェアハウス・サーバーに対して 次の改善が行われま した。 構成パラメーターの更新 サーバーは、空ストリングへのサービス名というような重要な構成パラメータ ーの 更新を行わなくなりました。 メッセージ DWC7906 の更新 メッセージ DWC7906 には、従属関係問題を報告する際の先行ステップの名前 が 含まれるようになりました。 トレースの変更点 追加の低レベル (レベル 5) トレースが、データウェアハウスセンター・ 制 御データベース・アクセスのフィックスパック 4 に追加されました。 通常、 このトレースは、IBM 担当者が要求した場合にのみオンにします。 フィック スパック 5 では、サーバーは、DDD トレース・レベルが 5 に設定されたとき に 新規制御データベース・トレースのみを出力します。 フィックスパック 4 では、ウェアハウス・サーバーに対して次の改善が行われまし た。 エージェント・シャットダウン時のエラー (rc = 7170)、2 次 rc = 6106 このエラーは、サーバーがシャットダウン要求を出す前にエージェントがシャ ットダウンされた 場合に発生します。 このエラーは、従来必ずしもレポート されたわけではなく、 今後はレポートされません。 ログ・ファイルに書き込まれるシステム・メッセージおよびコメント ユーザー定義のプログラムが実行を完了すると、システム・メッセージおよび コメントが ウェアハウス・ログ・ファイルに書き込まれます。これらのメッ セージは、今回から 「進行中の作業」表示ウィンドウに表示されるようにな りました。 増分コミットが正しく機能するようになりました ステップがターゲット・データベースを取り込み中であり、 増分コミットの 値が 0 より大きい場合は、 エラー前にコミットされた結果はすべてターゲッ ト・データベースに出力されます。 フィックスパック 4 より前では、結果の 一部が削除されていました。 トレース・レベル・エラー修正後は、ウェアハウス・サーバーを 稼働できません ウェアハウス・サーバーは、ロギング・ディレクトリーの名前をシステム 環 境変数 VWS_LOGGING から検索します。VWS_LOGGING が欠落しているか、 無効 なディレクトリー名を指している場合は、代わりに TEMP システム環境変数が 使用されます。TEMP が欠落しているか、無効なディレクトリー名を指してい る場合は、 ロガー・トレース・ファイルが c:\ に書き込まれます。これによ ってフィックスパック 4 より前の バージョンのエラーが修正されます。この エラーは、レジストリーから無効なロギング・ ディレクトリー名を検索する ために発生していました。 ストアード・プロシージャーのコミット・コマンドへの 追加サポート ウェアハウス・サーバーは、ユーザー定義のストアード・プロシージャーが実 行された後で、 コミット・コマンドをエージェントに送信します。 拡張されたサンプル・コンテンツ ウェアハウス・サーバーは、エージェント・シャットダウン・メッセージを待 つ必要が なくなったので、サンプル・コンテンツがより効率的に実行されま す。 トレース・ログ・ファイルのサイズが制御できるようになりました 新しいシステム環境変数 VWS_SERVER_LOG_MAX を使用することによって、 ト レース・ログ・ファイルのサイズを制御できるようになりました。 VWS_SERVER_LOG_MAX の値 が 0 より大きい値に設定された場合は、ログ・フ ァイルが、VWS_SERVER_LOG_MAX の値によって 示されるバイト数にほぼ等しい サイズに達すると、ウェアハウス・サーバーはログ・ファイルの 拡大を停止 します。ログ・ファイルが最大サイズに達すると、最新のトレース・ログ項目 が保存され、 最も古い項目が上書きされます。 広範なトレースを実行する場 合は、VWS_SERVER_LOG_MAX=150000000 (150M) は、適切なサイズです。 ------------------------------------------------------------------------ 28.3 OS/390 エージェントを使用して Trillium バッチ・システム JCL を実行 OS/390 エージェントは、データウェアハウスの「メタデータのインポート」ノート ブックから 作成された Trillium バッチ・システム・ユーザー定義プログラムをサ ポートするようになりました。 以前は、Trillium バッチ・システム JCL ファイル を実行するには、 Windows、AIX、または Solaris 操作環境エージェントを使用し て、 JCL をリモート側で実行する必要がありました。このアップデートにより、 JCL を OS/390 エージェントで開始できるようになりました。 「メタデータのインポート」ノートブックを使用して Trillium バッチ・システム 用に Trillium バッチ・システム・ユーザー定義プログラムを作成する場合、 JCL が同じシステムにエージェントとしてある場合でも、 リモート・ホストを OS/390 エージェントのための接続用に選択しなければなりません。 リモート・ホスト接続 用にパラメーターをすべて入力してください。 Trillium バッチ・システム・ユーザー定義プログラムのステップを作成したら、 Trillium バッチ・システム・ステップのプロパティー・ノートブックを使用して、 エージェント・サイトを、使用する OS/390 エージェント・サイトに変更します。 JCL や出力エラー・ファイルの名前にブランクや括弧が含まれている場合は、 それ らを スクリプト または JCL、または出力エラー・ファイルのフィールドに 入力す る際に、二重引用符で囲む必要があります。 ------------------------------------------------------------------------ 28.4 データウェアハウスセンターの 2 つの新規サンプル・プログラム EEE_Load および File_Wait の 2 つの新規サンプル・プログラムがデータウェアハ ウスセンターに 組み込まれました。EEE_Load program を使用すると、ご使用のデ ータウェアハウジング・プロセス内で DB2 UDB EEE オートローダー・プログラムを 実行するステップを作成することができます。 File_Wait プログラムを使用する と、あるファイルを待機し、そのファイルが使用可能になったときに プロセス内の 次のステップを実行するステップを作成することができます。 これらのプログラム について詳しくは、データウェアハウスセンター・サーバーが インストールされて いるシステムの、 ..\SQLLIB\TEMPLATES\SAMPLES ディレクトリーにある README.UDP ファイルを参照してください。 ------------------------------------------------------------------------ 28.5 更新された DB2 ウェアハウス・マネージャーによる ETI.Extract(R) 移行プ ログラム の管理 DB2 ウェアハウス・マネージャーによる ETI.Extract(R) 移行プログラムの管理 は、 更新され、オンラインで http://www.ibm.com/software/data/db2/udb/winos2unix/support から入手できま す。 ------------------------------------------------------------------------ 28.6 共通ウェアハウス・メタデータ交換 (CWMI) を使用したインポートおよびエク スポート 28.6.1 入門 タグ言語ファイルの既存のサポートに加えて、データウェアハウスセンターは、 共 通ウェアハウス・メタモデル (CWM) 標準に準拠する XML ファイルとの間で メタデ ータをインポートおよびエクスポートできるようになりました。 これらの CWM 準 拠 XML ファイルのインポートおよびエクスポートは、 共通ウェアハウス・メタデ ータ交換 (CWMI) と 呼ばれます。 次のデータウェアハウスセンター・オブジェクトからメタデータをインポートおよ び エクスポートできます。 * ウェアハウス・ソース * ウェアハウス・ターゲット * プロセス、ソース、ターゲット、ステップ、 およびカスケード関係を含むサ ブジェクト・エリア * ユーザー定義プログラム CWMI インポートおよびエクスポート・ユーティリティーは現在、次の種類のメタデ ータを サポートしていません。スケジュール、ウェアハウス・スキーマ、ユーザ ー、およびグループ。 データウェアハウスセンターは、インポートおよびエクスポート・プロセスの 結果 を含むログ・ファイルを作成します。一般にログ・ファイルは、 x:\program files\sqllib\logging ディレクトリー (x: は DB2 が インストールされているド ライブ) または VWS_LOGGING 環境変数として指定された ディレクトリーに作成さ れます。ログ・ファイルはプレーン・テキストです。 テキスト・エディターで表示 することができます。 28.6.2 メタデータのインポート メタデータは、データウェアハウスセンターから、またはコマンド行から インポー トすることができます。 インポート・プロセスを通じて作成された新しいオブジェクトは、デフォルトの デ ータウェアハウスセンター・セキュリティー・グループに割り当てられます。 詳し くは、リリース情報の「インポート後のセキュリティーの更新」を 参照してくださ い。 ステップに関するメタデータをインポートしている場合は、複数のファイルを ステ ップに関連付けることができます。ステップに関するメタデータは XML ファイルに 保管されますが、ステップは BLOB として保管された関連データを持っている場合 が あります。BLOB メタデータは XML ファイルと同じファイル名を持っています が、 これは番号の拡張子の付いた個別のファイルです。関連ステップ・ファイルは すべて、 インポート時には同じディレクトリーになければなりません。 テストまたは実動モード時のステップの更新 データウェアハウスセンターがステップのメタデータを更新するためには、 ステッ プが開発モードになければなりません。ステップがテストまたは実動モードに ある 場合は、メタデータをインポートする前にステップを開発モードにデモートして く ださい。 1. データウェアハウスセンターにログオンします。 2. デモートしたいステップを右クリックし、「モード」を クリックします。 3. 「開発」をクリックします。 これでステップが開発モードになります。メタデータのインポート後、 ステップを テストまたは実動モードに戻してください。 データウェアハウスセンターからのデータのインポート メタデータをデータウェアハウスセンターからインポートすることができます。 1. データウェアハウスセンターにログオンします。 2. 左のペインで「ウェアハウス」をクリックします。 3. 「選択」-> 「メタデータのインポート」-> 「ファイルの交換」をクリックし ます。 4. 「メタデータのインポート」ウィンドウで、インポートしたいメタデータを含 む ファイル名を指定します。ファイル名を入力するか、またはファイルをブ ラウズして 探すことができます。 o 場所が分かっている場合は、インポートしたいファイルの完全修飾パス とファイル名を 入力します。メタデータを XML 形式でインポートした いことを指定するために、 必ず .xml ファイル拡張子を指定してくださ い。指定しない場合は、 ファイルが正しく処理されません。 o ファイルをブラウズするには: a. 省略符号 (...) プッシュボタンをクリックします。 b. 「ファイル」ウィンドウで、ファイルの種類を XML に変更しま す。 c. 正しいディレクトリーに変更し、インポートしたいファイルを選択 します。 注:ファイルの拡張子は .xml でなければなりません。 d. 「了解」をクリックします。 5. 「メタデータのインポート」ウィンドウで、 「了解」をクリックして終了し ます。 データウェアハウスセンターがファイルをインポートしている間、 「 進行」ウィンドウが表示されます。 コマンド行を使用してメタデータをインポート コマンド行を使用してメタデータをインポートすることもできます。 インポート・ コマンドの構文は次の通りです。 CWMImport XML_file dwcControlDB dwcUserId dwcPW [PREFIX = DWCtbschema] XML_file インポートしたい XML ファイルの 完全 修飾パスとファイル名 (ドライブ名とデ ィレクトリーを含む)。 このパラメータ ーは必須です。 dwcControlDB メタデータをインポートしたい ウェア ハウス・コントロール・データベースの 名前。このパラメーターは必須です。 dwcUserId ウェアハウス・コントロール・データベ ースに 接続するために使用するユーザ ー ID。このパラメーターは必須です。 dwcPW ウェアハウス・コントロール・データベ ースに 接続するために使用するユーザ ー・パスワード。このパラメーターは必 須です。 [PREFIX=DWCtbschema] データウェアハウスセンター・システム 表の データベース・スキーマ名。 PREFIX= に値が指定されない場合、デフ ォルトのスキーマ名は IWH になりま す。 このパラメーターはオプションで す。 28.6.3 インポート・ユーティリティー実行後のメタデータの更新 インポート後のセキュリティーの更新 セキュリティー上の観点から、データウェアハウスセンターはパスワードを インポ ートまたはエクスポートしません。新しいオブジェクトに対して、必要に応じて パ スワードを更新する必要があります。インポートの考慮事項について詳しくは、 「 データウェアハウスセンター管理の手引き 」、第 12 章、 「データウェアハウス センター・メタデータのエクスポートおよびインポート」を 参照してください。 メタデータをインポートすると、すべてのオブジェクトがデフォルト・セキュリテ ィー・グループ に割り当てられます。 オブジェクトに対してアクセス権を持つグ ループを変更することができます。 1. データウェアハウスセンターにログオンします。 2. 変更したいオブジェクトを含むフォルダーを右クリックします。 3. 「プロパティー」をクリックし、次に 「セキュリティー」タブをクリックし ます。 4. 「選択ウェアハウス・グループ」リストから グループを除去するか、または 「使用可能ウェアハウス・グループ」リストから グループを追加します。 5. 「了解」をクリックします。 28.6.4 メタデータのエクスポート メタデータは、データウェアハウスセンターから、またはコマンド行から エクスポ ートすることができます。 一部のステップは、BLOB として保管されたメタデータを持っています。 BLOB メタ データは、ステップの XML と同じファイル名を持つ個別のファイルにエクスポート されますが、 拡張子には番号が付けられます (.1、.2、以下同様)。 データウェアハウスセンターからのデータのエクスポート メタデータをデータウェアハウスセンターからエクスポートすることができます。 1. データウェアハウスセンターにログオンします。 2. 左のペインで「ウェアハウス」をクリックします。 3. 「選択 -> メタデータのエクスポート-> ファイルの交換」を クリックしま す。 4. 「メタデータのエクスポート」ウィンドウで、エクスポートしたいメタデータ を含む ファイル名を指定します。ファイル名を入力するか、またはファイル をブラウズして 探すことができます。 o 使用したいファイルの完全修飾パスとファイル名が分かっている場合 は、 「ファイル名」入力フィールドに入力します。 メタデータを XML 形式でエクスポートしたいことを指定するために、 必ず .xml ファイル 拡張子を指定してください。 o ファイルをブラウズするには: a. 省略符号 (...) プッシュボタンをクリックします。 b. 「ファイル」ウィンドウで、 ファイルの種類を XML に変更しま す。 c. 正しいディレクトリーに変更し、エクスポートしたいファイルを選 択します。 注:選択した既存ファイルは、いずれもエクスポートされるメタ データで 上書きされます。 d. 「了解」をクリックします。 5. 「メタデータのエクスポート」ウィンドウに正しいファイル名が表示された ら、 「使用可能オブジェクト」リストでエクスポートしたい メタデータを持 つオブジェクトをクリックします。 6. > 記号をクリックして、選択したオブジェクトを 「使用可能オブジェクト」 リストから 「選択オブジェクト」リストへ移動します。 エクスポートしたい オブジェクトがすべて「選択オブジェクト」リストに リストされるまで、上 記を繰り返してください。 7. 「了解」をクリックします。 データウェアハウスセンターは、エクスポートすることを選択した データウェアハ ウスセンター・オブジェクトに関する情報を含む 入力ファイルを作成し、次に こ れらのオブジェクトに関するメタデータをエクスポートします。 データウェアハウ スセンターがファイルをエクスポートしている間、 進行ウィンドウが表示されま す。 コマンド行を使用してメタデータをエクスポート メタデータをコマンド行からエクスポートするには、まず 入力ファイルを作成して おかなければなりません。 入力ファイルは拡張子が .INP のテキスト・ファイル で、エクスポートしたい オブジェクト・タイプごとにすべてのオブジェクトをリス トします。データウェアハウスセンターから エクスポートするときは、入力ファイ ルは自動的に作成されますが、コマンド行からエクスポートする には入力ファイル を最初に作成しておく必要があります。入力ファイルはテキスト・エディターで 作 成できます。データウェアハウスセンターに示される順に、オブジェクト名をすべ て 入力してください。ファイルは必ず、読み取り/書き込みディレクトリーに作成 してください。 エクスポート・ユーティリティーを実行すると、データウェアハウ スセンターは、 入力ファイルのあるディレクトリーに XML ファイルを書き込みま す。 入力ファイルの例を以下に示します。 Tutorial Fact Table Process Tutorial file source Tutorial target New Program group (processes) セクションで、エクスポートしたいプロセスを すべてリスト します。 (information resources) セクションで、 エクスポートしたいウェ アハウス・ソースおよびターゲットをすべてリストします。 データウェアハウスセ ンターは自動的に、これらのソースとターゲットに関連付けられた 表と列を組み込 みます。 (user defined programs) セクションで、 エクスポートしたいプロ グラム・グループをすべてリストします。 メタデータをエクスポートするには、次のコマンドを DOS コマンド・プロンプトに 入力してください。 CWMExport INPcontrol_file dwcControlDB dwcUserID dwcPW [PREFIX=DWCtbschema] INPcontrol_file エクスポートしたいオブジェクトを 含 む .INP ファイルの完全修飾パスとファ イル名 (ドライブおよび ディレクトリ ーを含む)。このパラメーターは必須で す。 dwcControlDB エクスポート元となる ウェアハウス・ コントロール・データベースの名前。こ のパラメーターは必須です。 dwcUserID ウェアハウス・コントロール・データベ ースに 接続するために使用するユーザ ー ID。 このパラメーターは必須です。 dwcPW ウェアハウス・コントロール・データベ ースに 接続するために使用するパスワ ード。 このパラメーターは必須です。 [PREFIX=DWCtbschema] データウェアハウスセンター・システム 表の データベース・スキーマ名。 PREFIX= に値が指定されない場合、デフ ォルト値は IWH になります。 このパラ メーターはオプションです。 ------------------------------------------------------------------------ 28.7 タグ言語メタデータ・インポート / エクスポート・ユーティリティー 28.7.1 キー定義 タグ言語ファイルで定義された 1 次キーおよび外部キーは、コントロール・データ ベース ですでに定義されたキーと同じであれば無視されます。キーがすでに定義さ れたものと異なる 場合は、エラーが発生します。 28.7.2 ステップおよび処理のスケジュール ステップおよび処理がインポート・ユーティリティーによって削除されることはな くなりました。 タグ・ファイルで定義されたスケジュールがスケジュールの現行リ ストに追加されるようになりました。 これによって重複スケジュールが表示される 場合があります。重複スケジュールは、 ステップが実動モードにプロモートされる 前にユーザーが削除する必要があります。 ------------------------------------------------------------------------ 28.8 SAP ステップ情報 28.8.1 SAP ステップの出力パラメーターを指定した場合の遅延 SAP ステップの「プロパティー」ノートブックの「出力パラメーター」ページ上の パラメーターを 「使用可能パラメーター」リストから「選択パラメーター」リスト に移動するためには、 多くの時間を要する場合があります。 28.8.2 入力パラメーター値は SAP ステップ間で共用されています 新しい入力パラメーター値が SAP ステップに指定されると、更新されたステップと して 同じ SAP ソースにリンクされている他の SAP ステップも、この新しいパラメ ーター値を 共有します。たとえば、新しい入力パラメーター値が SAP ステップ 1 に指定される とします。SAP ステップ 1 は、SAP ソース A にリンクされて いま す。SAP ステップ 2 も SAP ソース A にリンクされて います。SAP ステップ 2 は SAP ステップ 1 と同じパラメーター値を持ちます。 28.8.3 SAP ステップ実行時のアクセス違反エラー 次の条件がすべて満たされた場合、SAP ステップはハングするか、 アクセス違反エ ラーが発生します。 1. すべてのキー・フィールドが SAP ソースの「プロパティー」ノートブックの 「パラメーター・ マッピング」ページ上のエクスポート・パラメーターにマ ップされた。 2. SAP ソースの「プロパティー」ノートブックの「出力パラメーター」ページ上 で、 パラメーター・マッピングに使用されたのと同じ SAP パラメーター名を 持つ GetList エクスポート・ パラメーターが選択されていない。 3. SAP ステップの「プロパティー」ノートブックの「出力パラメーター」ページ 上で、 パラメーター・マッピングに使用されたのと同じ SAP パラメーター名 を 持たない GetList エクスポート・パラメーターが選択されている。 4. 条件 3 で選択されたパラメーターが、単純パラメーターまたは構造パラメー ターである、 あるいは表パラメーターの場合は、その名前がパラメーター・ マッピングに使用された パラメーター名よりもアルファベット順で前であ る。 ここで「SAP パラメーター名」とは、パラメーターのピリオド前に表示されるパラ メーター の一部を指します。 たとえば、パラメーター DocumentList.DOCNUMBER で は、DocumentList が SAP パラメーターです。 例: DocumentNumber はキー・フィールドであり、DocumentList.DOCUMENTNUMBER、 DocumentList.USERNAME、および DocNumberSelection.OPTION は、 エクスポート・ パラメーターです。 キー・フィールド DocumentNumber がエクスポート・パラ メーター DocumentList.DOCUMENTNUMBER にマップ され (条件 1)、GetList エクスポート・ パラメーター DocumentList.USERNAME が選択されていない (条件 2) 場合は、 GetList エクスポート・パラメーター DocNumberSelection.OPTION が選択され (条 件 3)、 かつ DocNumberSelection.OPTION" が DocumentList.DOCUMENTNUMBER より アルファベット順で前 (条件 4) なら ば、4 つの条件はすべて満たされ、エラーが 発生します。 ------------------------------------------------------------------------ 28.9 SAP コネクター情報 28.9.1 SAP コネクター・インストール上の制約事項 SAP コネクターは、SAP R/3 システムの英語のインストールのみをサポートしてい ます。 28.9.2 GetDetail BAPI のパフォーマンス GetDetail が大量の入力パラメーターを持っていれば、GetDetail BAPI の パフォ ーマンスは低くなります。 ------------------------------------------------------------------------ DB2 OLAP スターター・キット IBM DB2 OLAP スターター・キットを使用すれば、特定のオペレーティング・システ ム・プラットフォームでの Oracle、MS-SQL、Sybase、および Informix リレーショ ナル・データベース管理システム (RDBMS) の サポートが 追加されます。バージョ ン 7.2 には、DB2 をはじめ、サポートされるすべての RDBMS のスクリプトおよび ツールが 含まれます。制限事項があります。詳細については、29.10, 既知の問題 および制限事項 を参照してください。 DB2 ユニバーサル・データベース・バージョン 7.2 の DB2 OLAP スターター・キッ トの サービス・レベルは、Hyperion Essbase 6.1 のパッチ 2 と Hyperion Integration Server 2.0 の パッチ 2 と同じです。 ------------------------------------------------------------------------ 29.1 OLAP Server Web サイト DB2 OLAP スターター・キットの最新インストールおよび使用上のヒントについて は、 DB2 OLAP Server Web サイトのライブラリー・ページを参照してください。 http://www.ibm.com/software/data/db2/db2olap/library.html ------------------------------------------------------------------------ 29.2 サポートされるオペレーティング・システム・サービス・レベル OLAP スターター・キット・バージョン 7.2 のサーバー・コンポーネントは、以下 の オペレーティング・システムとサービス・レベルをサポートします。 * Windows NT 4.0 サーバー (サービス・パック 5) および Windows 2000 * AIX バージョン 4.3.3 またはそれ以降 * Solaris オペレーティング・システム・バージョン 2.6、7、および 8 (Sun OS 5.6、 5.7、または 5.8) クライアント・コンポーネントは、Windows 95、Windows 98、Windows NT 4.0 SP5、および Windows 2000 で起動します。 ------------------------------------------------------------------------ 29.3 UNIX での DB2 OLAP スターター・キットを完了する DB2 OLAP スターター・キットのインストールは、DB2 ユニバーサル・データベース を UNIX にインストールする際の基本プロシージャーにしたがって行います。製品 ファイルは、 インストール・プログラムによってシステム・ディレクトリーに 置 かれます (AIX の場合は、/usr/lpp/db2_07_01、 Solaris の場合は、 /opt/IBMdb2/V7.1)。 インスタンス作成段階で、2 つの DB2 OLAP ディレクトリー (essbase および is) が sqllib 下のインスタンス・ユーザーのホーム・ディレクトリーに 作成されま す。OLAP Server のインスタンスのみマシンで一度に実行できます。 セットアップ を完了するには、ユーザーは is/bin ディレクトリーをシステムの is/bin ディレ クトリーにリンクしないように、手動で設定する 必要があります。インスタンスの ホーム・ディレクトリーで writable ディレクトリーにリンクする必要がありま す。 Solaris でセットアップを完了するには、インスタンス ID を使用してログオン し、 sqllib/is ディレクトリーへ変更して、 以下を入力します。 rm bin mkdir bin cd bin ln -s /opt/IBMdb2/V7.1/is/bin/ismesg.mdb ismesg.mdb ln -s /opt/IBMdb2/V7.1/is/bin/olapicmd olapicmd ln -s /opt/IBMdb2/V7.1/is/bin/olapisvr olapisvr ln -s /opt/IBMdb2/V7.1/is/bin/essbase.mdb essbase.mdb ln -s /opt/IBMdb2/V7.1/is/bin/libolapams.so libolapams.so ------------------------------------------------------------------------ 29.4 Solaris 操作環境用の追加構成 Solaris 操作環境では、OLAP スターター・キットが適切な ODBC ドライバーにリン クしていなければ、 エラーが発生する場合があります。 このようなエラーを回避 するには、次のコマンドを実行します。 このコマンドは、$ARBORPATH/bin にリン クを作成して、OLAP ドライバ ー sqllib/lib/libdb2.so を指します。 ln -s $HOME/sqllib/lib/libdb2.so libodbcinst.so ------------------------------------------------------------------------ 29.5 すべてのオペレーティング・システム用の追加構成 DB2 ユニバーサル・データベース、バージョン 7 のフィックスパック 3 からは、 DB2 OLAP スターター・キット に、Java を必要とする機能が含まれるようになりま した。フィックスパック 3 以降をインストールする と、OLAP サーバー・コンソー ルに次のようなエラー・メッセージが表示される場合があります。 Can not find [directory] [/export/home/arbor7sk/sqllib/essbase/java/], required to load JVM. このエラーを訂正するには、次のステップを実行します。 1. DB2 インスタンス所有者としてログオンする。 2. DB2 OLAP スターター・キットをインストールしたディレクトリーを検索す る。 この ディレクトリーのデフォルト名は、essbase です。 3. essbase ディレクトリーに java という名の サブディレクトリーを作成す る。 4. java サブディレクトリーに 次の空ファイルを作成する。 o essbase.jar o essdefs.dtd o jaxp.jar o parser.jar o udf.policy ------------------------------------------------------------------------ 29.6 ODBC を OLAP スターター・キット用に構成 IBM DB2 OLAP スターター・キット 7.2 は、OLAP Integration Server から OLAP Metadata Catalog への Open Database Connectivity (ODBC) 接続操作で、 ODBC.ini ファイルが必要です。 * Windows システムで、このファイルは HKEY_LOCAL_MACHINE/SOFTWARE/ODBC の 下のレジストリーにあります。リレーショナル・データ・ソースとの接続方法 についての情報を 保管するには、ODBC データ・ソース・アドミニストレータ ーを使用します。 * UNIX システムでインストール・プログラムを実行すると、モデル odbc.ini ファイルが 作成されます。リレーショナル・データ・ソースに接続する方法 についての情報を 格納するには、適切なエディターを使用してファイルを編 集します。 ODBC.ini ファイルは ODBC ソフトウェア・パッケージにあり、Microsoft Office に 添付されています。ODBC ドライバーまたは ODBC アドミニストレーターを イン ストールするアプリケーションの追加情報 については、Web サイト http://support.microsoft.com/ を参照してください。 AIX マシンでの Oracle ユーザーの場合: ODBC を Oracle 用に構成するには、 MERANT 3.6 ドライバーを指すように ODBC.ini ファイルを 更新する必要がありま す。 バージョン 7.2 では、OLAP スターター・キットは、リレーショナル・データ・ソ ースおよび OLAP メタデータ・カタログとの ODBC 接続を管理します。これらの ODBC 接続に対応するため、 OLAP スターター・キットは、Windows NT 4.0、 Windows 2000、AIX、および Solaris で ODBC ドライバーを使います。 * DB2 ユニバーサル・データベース・バージョン 6 データベース・クライアン トの場合: Windows NT 4.0 SP5 または Windows 2000、AIX 4.3.3、および Solaris オペレーティング・システム 2.6, 7、 または 8 (Sun OS 5.6、 5.7、または 5.8) で DB2 バージョン 6 ODBC ドライバー。 * DB2 ユニバーサル・データベース 7.1 データベース・クライアントの場合: Windows NT 4.0 SP5 または Windows 2000、AIX 4.3.3、および Solaris オペ レーティング・システム 2.6, 7、 または 8 (Sun OS 5.6、5.7、または 5.8) で DB2 バージョン 7 ODBC ドライバー。 * Oracle 8.04 および 8i SQL*Net 8.0 データベース・クライアントの場合: Windows NT 4.0 SP5 または Windows 2000、AIX 4.3.3、Solaris オペレーテ ィング・システム 2.6、 7 または 8 (Sun OS 5.6、5.7、または 5.8) で MERANT 3.6 ODBC ドライバー。 * MS SQL サーバー 6.5.201 (データベース・クライアント不要) の場合: Windows NT 4.0 SP5 または Windows 2000 で MS SQL サーバー 6.5 ODBC ド ライバー。 * MS SQL Server 7.0 (データベース・クライアント不要) の場合: Windows NT 4.0 SP5 または Windows 2000 で MS SQL Server 7.0 ODBC ドライバー。 29.6.1 UNIX システム上でのデータ・ソースの構成 AIX および Solaris では、環境変数を ODBC 用に手動で設定し、 odbc.ini ファイ ルを編集して、リレーショナル・データ・ソース および OLAP メタデータ・カタロ グを構成する必要があります。新規にドライバーまたは データ・ソースを追加する 場合、あるいはドライバーまたはデータ・ソースを変更する場合は、 odbc.ini フ ァイルを必ず編集してください。 AIX または Solaris 上で DB2 OLAP スターター・キットを使用して、Merant ODBC ソースおよ び DB2 データベースにアクセスする場合は、.odbc.ini ファイルの DB2 ソース・ セクションにある "Driver=" 属性の値を次のように変更します。 AIX: ドライバー名 /usr/lpp/db2_07_01/lib/db2_36.o AIX 用サンプル ODBC ソース項目: [SAMPLE] Driver=/usr/lpp/db2_07_01/lib/db2_36.o Description=DB2 ODBC Database Database=SAMPLE Solaris 操作環境: ドライバー名は、/opt/IBMdb2/V7.1/lib/libdb2_36.so Solaris 用サンプル ODBC ソース項目: [SAMPLE] Driver=/opt/IBMdb2/V7.1/lib/libdb2_36.so Description=DB2 ODBC Database Database=SAMPLE 29.6.1.1 環境変数の構成 UNIX システムでは、環境変数を設定して、ODBC コア・コンポーネントへのアクセ スを可能にする 必要があります。必須変数を設定する is.sh および is.csh シェ ル・スクリプトがスターター・キット・ホーム・ ディレクトリーにあります。ODBC データ・ソースに接続する前に、これらのスクリプトの 1つを実行しなければなり ません。OLAP スターター・キットの実行に使用するユーザー名の ログイン・スク リプトに、これらのスクリプトを組み込んでください。 29.6.1.2 odbc.ini ファイルの編集 odbc.ini ファイルでデータ・ソースを構成するには、ODBC データ・ソースの名前 と記述を追加し、 またデータ・ソース名のために作成する別のセクションでは、 ODBC ドライバー・パス、ファイル名、 およびその他のドライバー設定値を入力す る必要があります。インストール・プログラムは、 サンプルの odbc.ini ファイル を ISHOME ディレクトリーに インストールします。このファイルには、サポートさ れている ODBC ドライバーに関する 汎用の ODBC 接続および構成情報が含まれてい ます。リレーショナル・データ・ソースおよび OLAP メタデータ・カタログに対し て、使用する ODBC ドライバーをマップするための開始点として このファイルを使 用してください。 odbc.ini ファイル以外の別のファイルを使用する場合は、 使用するファイルの名 前に ODBCINI 環境変数を必ず設定してください。 29.6.1.3 データ・ソースの odbc.ini ファイルへの追加 1. OLAP スターター・キット・サーバーを実行しているシステムで、vi などの テキスト・エディターを使用して odbc.ini ファイルを開きます。 2. [ODBC Data Sources] で始まっているセクションを見つけて、 mydata=data source for analysis など、 データ・ソースの名前と説明を記述する新しい 行を追加します。なるべく混乱しないように、データ・ソースの名前は、 RDBMS にあるデータベースの名前と一致させます。 3. [mydata] など、大括弧で囲まれた新しいデータ・ソースの名前を記述する新 しい行を 作成して、ファイルに新しいセクションを追加します。 4. データ・ソース名に続く行で、このデータ・ソースおよびその他の必須の ODBC ドライバー情報に 対する全パスとファイル名を追加します。以下のセク ションで紹介する例をガイドラインとして使用して、 RDBMS のデータ・ソー スにマップしてください。Driver= 設定に指定するロケーションに ODBC ドラ イバー・ファイルが実際に存在することを確認してください。 5. odbc.ini の編集を終了したら、ファイルを保存し、 テキスト・エディターを 終了させます。 29.6.1.4 DB2 の ODBC 設定の例 次の例で、odbc.ini を編集して、IBM DB2 固有の ODBC ドライバーを使い、AIX で DB2 ユニバーサル・データベース・バージョン 6.1 の リレーショナル・データ・ ソース db2data に接続する方法を 説明します。vi エディターで $ODBCINI コマン ドを使い、odbc.ini を 編集して、以下のステートメントを挿入します。 [ODBC Data Sources] db2data=DB2 Source Data on AIX ... [db2data] Driver=/home/db2inst1/sqllib/lib/db2.o Description=DB2 Data Source - AIX, native 29.6.1.5 Oracle の ODBC 設定の例 次の例で、odbc.ini を編集して、MERANT バージョン 3.6 ODBC ドライバーを 使 い、Oracle バージョン 8 (Solaris で) のリレーショナル・データ・ソース oradata に 接続する方法を説明します。この例では、LogonID および Password は、 OLAP スターター・キットのユーザー名およびパスワードで使用する実際の値 でオーバーライドされます。 [ODBC Data Sources] oradata=Oracle8 Source Data on Solaris ... [myoracle] Driver= /export/home/users/dkendric/is200/odbclib/ARor815.so Description=my oracle source 29.6.2 UNIX システムでの OLAP メタデータ・カタログの構成 AIX および Solaris での OLAP メタデータ・カタログの構成は、データ・ソースの 構成と 類似しています。OLAP メタデータ・カタログ・データベースの場合、 29.6.1.2, odbc.ini ファイルの編集 での説明の ように、データ・ソースの名前と セクションを odbc.ini ファイルに 追加します。そのほかに必要な変更はありませ ん。 OLAP メタデータ・カタログ・データベースを ODBC データ・ソースとして構成する 前に、 サポートされている RDBMS に作成する必要があります。 次の例で、odbc.ini を編集して、固有の ODBC ドライバーを 使い、DB2 バージョ ン 6.1 (Solaris で) OLAP メタデータ・カタログ TBC_MD に接続する方法を 説明 します。 [ODBC Data Sources] ocd6a5a=db2 v6 ... [ocd6a5a] Driver=/home/db2instl/sqllib/lib/db2.0 Description=db2 29.6.3 Windows システムでのデータ・ソースの構成 Windows NT または Windows 2000 システムで リレーショナル・データ・ソースを 構成するには、ODBC Administrator を実行してから、OLAP モデルおよびメタアウ トラインの 作成に使用するデータ・ソースとの接続を作成する必要があります。 Windows コントロール・パネルから ODBC Administrator ユーティリティーを実行 します。次の例で DB2 データ・ソースを作成します。 ほかの RDBMS のダイアロ グ・ボックスは異なることがあります。 ODBC Administrator でリレーショナル・データ・ソースを構成するには、 以下の ステップを実行します。 1. Windows デスクトップで、「コントロール・パネル」ウィンドウを開く。 2. 「コントロール・パネル」ウィンドウで、以下のステップの 1 つを実行す る。 a. Windows NT で、ODBC アイコンをダブルクリックし、 「ODBC データ・ ソース・アドミニストレーター」ダイアログ・ボックスを開く。 b. Windows 2000 で、管理ツール アイコンを ダブルクリックしてから、デ ータ・ソース (ODBC) アイコンを ダブルクリックし、「ODBC データ・ ソース・アドミニストレーター」ダイアログ・ボックスを開く。 3. 「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスで、 「システム DSN」タブをクリックする。 4. 「追加」をクリックして、 「データ・ソースの新規作成」ダイアログ・ボッ クスが開く。 5. ODBC Administrator の「データ・ソースの新規作成」ダイアログ・ボックス で、 IBM DB2 ODBC Driver などの適切なドライバーを選択し、 「完了」をク リックして、 「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスを 開く。 6. 「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスの 「データベー ス別名」ドロップダウン・リストで、 適切なリレーショナル・ソース・デー タのデータベースの名前 (たとえば、サンプル・アプリケーションの TBC) を 選択する。 7. 「説明」テキスト・ボックスで、 このドライバーの使用方法を示す任意の説 明を入力し、「追加」を クリックする。たとえば、My Business データベー スを示すには次のような説明を 入力します。 Customers, products, markets など。次のような説明を入力すれば、 サンプル・アプリケーション・データ ベースを記述できるでしょう。 リレーショナル・データ・ソースのサンプル 説明の中には、 「OLAP Starter Kit Desktop」から接続するとき、選択可能 なデータ・ソースを 特定するヒントがあります。 8. 「了解」をクリックし、「ODBC データ・ソース・アドミニストレーター」ダ イアログ・ボックスに 戻る。入力したデータ・ソース名およびデータ・ソー ス名にマップしたドライバーが 「システム DSN」タブの 「システム・デー タ・ソース」リスト・ボックスに 表示されます。 データ・ソースの構成情報を編集するには、以下の通りにします。 1. データ・ソース名を選択し、「構成」をクリックして、 「ODBC IBM DB2 - 追 加」ダイアログ・ボックスを開く。 2. 変更したい情報を訂正する。 3. 「了解」を 2 回クリックし、終了する。 29.6.4 Windows システムでの OLAP メタデータ・カタログの構成 Windows NT または Windows 2000 で OLAP メタデータ・カタログを構成するには、 ODBC Administrator を実行してから、OLAP メタデータ・カタログ・データベース が 含まれるデータ・ソースとの接続を作成します。 次の例で DB2 データ・ソースを作成します。 ほかの RDBMS のダイアログ・ボック スは異なることがあります。OLAP メタデータ・カタログの データ・ソースを作成 するには、次のステップを実行します。 1. デスクトップで、「コントロール・パネル」ウィンドウを開く。 2. 「コントロール・パネル」ウィンドウで、以下のステップの 1 つを実行す る。 a. Windows NT で、ODBC アイコンをダブルクリックし、 「ODBC データ・ ソース・アドミニストレーター」ダイアログ・ボックスを開く。 b. Windows 2000 で、管理ツール アイコンを ダブルクリックしてから、デ ータ・ソース (ODBC) アイコンを ダブルクリックし、「ODBC データ・ ソース・アドミニストレーター」ダイアログ・ボックスを開く。 3. 「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスで、 「システム DSN」タブをクリックする。 4. 「追加」をクリックして、 「データ・ソースの新規作成」ダイアログ・ボッ クスが開く。 5. ODBC Administrator の「データ・ソースの新規作成」ダイアログ・ボックス で、 IBM DB2 ODBC Driver などの適切なドライバーを選択し、 「完了」をク リックして、 「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスを 開く。 6. 「データベース別名」ドロップダウン・リストの、 「ODBC IBM DB2 ドライバ ー - 追加」 ダイアログ・ボックスで、 適切な OLAP メタデータ・カタログ の データベースの名前 (たとえば、サンプル・アプリケーションの TBC_MD) を選択する。選択したデータベースの 名前は、「データ・ソース名」テキス ト・ボックスに 自動的に表示されます。 7. データ・ソースの名前を変更したいときには、 「データ・ソース名」テキス ト・ボックスに 表示されている名前を選択して、このドライバーの使用方法 を示す名前を入力し、 「追加」をクリックする。たとえば、次のような名前 を 入力すれば、最初の OLAP メタデータ・カタログに接続するためにそのド ライバーを 使用していることを示せるでしょう。 OLAP Catalog first サンプル・アプリケーション OLAP メタデータ・カタログの データベースに 接続していることを示すには、次の名前を入力すればよいでしょう。 TBC_MD 8. 「説明」テキスト・ボックスで、 このドライバーの使用方法を示す説明を入 力する。たとえば、OLAP メタデータ・カタログを説明するには、 次のような 記述を入力します。 最初のモデルとメタアウトライン 次のような説明を入力すれば、サンプル・アプリケーション OLAP メタデー タ・カタログ・データベースを 記述できるでしょう。 サンプルのモデルとメタアウトライン 上記のような説明は、OLAP スターター・キット・デスクトップから OLAP メ タデータ・カタログに接続するときに選択する対象のカタログを特定する ヒ ントとなります。 9. 「了解」をクリックし、「ODBC データ・ソース・アドミニストレーター」ダ イアログ・ボックスに 戻る。入力したデータ・ソース名およびデータ・ソー ス名にマップしたドライバーが 「システム DSN」タブの 「システム・デー タ・ソース」リスト・ボックスに 表示されます。 データ・ソースの構成情報を編集するには、以下の通りにします。 1. データ・ソース名を選択し、「構成」をクリックして、 「ODBC IBM DB2 - 追 加」ダイアログ・ボックスを開く。 2. 変更したい情報を訂正する。 3. 「了解」を 2 回クリックし、終了する。 29.6.5 データ・ソースを構成したら リレーショナル・データ・ソースおよび OLAP メタデータ・カタログの構成が完了 すると、 OLAP スターター・キットから接続することができます。次に、OLAP モデ ルおよび メタアウトラインの作成、変更、および保存を行うことができます。 SQL サーバー ODBC ドライバーは、SQL サーバー・データベースを呼び出す間に タ イムアウトになる可能性があります。データベースが使用中でないときに 再試行し てください。ドライバー・タイムアウト期間を長くすれば、この問題を回避できる 場合があります。詳しくは、ご使用のドライバーの ODBC 文書を参照してくださ い。 ODBC 接続の問題およびソリューションの詳細については、 「OLAP Integration Server System Administrator's Guide」 を参照してください。 ------------------------------------------------------------------------ 29.7 OLAP スターター・キット・デスクトップからのログイン OLAP Starter Kit Desktop を使用して OLAP モデルおよびメタアウトラインを 作 成するには、DB2 OLAP Integration Server および DB2 OLAP Server という 2 つ のサーバー・コンポーネントにクライアント・ソフトウェアを接続する 必要があり ます。ログイン・ダイアログで、 これらの 2 つのサーバーに接続するために Desktop で必要な情報のプロンプトが出されます。 ダイアログの左方で、DB2 OLAP Integration Server に関する情報を入力します。 右方で、DB2 OLAP Server に関 する情報を入力します。 DB2 OLAP Integration Server に接続するには: * サーバー: Integration Server のホスト名または IP アドレスを入力しま す。 Integration Server を Desktop と同じワークステーション上にインス トールしている場合、 値は通常、"localhost" または "127.0.0.1" です。 * OLAP メタデータ・カタログ: OLAP Integration Server に接続する場合、 メ タデータ・カタログも指定する必要があります。OLAP Integration Server は、 リレーショナル・データベースで作成した OLAP モデルとメタアウトラ インに関する情報を メタデータ・カタログとして保管します。このリレーシ ョナル・データベースを ODBC に登録する必要があります。カタログ・データ ベースには、OLAP Integration Server が 認識するリレーショナル表の特定 のセットが含まれます。ログイン・ダイアログで Integration Server を指定 し、「OLAP メタデータ・カタログ」フィールドのプルダウンを 展開して、 OLAP Integration Server として知られる ODBC データ・ソース名のリストを 参照することができます。 メタデータ・カタログ表を含む ODBC データベー スを選択してください。 * ユーザー名およびパスワード: OLAP Integration Server は、このパネルで指 定する ユーザー名とパスワードを使用して、メタデータ・カタログに接続し ます。 これは、サーバー上 (同じマシンでサーバーとクライアントが実行さ れているのでなければ クライアント上ではない) に存在するログイン・アカ ウントです。 ユーザー名は OLAP メタデータ・カタログを作成したユーザー でなければなりません。 作成ユーザーでなければ、表スキーマ名が異なるた め、OLAP Integration Server は カタログ内でリレーショナル表を検索する ことができません。 DB2 OLAP Server 情報はオプションであるため、ログイン・ダイアログの 右方の入 力フィールドはブランクのままにできます。ただし、 Desktop および Administration Manager で、DB2 OLAP Server に接続するために いくつかの操作 が必要となります。これらのフィールドをブランクのままにすると、 要求した操作 を完了するために Integration Server が DB2 OLAP Server に 接続する必要があ る場合、Desktop はログイン・ダイアログを再び表示します。 ログイン・ダイアロ グの DB2 OLAP Server フィールドを常に埋めることをお勧めします。 DB2 OLAP Server に接続するには: * サーバー: DB2 OLAP Server のホスト名または IP アドレスを入力します。 OLAP スターター・キットを実行中の場合は、OLAP Server と Integration Server は 同じです。Integration Server と OLAP Server が別々のホストに インストール されている場合は、OLAP Integration Server で定義されてい るホスト名と IP アドレスを 入力してください。 * ユーザー名およびパスワード: OLAP Integration Server は、このパネルで指 定する ユーザー名とパスワードを使用して、DB2 OLAP Server に接続しま す。 このユーザー名とパスワードは、DB2 OLAP Server に対して定義済みの ものでなければなりません。 OLAP Server は、このユーザー名とパスワード をホスト・オペレーティング・システムとは 別に管理します。 29.7.1 スターター・キットのログインの例 以下の例は、OLAP サンプルを作成済みで、OLAP スターター・キットのインストー ル中に 管理者ユーザー ID として db2admin を、 管理者パスワードとして password を選択したと想定しています。 * OLAP Integration Server の場合: サーバーは localhost 、 OLAP メタデー タ・カタログは TBC_MD 、ユーザー名は db2admin、パスワードは password です。 * DB2 OLAP Server の場合: サーバーは localhost 、 ユーザー名は db2admin です。 ------------------------------------------------------------------------ 29.8 OLAP スターター・キットのサンプル・データベースを手動で 作成および構成 する サンプル・データベースは OLAP スターター・キットをインストールするときに 自 動的に作成されます。以下の説明は、必要な場合に、カタログおよびサンプル・デ ータベースの セットアップを手動で行う方法を示します。 1. Windows 上で、「スタート --> プログラム --> DB2 (Windows NT 版) --> コ マンド・ウィンドウ」を開きます。 2. 実動カタログ・データベースを作成します。 a. 次のように入力: db2 create db OLAP_CAT b. 次のように入力: db2 connect to OLAP_CAT 3. データベースに表を作成します。 a. \SQLLIB\IS\ocscript\ocdb2.sql に移動します b. 次のように入力: db2 -tf ocdb2.sql 4. サンプル・ソース・データベースを作成します。 a. 次のように入力: db2 connect reset b. 次のように入力: db2 create db TBC c. 次のように入力: db2 connect to TBC 5. データベースに表を作成します。 a. \SQLLIB\IS\samples\ に移動します b. tbcdb2.sql を \SQLLIB\samples\db2sampl\tbc にコピーします c. lddb2.sql を \SQLLIB\samples\db2sampl\tbc にコピーします d. \SQLLIB\samples\db2sampl\tbc に移動します e. 次のように入力: db2 -tf tbcdb2.sql f. db2 - vf lddb2.sql と入力して、 サンプル・ソース・データを表にロ ードします。 6. サンプル・カタログ・データベースを作成します。 a. 次のように入力: db2 connect reset b. 次のように入力: db2 create db TBC_MD c. 次のように入力: db2 connect to TBC_MD 7. データベースに表を作成します。 a. \SQLLIB\IS\samples\tbc_md に移動します b. ocdb2.sql を \SQLLIB\samples\db2sampl\tbcmd にコピーします c. lcdb2.sql を \SQLLIB\samples\db2sampl\tbcmd にコピーします d. \SQLLIB\samples\db2sampl\tbcmd に移動します e. 次のように入力: db2 -tf ocdb2.sql f. db2 -vf lcdb2.sql と入力して、 サンプル・メタデータを表にロードし ます。 8. TBC_MD、TBC、および OLAP_CAT 用の ODBC を構成します。 a. 「スタート --> 設定 --> コントロール パネル」をクリックして NT コ ントロール パネルを開きます b. リストから ODBC (または ODBC データ・ソース) を選択します。 c. 「システム DSM」タブを選択します。 d. 「追加」をクリックします。「データ・ソースの新規作成」ウィンドウ が開きます。 e. リストから「IBM DB2 ODBC DRIVER」を選択します。 f. 「完了」をクリックします。「ODBC IBM DB2 ドライバー - 追加」 ウィ ンドウが開きます。 g. データ・ソースの名前 (OLAP_CAT) を「データ・ソース名」フィールド に入力します。 h. 別名を「データベース別名」フィールドに入力するか、 あるいは下矢印 をクリックして、リストから「OLAP_CAT」を選択してください。 i. 「了解」をクリックします。 j. これらのステップを TBC_MD および TBC データベースに対して繰り返し てください。 ------------------------------------------------------------------------ 29.9 アプリケーションを OLAP スターター・キット・バージョン 7.2 に移行 インストール・プログラムは、OLAP スターター・キットのサンプル・アプリケーシ ョン、 データベース、およびデータ・ファイルを再インストールしません。既存の アプリケーションや データベースは何の影響も受けません。ただし、インストール を行う前に、アプリケーションや データベースのバックアップを忘れずに行ってく ださい。 アプリケーションを開くと、アプリケーションは自動的に バージョン 7.2 に 移行 されます。 ------------------------------------------------------------------------ 29.10 既知の問題および制限事項 このセクションでは、DB2 OLAP スターター・キットでの既知の制限事項を リスト します。 Windows プラットフォームでの Informix RDBMS と Merant ドライバーの互換性 Windows プラットフォーム用の Merant ドライバーを Informix RDBMS で動作 させるには、 以下の 2 行を PATH ステートメントに追加する必要がありま す。 o C:\Informix o C:\Informix\bin これらの 2 行とも、PATH の先頭に入力してください。 OLAP モデルと、関連するメタアウトラインのディメンションに矛盾が生じる ある条件のもとでは、OLAP モデルで対応するディメンションがないメタアウ トラインに、 ディメンションを作成することができます。このディメンショ ンの矛盾は以下のシナリオで起こりえます。 1. 新しい OLAP モデルを作成し、それを保存する。 2. このモデルをベースにメタアウトラインを作成し、そのメタアウトライ ンを保存しない。 3. OLAP モデルに戻り、上記のメタアウトラインのディメンションのうちの 1 つのベースとなっている ディメンションを削除する。 4. メタアウトラインに戻り、それを保存し、クローズしてから、再オープ ンする。メタアウトラインには、 OLAP モデルでは対応するディメンシ ョンが存在しないディメンションが含まれます。 OLAP スターター・キットは、このような方法で作成されたディメンション と、 メタアウトラインのユーザー定義のディメンションとの矛盾を見分ける ことができません。したがって、 矛盾するディメンションがメタアウトライ ンに表示されますが、OLAP モデルには対応する ディメンションが存在しない ため、メタアウトラインはそれをユーザー定義のディメンションと 見なしま す。 Windows 2000 プラットフォームで TMP 環境変数が原因で、メンバーおよび データ のロードが失敗する Windows 2000 と Windows NT の間では、TMP のデフォルト・システムおよび ユーザー環境設定値が異なります。そのため、OLAP スターター・キットが Windows 2000 プラットフォームで実行しているとき、メンバーおよびデータ のロードが 失敗します。その結果として、一時ファイルが作成できなかった ことを示す エラー・メッセージが表示されます。以下のステップを実行する と、Windows 2000 での この制限を回避することができます。 1. ディレクトリー C:\TEMP を作成する 2. システムおよびユーザーの環境変数 TMP を TMP=C:\TEMP に設定する ODBC をインストールしても、既存の Merant ドライバーが置き換えられない ODBC をインストールしても、既存の 3.6 Merant ODBC ドライバーは 更新さ れません。OLAP スターター・キット・バージョン 7.1、フィックスパック 2 以前のバージョンから アップグレードする場合には、以前にインストールし た ODBC ドライバーを継続して使用してください。 UNIX プラットフォームで Merant Informix ODBC ドライブを使用する UNIX プラットフォームで Merant Informix ODBC ドライバーを使用するに は、 以下のいずれかを実行する必要があります。 o スターター・キットを起動する前に、LANG 環境変数を "en_US" に 設定 する。たとえば、Korn シェルの場合、次のように入力します。 export LANG='en_US' OLAP スターター・キットを起動するたびに、この変数を設定します。 o LANG 環境変数がすでに別の値に設定されている場合は、インストール後 に 次の記号リンクを作成する。 ln -s $ISHOME/locale/en_US $ISHOME/locale/$LANG 異なるサービス・レベルの OLAP クライアントとサーバーを混合して使用する IBM は、OLAP スターター・キットのクライアントおよびサーバー・コンポー ネントをともに、 同一バージョンおよび同一フィックスパック・レベルにし ておくことをお勧めします。ただし、 ある状況下では、異なるサービス・レ ベルのクライアントとサーバー・コンポーネントを 混合することができま す。 あるバージョンでクライアントとサーバーを異なるサービス・レベルで使用す る より新しいクライアントと、より古いサーバーを組み合わせて使用する 場合、 IBM はこれについてサポートはいたしませんので、そのように使 用しないことをお勧めします。 ただし、より古いクライアントと、より 新しいサーバーを組み合わせて使用できることは あります。ただしこの 場合も、IBM はサポートしません。この場合は、問題が発生する可能性 があります。 例: + サーバーからのメッセージが誤っている。クライアント側の message.MDB ファイルを アップグレードしてサーバー側のレベル に一致させることによって、この問題を 回避することができま す。 + 新しいサーバー機能が機能しない。新しい機能を使用しようと試み ると、 クライアント側、サーバー側、または両方の側で失敗す る。 + クライアントがサーバーに正しく接続されていない可能性がある。 あるバージョンで、単一のクライアントで複数のサーバーを使用する 単一のクライアントを異なるマシンまたはオペレーティング・システム にある いくつかの OLAP サーバーに接続する必要がある場合、それらを すべて同一のバージョン およびサービス・レベルにすることを IBM は お勧めします。クライアントは、少なくとも、 最低レベルのサーバーと 同じレベルにしてください。問題が発生する場合には、 適切なホストに 適応させるために異なるクライアント・マシンを使用したり、 すべての クライアントおよびサーバーを同じサービス・レベルにアップグレード しなければならない場合があります。 異なるバージョンのクライアントとサーバーを混合して使用する バージョン 7.1 の OLAP スターター・キット・クライアントおよびサー バーと バージョン 7.2 のクライアントおよびサーバーを混合して使用 する場合、IBM は サポートしません。IBM OLAP 製品が新しいバージョ ン・レベルにアップグレードされるとき、 ネットワークの更新やデー タ・フォーマットの変更を伴うことがよくあり、その場合には、 クライ アントとサーバーもそれと同一のレベルにすることが必要となります。 IBM 製品 (DB2 OLAP スターター・キット) と Hyperion 製品 (Hyperion Essbase と Hyperion Integration Server) を混合して使用する IBM の OLAP クライアントおよびサーバーと Hyperion Solutions の OLAP クライアント およびサーバーを混合して使用する場合、IBM はサ ポートしません。一部の環境では上記のコンポーネントを混合して 使用 しても動作しますが、機構的に違いがあるために問題が発生する可能性 があります。 ------------------------------------------------------------------------ 29.11 OLAP スプレッドシート・アドイン EQD ファイルの欠落 DB2 OLAP スターター・キットでは、スプレッドシート・アドインは Query Designer (EQD) と呼ばれるコンポーネントを持っています。 チュートリアル と呼 ばれるボタンを含む EQD のオンライン・ヘルプ・メニューは どれも表示しませ ん。 EQD チュートリアルで表示される資料は 「OLAP スプレッドシート・アドイン 使用者の手引き (Excel 版) 」、および「OLAP スプレッドシート・アドイン使用者 の手引き (1-2-3 版) 」の第 2 章のサブセットです。EQD チュートリアルのすべて の情報は インフォメーション・センターの ブックの HTML バージョン および PDF バージョンで使用可能です。 ------------------------------------------------------------------------ 情報カタログ・マネージャー管理の手引き ------------------------------------------------------------------------ 30.1 情報カタログ・マネージャー初期設定ユーティリティー 30.1.1 情報カタログ・マネージャー (ICM) の初期化ユーティリティーでは、 以下のコマ ンドを使用して、CREATE TABLE ステートメントの終わりに SQL ステートメントを 付加できるようになりました。 CREATEIC \DBTYPE dbtype \DGNAME dgname \USERID userid \PASSWORD password \KA1 userid \TABOPT "directory:\tabopt.file" DB2 がインストールされているディレクトリーからは、 CREATEIC ユーティリティ ーで TABOPT キーワードを指定できます。 TABOPT キーワードの次の値は、全パス を含むファイル名 tabopt.file です。 ディレクトリー名にブランクが含まれてい る場合は、その名前を引用符で囲んでください。 tabopt.file ファイルの内容に は、 CREATE TABLE ステートメントに付加する情報が含まれていなければなりませ ん。 この tabopt.file ファイルへの書き込むを行うには、 下記の SQL ステート メントを使用してください。 ICM ユーティリティーはこのファイルを読み込み、 次にそれを CREATE TABLE ステートメントに付加します。 表 8. SQL ステートメント IN MYTABLESPACE MYTABLESPACE のデータを持つ表を作成します DATA CAPTURE CHANGES 表を作成して、SQL の変更を拡張形式でログに記 録します IN ACCOUNTING INDEX IN ACCOUNTING 内のデータおよび ACCOUNT_IDX 内の ACCOUNT_IDX 索引を持つ表を作成します コンテンツ・ファイルの最大サイズは 1 バイト文字にして 1000 文字です。 この新しい機能は Windows および UNIX システムでのみ使用可能です。 30.1.2 ライセンス交付の問題 以下のメッセージを受け取った場合: FLG0083E: IBM 情報カタログ・マネージャーに対して有効なライセンスを持っていません。 初期設定ユーティリティー。ソフトウェア販売店あるいは IBM に連絡してください。 DB2 ウェアハウス・マネージャーあるいは IBM DB2 OLAP Server を 購入して、情 報カタログ・マネージャー・コンポーネントをインストールする必要があります。 それは情報カタログ・マネージャー初期設定ユーティリティーを含んでいます。 30.1.3 インストールの問題 DB2 ウェアハウス・マネージャーあるいは IBM DB2 OLAP Server をインストールす る場合、 また同じワークステーションに別の情報カタログ・マネージャー管理者コ ンポーネント (DB2 ユニバーサル・データベース CD-ROM を使用) をインストール する場合は、情報カタログ初期設定 ユーティリティーを上書きする必要がありま す。 この場合、 \sqllib\bin ディレクトリーから、ファイル createic.bak およ び flgnmwcr.bak を検出し、createic.exe および flgnmwcr.exe をおのおのリネー ムします。 DB2 ユニバーサル・データベースから追加情報カタログ・マネージャーのコンポー ネントをインストール する場合、そのコンポーネントはデータウェアハウス・マネ ージャーをインストールしたワークステーションとは別のワークステーションであ る必要があります。詳しくは、「DB2 ウェアハウス・マネージャー・インストール の手引き」の 第 3 章、情報カタログ・マネージャー・コンポーネントのインスト ールを参照してください。 ------------------------------------------------------------------------ 30.2 情報カタログ・マネージャーの機能強化 情報カタログ・マネージャーには、次の機能強化が含まれています。 ICM では、ソースまたはターゲット・データベース、表または列用の ETI フィルタ ー情報のインポート がサポートされるようになりました。 ウェアハウスへの登録 時に、フィルター情報を保管するために、 新しい ICM オブジェクト・タイプ、ETI 変換データが使用されます。 これによって、 これらのオブジェクトは、ソースま たはターゲット・データベース、 あるいはそれが定義された表または列にリンクさ れます。 ICM は、異なる ETI 変換を同じ ICM カタログに登録した結果、 特定のソースまた はターゲット・データベース、 表または列を複数の ETI 変換データ・オブジェク トにリンクできます。 異なる ETI 変換を同じ ICM カタログに登録した結果、 特定のターゲット列が複数 のトランスフォーメーションを収容できるようになったので、 同じ機能がトランス フォーメーションにも適用されます。 このために、ICM は、ETI*Extract マッピン グ をインポートする際にトランスフォーメーションに変更を加えます。 これらのフィーチャーを使用可能にするには、ETI*Extract 4.2.1 を MetaScheduler 4.1.0 と併用 してデータウェアハウス・データウェアハウス・マネ ージャーに登録します。これらのフィーチャ ーを使用可能にする際の詳細について は、DB2 ウェアハウス・マネージャーの「ヒント」のセクショ ン ( http://www.ibm.com/software/data/db2/datawarehouse/support.html) を 参照し てください。 キーワード「ETI」または「アプリケーション・データ」で検索しま す。 ------------------------------------------------------------------------ 30.3 情報カタログ・マネージャー と Sybase の Windows 環境での非互換性 情報カタログ・マネージャー (ICM) バージョン 7 を Sybase Open Client ととも に、 同じ Windows NT または Windows 2000 マシンにインストールすると、エラー が起き、 Sybase ユーティリティーは機能を停止します。次のような エラー・メッ セージが出されます。 LIBTCL.DLL の初期設定に失敗しました。SYBASE 環境変数が 正しく設定されていることを確認してください。 このシナリオを回避するには、環境パラメーター LC_ALL を Windows 環境パラメー ターから 除去してください。LC_ALL はロケール・カテゴリー・パラメーターで す。ロケール・カテゴリーは、 プログラムにロケール情報のどの部分を使用させる かを指定するためにローカライズ・ルーチンが 使用するマニフェスト定数です。ロ ケールは、 プログラムの特定の性質をそれに合わせてカスタマイズできる、 局所 性 (国 / 地域) のことです。 ロケールに依存するのは、 たとえば日付の形式や通 貨単位の形式です。LC_ALL は、すべてのロケール (すべてのカテゴリー) 特有の 性質に影響を与えます。 ICM が Windows NT プラットフォームで Sybase と共存できるように LC_ALL 環境 パラメーターを 除去すると、以下の機能は使用できなくなります。 * 情報カタログ・ユーザー * 情報カタログ・アドミニストレーター * 情報カタログ・マネージャー LC_ALL パラメーターの除去により、ICM 以外の機能が影響を受けることはありませ ん。 ------------------------------------------------------------------------ 30.4 DB2 バージョン 7 情報カタログ・マネージャーによる DB2 バージョン 5 情 報カタログへのアクセス DB2 バージョン 7 情報カタログ・マネージャー・サブコンポーネント (DB2 バージ ョン 7 インストール・プロセスに よって構成) は DB2 バージョン 6 および DB2 バージョン 7 データベースに格納された情報カタログへの アクセスをサポートし ています。 サブコンポーネントの構成を修正して、DB2 バージョン 5 データベー スに保管されている情報カタログにアクセスできます。 DB2 バージョン 7 情報カ タログ・マネージャーの サブコンポーネントは、DB2 バージョン 2 またはそれ以 前のバージョンからのデータへの アクセスをサポートしません。 情報カタログ管理者、情報カタログ・ユーザー、および DB2 バージョン 5 データ ベースに 格納されている情報カタログにアクセスするための情報カタログ初期化ユ ーティリティーを セットアップするには: 1. DB2 コネクト エンタープライズ・エディション バージョン 6 を、 DB2 バー ジョン 7 情報カタログ・マネージャーがインストールされているワークステ ーション以外の ワークステーションにインストールします。 DB2 コネクト エンタープライズ・エディションは、DB2 ユニバーサル・デー タベース・エンタープライズ・エディション および DB2 ユニバーサル・デー タベース・エンタープライズ - 拡張エディションの一部として組み込まれて います。 これらの DB2 製品のいずれかのバージョン 6 がインストールされ ていれば、 別に DB2 コネクトをインストールする必要はありません。 制約事 同じ Windows NT または OS/2 ワークステーションに、DB2 の複 項: 数バージョンを インストールすることはできません。DB2 コネク トを別の Windows NT ワークステーション、 OS/2 または UNIX ワークステーションにインストールすることは可能です。 2. DB2 バージョン 5 のデータにアクセスするため、情報カタログ・マネージャ ー、 および DB2 コネクト バージョン 6 を構成します。詳しくは、「DB2 コ ネクト 使用者の手引き」を参照してください。以下のステップは必要なステ ップの概説です。 a. DB2 バージョン 5 システムで、DB2 コマンド行プロセッサーを使用し て、 情報カタログ・マネージャーがアクセスするバージョン 5 データ ベースをカタログします。 b. DB2 コネクト・システムで、DB2 コマンド行プロセッサーを使用して、 以下をカタログします。 + DB2 バージョン 5 システムの TCP/IP ノード + DB2 バージョン 5 システムのデータベース + DB2 バージョン 5 システムの DCS 項目 c. 情報カタログ・マネージャーを持つワークステーションで、DB2 コマン ド行プロセッサーを使用して、 以下をカタログします。 + DB2 コネクト・システムの TCP/IP ノード + DB2 コネクト・システムのデータベース データベースのカタログに関する詳細は、「DB2 ユニバーサル・データベース インストールおよび構成補足」を参照してください。 3. 情報カタログ・マネージャーを持つウェアハウスで、DB2 CLI パッケージを DB2 コネクトを介してアクセスされる各データベースにバインドします。 以下の DB2 コマンドは v5database、仮想の DB2 バージョン 5 データベース の例を示します。 DB2 コマンド行プロセッサーを使用して、以下のコマンド を実行します。 db2cli.lst および db2ajgrt は \sqllib\bnd ディレクトリ ーにあります。 db2 connect to v5database user userid using password db2 bind db2ajgrt.bnd db2 bind @db2cli.lst blocking all grant public ここで、userid は v5database のユーザー ID で、password はそのユーザー ID のパスワードです。 db2cli.list が DB2 バージョン 5 データベースにバインドされた時、エラー が起こります。このエラーは、ラージ・オブジェクト (LOB) がこの構成では サポートされていないために起こります。このエラーは、DB2 バージョン 5 データベースへのウェアハウス・エージェントのアクセスには影響しません。 DB2 ユニバーサル・ データベース バージョン 5 のフィックスパック 14 (2000 年 6 月、使用可能) は、 DB2 コネクトを介して DB2 バージョン 5 デ ータにアクセスする場合には必要です。 そのフィックスパックの APAR 番号 JR14507 を参照してください。 ------------------------------------------------------------------------ 30.5 情報カタログのセットアップ 第 1 章の最初のセクションにあるステップ 2 「情報カタログの設定」には次の記 述があります。 DB2 ウェアハウス・マネージャーまたは DB2 OLAP Server の いずれかをインストールした場合、Windows NT 版の DB2 ユニバーサル・データベースでは、デフォルト情報カタログが作成されます。 この記述は誤りです。 新規情報カタログを定義する必要があります。 詳しくは、 「情報カタログの作成」セクションを参照してください。 ------------------------------------------------------------------------ 30.6 別の製品とのメタデータの交換 第 6 章「別の製品とのメタデータ交換」の 「発行する OLAP オブジェクトの識 別」セクションの 2 番目の段落に、次の記述があります。 DB2 OLAP Integration Server メタデータを発行する場合、情報カタログ 「複数ディメンション・データベースのディメンション」オブジェクト・タイプと OLAP Integration Server の表オブジェクト間に、リンク関係が 作成されます。 記述: DB2 OLAP Integration Server メタデータを発行する場合、情報カタログ 「複数ディメンション・データベース・オブジェクトと表オブジェクト内の ディメンション」間にリンク関係が作成されます。 この記述は、 付録 C 「メタデータ・マッピング」の「情報カタログ・マネージャ ーおよび OLAP Server 間のメタデータ・マッピング」 セクションにもあります。 ------------------------------------------------------------------------ 30.7 flgnxoln コマンドでのメタデータの交換 第 6 章「メタデータ交換」に 「発行する OLAP オブジェクトの識別」というセク ションがあります。 このセクションの終わりに、flgnxoln コマンドを使用して OLAP Server メタデータを情報カタログに 発行する例があります。 誤った例え は、 db2olap.ctl および db2olap.ff ファイル用ディレクトリーを x:\Program Files\sqllib\logging として表示することです。 ディレクトリー名は x:\Program Files\sqllib\exchange です。87 ページで述べ られています。 ------------------------------------------------------------------------ 30.8 MDISDGC コマンドでのメタデータの交換 第 6 章 他の製品でメタデータの交換: 「タグ言語ファイルで MDIS 規格合致メタ データの変換」、97 ページ。 MS-DOS コマンド・プロンプトから MDISDGC コマン ドを実行できません。 DB2 コマンド・ウィンドウから MDISDGC コマンドを実行す る必要があります。セクションの 最初の文、「MDIS 規格合致メタデータのタグ言 語ファイルの変換」も同様に MS-DOS コマンド・プロンプトから DGMDISC コマンド を実行する必要があると書かれています。 DB2 コマンド・ウィンドウから DGMDISC コマンドを実行する必要があります。 ------------------------------------------------------------------------ 30.9 プログラムの呼び出し 「情報カタログ 管理の手引き」の例には、 ディレクトリー名 Program Files が含 まれるコマンドを示すものがあります。 パス名の一部として、Program Files が含 まれるプログラムを呼び出す時、 プログラム呼び出しを二重引用符で囲む必要があ ります。 付録 B 「事前定義の情報カタログ・マネージャーのオブジェクト・タイ プ」の、 「事前定義のオブジェクト・タイプで情報カタログを初期化する」 セク ションに、この例が含まれています。このセクションの例を使用すると、 DOS プロ ンプトからこれを実行する場合に、次のエラーを 受け取ります。次の例が正しいで す。 "X:Program Files\SQLLIB\SAMPLES\SAMPDATA\DGWDEMO" /T userid password dgname ------------------------------------------------------------------------ 情報カタログ・マネージャー・プログラミングの手引きおよび解説書 ------------------------------------------------------------------------ 31.1 情報カタログ・マネージャー理由コード 付録 D: 情報カタログ・マネージャー理由コードについて、 いくつかのテキストが 以下の理由コードで右方に離れた列が切り捨てられる可能性があります。 31014, 32727, 32728, 32729, 32730, 32735, 32736, 32737, 33000, 37507, 37511, 39206。テキストが切り捨てられた場合、完全な列を表示するブックの HTML バージ ョンを 参照してください。 ------------------------------------------------------------------------ 情報カタログ・マネージャー 使用者の手引き 第 2 章には、「サーバー・ノードおよびリモート情報カタログの 」というセクシ ョンがあります。 このセクションは、情報カタログ・マネージャーを使用して、リ モート情報カタログを 登録する前に、DB2 コントロール・センターから完了するこ とができる ステップをリストしています。セクションの最後の段落では、DB2 コン トロール・センターからの ステップが (システムの追加、インスタンスの追加、お よびデータベースの追加) が完了した 後で、情報カタログ・マネージャーを開く前 に、コントロール・センターを シャットダウンする必要があるとなっています。こ れは誤りです。情報カタログ・マネージャー を開く前に、コントロール・センター をシャットダウンする必要はありません。 同じ訂正が、オンライン・ヘルプのタスク「サーバー・ノードおよび リモート情報 カタログの登録」と、「サーバー・ノードおよび情報カタログ」ウィンドウの オン ライン・ヘルプにも該当します。 ------------------------------------------------------------------------ 情報カタログ・マネージャー: オンライン・メッセージ ------------------------------------------------------------------------ 33.1 FLG メッセージへの修正 33.1.1 メッセージ FLG0260E メッセージ説明の 2 番目の文: エラーにより情報カタログのロールバックが行われましたが、失敗しました。 その情報カタログは安定した状況ではありません。作成される変更はありません。 33.1.2 メッセージ FLG0051E メッセージ説明の 2 番目の中黒: 情報カタログ・マネージャーが持つオブジェクトまたはオブジェクト・タイプが 多すぎる。 管理者応答: インポート機能を使用して、現在の情報カタログ・マネージャーから オブジェクトあるいはオブジェクト・タイプをいくつか削除してください。 33.1.3 メッセージ FLG0003E メッセージ説明: 情報カタログ・マネージャーは、使用する前に登録されている必要があります。 情報カタログが正しく登録されていません。 33.1.4 メッセージ FLG0372E メッセージ説明の最初の文: オブジェクトが接続オブジェクトであるため、 ATTACHMENT-IND 値はオブジェクトに対して無視されました。 33.1.5 メッセージ FLG0615E メッセージの 2 番目の文は次のように訂正してください。 情報カタログ・マネージャーは予期しないデータベース・エラーを 検出したか、現行ディレクトリーまたはパスで、バインド・ファイル を検索できませんでした。 ------------------------------------------------------------------------ 情報カタログ・マネージャー: オンライン・ヘルプ 情報カタログ・ウィンドウ: 誤った選択メニュー・オープン・アイテムのオンライ ン・ヘルプは「選択済みオブジェクトのオープン」となっています。 それは「定義 検索ウィンドウのオープン」となります。 ------------------------------------------------------------------------ 34.1 Web 用情報カタログ・マネージャー DB2 UDB (OS/390 版) システムの情報カタログを使用する場合、大文字小文字を区 別しない検索は 利用できません。 これは単純検索および拡張機能検索のどちらに も当てはまります。 DB2 UDB (OS/390 版) 情報カタログですべての説明ができない オンライン・ヘルプは、 単純検索で大文字小文字を区別します。 さらに、たとえ 基礎オブジェクトがない場合でも、 すべてのグループ区分されているオブジェクト は拡張可能です。 ------------------------------------------------------------------------ DB2 ウェアハウス・マネージャー インストールの手引き ------------------------------------------------------------------------ 35.1 入手できる「DB2 ウェアハウス・マネージャー・インストールの手引き」の更 新 「DB2 ウェアハウス・マネージャー・インストールの手引き」は更新されていて、 最新 の .pdf は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンライン でダウンロードできます。 更新された資料は、すべて CD でも入手できます。この CD は、PTF 番号 U478862 を使用して、サービス を介して注文できます。これらの 注釈の情報は、更新された解説書への追加情報です。 ------------------------------------------------------------------------ 35.2 ウェアハウス・トランスフォーマーのソフトウェア要件 Java 開発者キット (JDK) バージョン 1.1.8 またはそれ以降を、 ウェアハウス・ トランスフォーマーを使用したいデータベースにインストールする必要がありま す。 ------------------------------------------------------------------------ 照会パトローラー管理の手引き ------------------------------------------------------------------------ 36.1 DB2 照会パトローラー・クライアントの分離コンポーネント DB2 照会パトローラー・クライアントは、DB2 管理クライアントの部品では ない分 離コンポーネントです。 これは、「照会パトローラー・インストールの手引き」に 指示されているように、 DB2 管理クライアントのインストール中にはインストール されないことを意味します。 その代わり、照会パトローラー・クライアントを別々 にインストールする必要があります。 照会パトローラー・クライアントと照会パトローラー・サーバーの バージョンおよ びレベルは同じでなければなりません。 ------------------------------------------------------------------------ 36.2 ノード状況の変更 「照会パトローラー管理の手引き」の「ノード管理」セクションで、 以下の内容が 更新されました。 ノード状況を変更するには、以下の手順にしたがってください。 1. 「ノード管理」ページで、「ノード」を選択します。 2. 「表示 / 編集」をクリックします。 「ノードの詳細情報」ウィンドウが開きます。 3. 「要求状況」フィールドで新規状況を選択します。 注:要求状況 は、「ノードの詳細情報」ウィンドウの中で、変更可能な唯一 のフィールドです。 その他のフィールドはすべて、DB2 クエリー・パト ローラーによって提供される値を表示しています。 4. 「OK」をクリックします。 以下のリストは、ノード・パラメーターごとの情報を提供します。 ノード ID ノードの ID を提供します。 ノード状況 現行ノード状況を含みます。 o 「アクティブ」は、ノードでジョブが実行可能であることを示します。 o 「非アクティブ」は、ノードの「DB2 クエリー・パトローラー」 コンポ ーネントがシャットダウンしていることを示します。ノードは DB2 クエ リー・パトローラーで利用不能です。ノードを 再びアクティブにするに は、iwm 管理ユーザー・アカウントを使用して dqpstart コマンドを発 行します。 o 「静止中」は、ノードが静止状態になろうとしていることを示します。 実行中のジョブは完了しますが、ノードでスケジュールされる新規ジョ ブはありません。 o 「静止」は、ノードが静止していることを示します。 ノードは DB2 ク エリー・パトローラーで使用可能ですが、そのノードにスケジュールさ れている新規ジョブはありません。 要求状況 ノード状況が以下の状況に変更されることを示します。 o 「アクティブ」は、ノードがアクティブになることを示します。 o 「非アクティブ」は、ノードが非アクティブになることを示します。 実 行中のジョブは完了し、スケジュールされる新規ジョブはありません。 o 「強制」は、ノードが即時に非アクティブになることを示します。実行 中のジョブは即時に終了し、スケジュールされる新規ジョブはありませ ん。 o 「静止」は、ノードが静止状態になることを示します。 実行中のジョブ は完了します。 状況の最終変更日時 ノード状況の最終変更日時を示します。 スケジュールされたジョブ 実行がスケジュールされたジョブ数と、このノードで実行中のジョブ数を提供 します。 CPU 使用率 ノードの CPU 使用率をパーセント (0 - 100) で提供します。 CPU 使用率情 報が収集されていない場合は、値は -1 です。 使用可能なディスク 結果が作成されるファイル・システム内の使用可能なバイト数を示します。 ディスク使用率がモニターされていない場合は、値は -1 です。 ノード・マネージャー PID ノード・マネージャー・プロセスのプロセス ID を示します。 ------------------------------------------------------------------------ 36.3 dqpmigrate を使用した DB2 照会パトローラーのバージョン 6 からの移行 dqpmigrate コマンドは、バージョン 7 照会パトローラー・サーバーが バージョン 6 照会パトローラー・サーバーの上にインストールされた場合に 使用する必要があ ります。フィックスパック 2 以降については、フィックスパックのインストールが このコマンドを実行するときに dqpmigrate を手操作で実行する必要はありませ ん。 このコマンドを使用しないと、v6 で定義された既存のユーザーは、バージョ ン 7 で 追加されたいくつかの新しいストアード・プロシージャーに対して EXECUTE 権限を 持ちません。 注:dqpmigrate.bnd は sqllib/bnd ディレクトリーに あり、dqpmigrate.exe は sqllib/bin ディレクトリーにあります。 dqpmigrate を手操作で使用し、EXECUTE 権限を付与するには、 フィックスパック の実行後に以下を実行してください。 1. 次のコマンドを入力して、/sqllib/bnd/dqpmigrate.bnd パッケージ・ファイ ルを、 照会パトローラー・サーバーがインストールされているデータベース にバインドします。 db2 bind dqpmigrate.bnd 2. 次を入力して、dqpmigrate を実行します。 dqpmigrate dbalias userid passwd ------------------------------------------------------------------------ 36.4 照会管理の使用可能化 「照会管理の使用可能化」の「概説およびインストール」の章では、テキストは以 下の通りです。 データベース構成パラメーターを設定するには、データベースの所有者であるか、 あるいは SYSADM、SYSCTRL または SYSMAINT 権限を持つ必要があります。 ------------------------------------------------------------------------ 36.5 制御表の表スペースのロケーション 第 1 章「システム概説」の「DB2 照会パトローラー制御表」で、 次のテキストを セクションの最初の段落の終わりに追加してください。 DB2 照会パトローラー制御表の表スペースが単一ノードのノード・グループに なけ れば、DB2 照会パトローラーは正常に機能しません。 ------------------------------------------------------------------------ 36.6 dqpstart コマンドの新しいパラメーター 第 2 章「概説およびインストール」の「DB2 照会パトローラーの開始および停止」 で、 最後の段落の後に次のテキストを追加してください。 dqpstart コマンドの新しいパラメーターは、以下の通りです。 RESTART パラメーター: dqpnodes.cfg ファイルにある指定のノードの ホスト名またはノード・タイ プ、あるいはその両方の置換をユーザーに許可します。 DB2 照会パトローラ ーはこのノードで開始されます。 注:DQPSTART コマンドを RESTART パラメーターを指定して実行する前に、 以下の項目を確認してください。 1. DB2 照会パトローラーが、置換されるホストですでに停止されてい る。 2. DB2 照会パトローラーが新しいホストでまだ実行されていない。 構文は次の通りです。 dqpstart nodenum node_num restart hostname server | agent | none ADDNODE パラメーター: dqpnodes.cfg ファイルへの新しいノードの追加をユーザーに許可します。 新 しいノード項目が dqpnodes.cfg ファイルに追加された後、このノードで DB2 照会パトローラーが開始されます。 構文は次の通りです。 dqpstart nodenum node_num addnode hostname server | agent | none DROPNODE パラメーター: dqnodes.cfg ファイルからのノードの削除をユーザーに許可します。 ノード 項目が dqpnodes.cfg ファイルから削除される前に、このノードで DB2 照会 パトローラーが停止されます。 構文は次の通りです。 dqpstop nodenum node_num dropnode ------------------------------------------------------------------------ 36.7 iwm_cmd コマンドの新しいパラメーター 新しい -v パラメーターが iwm_cmd コマンドに追加され、 指定のノードで実行さ れていたジョブの状況をリカバリーできるようになりました。 非アクティブ・ノー ドのジョブのみリカバリー可能です。 このコマンドは、ノード障害があり、そのノ ードでジョブが実行されているか、 またはその時点で取り消し中のジョブがあると きに実行してください。 「実行」状態だったジョブは再実行依頼され、「キュー」 状態に戻ります。 「取り消し中」状態だったジョブは「取り消し済み」状態に設定 されます。 構文の一部は次の通りです。 >>-iwm_cmd----+---------------------------------+---------------> '--u--user_id--+---------------+--' '--p--password--' >-----v--node_id_to_recover------------------------------------>< node_id_to_recover ジョブがリカバリーされるノードを指定します。 ------------------------------------------------------------------------ 36.8 新しいレジストリー変数: DQP_RECOVERY_INTERVAL iwm_scheduler がリカバリー・ファイルを検索する間隔を分単位で設定するために 使用される、 DQP_RECOVERY_INTERVAL という新しいレジストリー変数があります。 デフォルトは 60 分です。 ------------------------------------------------------------------------ 36.9 Query Administrator の開始 「DB2 照会パトローラーを管理する QueryAdministrator の使用」章では、 Windows のスタート・メニューから QueryAdministrator の開始の手順を 提供して います。最初のステップは以下のテキストを提供します。 Windows を使用している場合、DB2 クエリー・パトローラー --> QueryAdministrator を IBM DB2 プログラム・グループから選択できます。 テキストは以下の通りです。 DB2 クエリー・パトローラー --> QueryAdmin。 ------------------------------------------------------------------------ 36.10 ユーザー管理 「 DB2 照会パトローラーを管理する QueryAdministrator の使用」 章の「ユーザ ー管理」 セクションでは、最大経過時間のパラメーター定義において、値が 0 あ るいは -1 に設定されている場合、照会は常に完了まで実行することを示します。 このパラメーターは負の値にセットできません。 このテキストは、値が 0 にセッ トされる場合、照会は常に 完了まで実行することを示します。 最大照会パラメーターは DB2 照会パトローラーが同時に実行する ジョブの最大数 を指定します。 最大照会は 0 から 32767 の範囲の整数である必要があります。 ------------------------------------------------------------------------ 36.11 ジョブ・キューの作成 「DB2 照会パトローラーを管理する QueryAdministrator の使用」章の 「ジョブ・ キュー管理」セクションでは、「ジョブ・キューの作成」ステップの画面取りは 第 2 ステップ後に表示されます。 QueryAdministrator ツールのジョブ・キュー管理 ページで、 「新規」をクリックする場合、新しい「ジョブ・キュー」ウィンドウ についての情報が開きます。 ジョブ・キュー・ページあるいはジョブ・キュー・タブを参照するには、それぞれ ジョブ・キュー管理ページ あるいはジョブ・キュー管理タブを読んでください。 ------------------------------------------------------------------------ 36.12 コマンド行インターフェースの使用 DB2 照会パトローラー・システムで照会を実行以来および結果表を 作成するための ユーザー権限を持っている場合は、データベース上で CREATETAB 権限が必要と な ります。DQP_RES_TBLSPC プロファイル変数が未設定の場合か、あるいは DQP_RES_TBLSPC プロファイル変数がデフォルト表スペースの名前に設定されている 場合、 ユーザーはデータベースの CREATETAB 権限を必要としません。 ユーザーは デフォルト表スペースに表を作成するための権限を持っているので、 この場合は結 果表の作成は成功します。 ------------------------------------------------------------------------ 36.13 クエリー・イネーブラー注意事項 * キーセット・カーソルを使用する第三者の照会ツールを使用する場合、照会は インターセプトされません。 クエリー・イネーブラーに対して照会をインタ ーセプトするためには、 以下を含むために db2cli.ini ファイルを変更する 必要があります。 [common] DisableKeySetCursor=1 * AIX クライアントの場合、環境変数 LIBPATH がセットされないことを確認し てください。 JDK で出荷されているライブラリー libXext.a は、 /usr/lib/X11 サブディレクトリーの ライブラリーと互換性がありません。 クエリー・イネーブラー GUI で問題が起こります。 ------------------------------------------------------------------------ 36.14 ブランク列ページを返すことができる DB2 クエリー・パトローラー・トラッ カー フィックスパック 3 には DB2 照会パトローラー・トラッカーの修正が含まれてい ます。 トラッカーは、列にヒットしない照会を正しくレポートします。 このよう な照会の例としては、"SELECT COUNT(*) FROM ..." などがあります。 この種の照 会は、表にあるいずれの列にもヒットしません。 トラッカーは列ページとしてブラ ンク・ページを表示します。 このブランク列ページは不良とは見なされません。 ------------------------------------------------------------------------ 36.15 照会パトローラーおよびレプリケーション・ツール 照会パトローラー バージョン 7 はレプリケーション・ツール (asnapply、 asnccp、 djra、および analyze) の照会をインターセプトし、これらのツールに誤 動作を発生させます。 この問題を回避するには、これらのツールを実行するときは 動的照会管理を使用不可にします。 ------------------------------------------------------------------------ 36.16 クエリー・パトローラーのパフォーマンス改善 次のテキストが、第 6 章「パフォーマンスの調整」の末尾に表示される必要があり ます。 BIND オプション、INSERT BUF を使用して、DB2 クエリー・パトローラーのパフォ ーマンスを改善する デフォルトでは、DB2 クエリー・パトローラーは管理する照会の結果を保管するた めに、 結果表を作成します。 これらの結果表への挿入のパフォーマンスを改善す るために、DB2 クエリー・ パトローラー・バインド・ファイルのいずれかをバイン ドする際に、INSERT BUF オプションを 指定します。 次のようにして DB2 クエリー・パトローラー・バインド・ファイルをデータベース にバインドします。 Windows の DB2_RUNTIME\bnd ディレクトリーまたは、UNIX の DB2_RUNTIME/bnd パ スから、 次のコマンドを入力する。 db2 connect to database user iwm using password db2 bind @db2qp.lst blocking all grant public db2 bind iwmsx001.bnd insert buf db2 bind @db2qp_sp.lst db2 commit なお、database は、DB2 クエリー・パトローラーによって管理される 置き換えデ ータベースであり、password は、 管理ユーザー・アカウント iwm のパスワードで す。 ------------------------------------------------------------------------ 36.17 バージョン 6 で作成された照会パトローラー・ユーザー用の EXECUTE 特権 の消失 新規のストアード・プロシージャー (IWM.DQPGROUP、IWM.DQPVALUR、 IWM.DQPCALCT、および IWM.DQPINJOB) が 照会パトローラー バージョン 7 に追加 されたため、バージョン 6 で作成された既存の ユーザーは、このパッケージでの EXECUTE 権限を保持しません。 この問題を自動的に訂正するアプリケーションが、 フィックスパック 1 に追加されています。 DQP ユーザー情報を変更するために DQP Query Admin を使用しようとする 場合に は、ユーザー・リストから既存のユーザーを除去しないようにしてください。 ------------------------------------------------------------------------ 36.18 照会パトローラーの制約事項 JVM (Java 仮想計算機) のプラットフォーム制限により、照会イネーブラー は、 HP-UX および NUMA-Q ではサポートされていません。 また、照会パトローラー・ト ラッカーは NUMA-Q ではサポートされていません。 照会パトローラー・クライアン ト・ツールのすべてが必要な場合、 HP-UX または NUMA-Q サーバーに対して、この ツールを実行するには、Windows NT などの 別のプラットフォームを使用すること をお勧めします。 ------------------------------------------------------------------------ 36.19 付録 B. DB2 照会パトローラー・クライアントのトラブルシューティング 付録 B 「DB2 照会パトローラー・クライアントのトラブルシューティング」の 「照会イネーブラーの一般的な問題」章の問題 2 に記述されている 最初の中黒の テキストを次のテキストに置き換えてください。 パス設定に jre が含まれることを確認します。 ------------------------------------------------------------------------ アプリケーション開発 部分目次 * 管理 API 解説書 o 37.1 db2ArchiveLog (新規 API) + db2ArchiveLog o 37.2 db2ConvMonStream o 37.3 db2DatabasePing (新規 API) + db2DatabasePing - データベースの Ping o 37.4 db2HistData o 37.5 db2HistoryOpenScan o 37.6 db2XaGetInfo (新規 API) + db2XaGetInfo - リソース・マネージャー用情報の取得 o 37.7 db2XaListIndTrans (sqlxphqr を 入れ替える新規 API) + db2XaListIndTrans - 未確定トランザクションをリストする o 37.8 db2GetSnapshot - スナップショットの取得 o 37.9 ログ・レコードの喪失 o 37.10 sqlaintp - エラー・メッセージの取得 o 37.11 sqlbctcq - 表スペース・コンテナー照会のクローズ o 37.12 sqleseti - クライアント情報の設定 o 37.13 sqlubkp - データベースのバックアップ o 37.14 sqlureot - 表の再編成 o 37.15 sqlurestore - データベースのリストア o 37.16 AIX 拡張共有メモリー・サポートに関するドキュメンテーショ ン・エラー (EXTSHM) o 37.17 SQLFUPD + 37.17.1 locklist o 37.18 SQLEDBDESC * DB2 アプリケーション構築の手引き o 38.1 入手可能な更新 * アプリケーション開発の手引き o 39.1 入手可能な更新 o 39.2 IBM OLE DB Provider (DB2 UDB 版) * CLI の手引きおよび解説書 o 40.1 ランタイム・クライアントを使用するデータベース・ユーティリテ ィーのバインド o 40.2 CLI アプリケーションで静的 SQL の使用 o 40.3 JDBC/ODBC/CLI 静的プロファイル の制限 o 40.4 ADT トランスフォーム o 40.5 第 1 章 CLI の概要 + 40.5.1 DB2 CLI と組み込み SQL の相違 o 40.6 第 3 章 拡張フィーチャーの使用法 + 40.6.1 マルチスレッド・アプリケーションの書き込み + 40.6.2 DB2 CLI ユニコード・アプリケーションの作成 + 40.6.2.1 ユニコード関数 + 40.6.2.2 新しいデータ・タイプと有効な変換 + 40.6.2.3 古いキーワード/パッチ値 + 40.6.2.4 ユニコード・データベースのリテラル + 40.6.2.5 新しい CLI 構成キーワード + 40.6.3 トランザクション・モニターとしての Microsoft Transaction Server (MTS) + 40.6.4 スクロール可能カーソル + 40.6.4.1 サーバー側のスクロール可能カーソル・サポート (OS/390) + 40.6.5 複合 SQL の使用 + 40.6.6 ストアード・プロシージャーの使用 + 40.6.6.1 CLI でのストアード・プロシージャーの記述 + 40.6.6.2 CLI ストアード・プロシージャーおよび自動バイン ド o 40.7 第 4 章 CLI/ODBC の構成とサンプル・アプリケーションの実行 + 40.7.1 構成キーワード + 40.7.1.1 CURRENTFUNCTIONPATH + 40.7.1.2 SKIPTRACE o 40.8 第 5 章 DB2 CLI 関数 + 40.8.1 SQLBindFileToParam - LOB ファイル参照を LOB パラメー ターにバインド + 40.8.2 SQLColAttribute -- 列属性を戻す + 40.8.3 SQLGetInfo - 一般情報の取得 + 40.8.4 SQLGetLength - ストリング値の長さの検索 + 40.8.5 SQLNextResult - 次の結果セットを別のステートメント・ ハンドルに関連付ける + 40.8.5.1 目的 + 40.8.5.2 構文 + 40.8.5.3 関数の引き数 + 40.8.5.4 使用法 + 40.8.5.5 戻りコード + 40.8.5.6 診断 + 40.8.5.7 制約事項 + 40.8.5.8 参照 + 40.8.6 SQLSetEnvAttr - 環境属性の設定 + 40.8.7 SQLSetStmtAttr -- ステートメント関連のオプションの設 定 o 40.9 付録 C. DB2 CLI および ODBC + 40.9.1 ODBC ユニコード・アプリケーション + 40.9.1.1 ODBC ユニコードと非ユニコード・アプリケーショ ン o 40.10 付録 D 拡張スカラー関数 + 40.10.1 日時関数 o 40.11 付録 K DB2 CLI/ODBC/JDBC トレース機能の使用 * メッセージ解説書 o 41.1 入手可能な更新 o 41.2 メッセージの更新 + 41.2.1 SQL2554N 新規理由コード 12 + 41.2.2 追加の新規メッセージおよび SQLSTATE * SQL 解説書 o 42.1 入手可能な SQL 解説書 の更新 o 42.2 新しい関数とプロシージャーの使用可能化 o 42.3 MQSeries 情報 + 42.3.1 スカラー関数 + 42.3.1.1 MQPUBLISH + 42.3.1.2 MQREADCLOB + 42.3.1.3 MQRECEIVECLOB + 42.3.1.4 MQSEND + 42.3.2 表関数 + 42.3.2.1 MQREADALLCLOB + 42.3.2.2 MQRECEIVEALLCLOB + 42.3.3 MQSeries 関数でサポートされるようになった CLOB データ o 42.4 データ・タイプ情報 + 42.4.1 データ・タイプのプロモーション + 42.4.2 データ・タイプ間のキャスト + 42.4.3 割り当てと比較 + 42.4.3.1 ストリング割り当て + 42.4.3.2 ストリング比較 + 42.4.4 結果データ・タイプの規則 + 42.4.4.1 ユニコード・データベースの文字および漢字ストリ ング + 42.4.5 ストリング変換の規則 + 42.4.6 式 + 42.4.6.1 連結演算子 + 42.4.7 述部 o 42.5 ユニコード情報 + 42.5.1 スカラー関数およびユニコード o 42.6 ユニコード・データベースのより大きな索引キー + 42.6.1 ALTER TABLE + 42.6.2 CREATE INDEX + 42.6.3 CREATE TABLE o 42.7 GET DIAGNOSTICS ステートメントの追加オプション + GET DIAGNOSTICS ステートメント o 42.8 副選択内の ORDER BY + 42.8.1 全選択 + 42.8.2 副選択 + 42.8.3 order-by-clause + 42.8.4 select-statement + SELECT INTO ステートメント + 42.8.5 OLAP 関数 (window-order-clause) o 42.9 GET_ROUTINE_SAR プロシージャー用の新規入力引き数 o 42.10 SET INTEGRITY ステートメントに必要な許可 * ユニコード更新 o 43.1 入門 + 43.1.1 DB2 ユニコード・データベースおよびアプリケーション + 43.1.2 資料の更新 ------------------------------------------------------------------------ 管理 API 解説書 ------------------------------------------------------------------------ 37.1 db2ArchiveLog (新規 API) db2ArchiveLog 回復可能データベースのアクティブ・ログ・ファイルをクローズして切り捨てま す。 ユーザー出口が使用可能な場合にはアーカイブ要求を実行します。 権限 以下のいずれかとなります。 * sysadm * sysctrl * sysmaint * dbadm 必要な接続 この API は、指定されたデータベースへの接続を自動的に確立します。 指定され たデータベースへの接続がすでに確立されている場合、 API はエラーを返します。 版 db2ApiDf.h C API 構文 /* File: db2ApiDf.h */ /* API: Archive Active Log */ SQL_API_RC SQL_API_FN db2ArchiveLog ( db2Uint32 version, void *pDB2ArchiveLogStruct, struct sqlca * pSqlca); typedef struct { char *piDatabaseAlias; char *piUserName; char *piPassword; db2Uint16 iAllNodeFlag; db2Uint16 iNumNodes; SQL_PDB_NODE_TYPE *piNodeList; db2Uint32 iOptions; } db2ArchiveLogStruct 汎用 API 構文 /* File: db2ApiDf.h */ /* API: Archive Active Log */ SQL_API_RC SQL_API_FN db2gArchiveLog ( db2Uint32 version, void *pDB2ArchiveLogStruct, struct sqlca * pSqlca); typedef struct { db2Uint32 iAliasLen; db2Uint32 iUserNameLen; db2Uint32 iPasswordLen; char *piDatabaseAlias; char *piUserName; char *piPassword; db2Uint16 iAllNodeFlag; db2Uint16 iNumNodes; SQL_PDB_NODE_TYPE *piNodeList; db2Uint32 iOptions; } db2ArchiveLogStruct API パラメーター version 入力。 2 番目のパラメーターとして渡される変数 pDB2ArchiveLogStruct の バージョンおよびリリース・レベルを指定します。 pDB2ArchiveLogStruct 入力。db2ArchiveLogStruct 構造へのポインター。 pSqlca 出力。sqlca 構造へのポインター。 iAliasLen 入力。4 バイトの符号なし整数で、データベース別名の長さをバイト数で表し ます。 iUserNameLen ユーザー名の長さ (バイト単位) を表す 4 バイトの符号なし整数。 ユーザー 名を使用しない場合は、ゼロに設定してください。 iPasswordLen 入力。パスワードの長さ (バイト単位) を表す 4 バイトの符号なし整数。 パ スワードを使用しない場合、0 を設定します。 piDatabaseAlias 入力。アクティブ・ログのアーカイブが作成されるデータベースの データベ ース別名 (システム・データベース・ディレクトリーにカタログされているも の) を 含むストリング。 piUserName 入力。接続時に使用されるユーザー名を含むストリング。 piPassword 入力。接続を試みるときに使用されるパスワードを含むストリング。 iAllNodeFlag MPP のみ。入力。操作を db2nodes.cfg ファイルにリストされている すべて のノードに適用するかどうかを示すフラグ。有効な値は 以下の通りです。 DB2ARCHIVELOG_NODE_LIST piNodeList に渡されるノード・リストのノードに適用されます。 DB2ARCHIVELOG_ALL_NODES すべてのノードに適用されます。 piNodeList は NULL です。これがデ フォルト値です。 DB2ARCHIVELOG_ALL_EXCEPT piNodeList に渡されるノード・リストのノードを除くすべてのノードに 適用されます。 iNumNodes MPP のみ。入力。piNodeList 配列のノード数を指定します。 piNodeList MPP のみ。入力。アーカイブ・ログ操作を適用するノード番号の配列を指すポ インター。 iOptions 入力。将来の使用のために予約されています。 ------------------------------------------------------------------------ 37.2 db2ConvMonStream 使用上の注意の中で、スナップショット・データ・ストリーム・タイプの構造は、 SQLM_ELM_SUBSECTION は sqlm_subsection である必要があります。 ------------------------------------------------------------------------ 37.3 db2DatabasePing (新規 API) db2DatabasePing - データベースの Ping クライアントとデータベース・サーバーの間の基礎接続の ネットワーク応答時間を テストします。 この API は、ホスト・データベース・サーバーが、 直接またはゲ ートウェイ経由で DB2 コネクトからアクセスされるときに アプリケーションによ って使用されます。 権限 なし 必要な接続 データベース 版 db2ApiDf.h C API 構文 /* File: db2ApiDf.h */ /* API: Ping Database */ /* ... */ SQL_API_RC SQL_API_FN db2DatabasePing ( db2Uint32 versionNumber, void *pParmStruct, struct sqlca * pSqlca); /* ... */ typedef SQL_STRUCTURE db2DatabasePingStruct { char iDbAlias[SQL_ALIAS_SZ + 1]; db2Uint16 iNumIterations; db2Uint32 *poElapsedTime; } 汎用 API 構文 /* File: db2ApiDf.h */ /* API: Ping Database */ /* ... */ SQL_API_RC SQL_API_FN db2gDatabasePing ( db2Uint32 versionNumber, void *pParmStruct, struct sqlca * pSqlca); /* ... */ typedef SQL_STRUCTURE db2gDatabasePingStruct { db2Uint16 iDbAliasLength; char iDbAlias[SQL_ALIAS_SZ]; db2Uint16 iNumIterations; db2Uint32 *poElapsedTime; } API パラメーター versionNumber 入力。アプリケーションが使用している DB2 ユニバーサル・データベースま たは DB2 コネクト製品の バージョンとリリース番号を示します。 注:定数 db2Version710 あるいは それ以降が、DB2 バージョン 7.1 あるい はそれ以降に対して使用されます。 pParmStruct 入力。db2DatabasePingStruct 構造へのポインター。 iDbAliasLength 入力。データベース別名の長さを示します。 注:このパラメーターは 現在使用されていません。 将来の利用のために予 約してあります。 iDbAlias 入力。データベース別名を示します。 注:このパラメーターは 現在使用されていません。 将来の利用のために予 約してあります。 iNumIterations 入力。テスト要求反復数を示します。値は、 1 から 32767 までにしてくださ い。 poElapsedTime 出力。 エレメントの数が iNumIterations に等しい 32 ビット配列 へのポイ ンターを示します。配列の各エレメントには、 1 つのテスト要求反復用に、 マイクロ秒単位の経過時間が含まれます。 注:アプリケーションは、この API を呼び出す前に、この配列への メモリ ー割り振りについての責任を負います。 pSqlca 出力。 sqlca 構造へのポインター。 この構造体の詳細について詳しくは、管 理 API 解説書 をご覧ください。 使用上の注意 データベース接続は、この API を呼び出す前に存在している必要があります。存在 して いない場合、エラーが起きます。 この関数は、PING コマンドを使用して呼び出すこともできます。この コマンドの 説明については、コマンド解説書 をご覧ください。 ------------------------------------------------------------------------ 37.4 db2HistData 以下の項目を表 11 に追加する必要があります。 db2HistData 構造のフィールド: フィールド名 データ・タイプ 記述 oOperation char 表 12 を参照。 oOptype char 表 13 を参照。 以下の表が表 11 の後に追加されます。 表 12。db2HistData 構造内の oOperation の有効なイベント値。 値 記述 C 定義 COBOL/FORTRAN 定義 A 表ペースの DB2HISTORY_OP_ADD_TABLESPACE DB2HIST_OP_ADD_TABLESPACE 追加 B バックアッ DB2HISTORY_OP_BACKUP DB2HIST_OP_BACKUP プ C ロード・コ DB2HISTORY_OP_LOAD_COPY DB2HIST_OP_LOAD_COPY ピー D ドロップさ DB2HISTORY_OP_DROPPED_TABLE DB2HIST_OP_DROPPED_TABLE れた表 F ロールフォ DB2HISTORY_OP_ROLLFWD DB2HIST_OP_ROLLFWD ワード G 表の再編成 DB2HISTORY_OP_REORG DB2HIST_OP_REORG L ロード DB2HISTORY_OP_LOAD DB2HIST_OP_LOAD N 表スペース DB2HISTORY_OP_REN_TABLESPACE DB2HIST_OP_REN_TABLESPACE の名前変更 O 表スペース DB2HISTORY_OP_DROP_TABLESPACEDB2HIST_OP_DROP_TABLESPACE のドロップ Q 静止 DB2HISTORY_OP_QUIESCE DB2HIST_OP_QUIESCE R リストア DB2HISTORY_OP_RESTORE DB2HIST_OP_RESTORE S 統計の実行 DB2HISTORY_OP_RUNSTATS DB2HIST_OP_RUNSTATS T 表スペース DB2HISTORY_OP_ALT_TABLESPACE DB2HIST_OP_ALT_TBS の変更 U アンロード DB2HISTORY_OP_UNLOAD DB2HIST_OP_UNLOAD 以下の表も追加されます。 表 13。db2HistData 構造内の有効な oOptype 値。 oOperationoOptype 記述 C/COBOL/FORTRAN 定義 B F オフライン DB2HISTORY_OPTYPE_OFFLINE N オンライン DB2HISTORY_OPTYPE_ONLINE I 増分オフライン DB2HISTORY_OPTYPE_INCR_OFFLINE O 増分オンライン DB2HISTORY_OPTYPE_INCR_ONLINE D 差分オフライン DB2HISTORY_OPTYPE_DELTA_OFFLINE E 差分オンライン DB2HISTORY_OPTYPE_DELTA_ONLIN F E ログの終わり DB2HISTORY_OPTYPE_EOL P 時刻指定 DB2HISTORY_OPTYPE_PIT L I 挿入 DB2HISTORY_OPTYPE_INSERT R 置換 DB2HISTORY_OPTYPE_REPLACE Q S 静止共有 DB2HISTORY_OPTYPE_SHARE U 静止更新 DB2HISTORY_OPTYPE_UPDATE X 静止排他 DB2HISTORY_OPTYPE_EXCL Z 静止リセット DB2HISTORY_OPTYPE_RESET R F オフライン DB2HISTORY_OPTYPE_OFFLINE N オンライン DB2HISTORY_OPTYPE_ONLINE I 増分オフライン DB2HISTORY_OPTYPE_INCR_OFFLINE O 増分オンライン DB2HISTORY_OPTYPE_INCR_ONLINE T C コンテナーの追加 DB2HISTORY_OPTYPE_ADD_CONT R 再平衡 DB2HISTORY_OPTYPE_REB ------------------------------------------------------------------------ 37.5 db2HistoryOpenScan 以下の値が iCallerAction パラメーターに追加されます。 DB2HISTORY_LIST_CRT_TABLESPACE 他のフィルターを通過する CREATE TABLESPACE および DROP TABLESPACE レコ ードのみを選択します。 ------------------------------------------------------------------------ 37.6 db2XaGetInfo (新規 API) db2XaGetInfo - リソース・マネージャー用情報の取得 特定リソース・マネージャーの抽出情報は、一度 xa_open コールが行われました。 権限 なし 必要な接続 データベース 版 sqlxa.h C API 構文 /* File: sqlxa.h */ /* API: リソース・マネージャーの情報を取得する */ /* ... */ SQL_API_RC SQL_API_FN db2XaGetInfo ( db2Uint32 versionNumber, void * pParmStruct, struct sqlca * pSqlca); typedef SQL_STRUCTURE db2XaGetInfoStruct { db2int32 iRmid; struct sqlca oLastSqlca; } db2XaGetInfoStruct; API パラメーター versionNumber 入力。2 番目のパラメーター pParmStruct で渡されている構造の バージョン とリリース・レベルを指定します。 pParmStruct 入力。db2XaGetInfoStruct 構造へのポインター。 pSqlca 出力。 sqlca 構造へのポインター。 この構造体の詳細について詳しくは、管 理 API 解説書 をご覧ください。 iRmid 入力。情報が必要なリソース・マネージャーを指定します。 oLastSqlca 出力。 最後の XA API 呼び出しの sqlca を含んでいます。 注:最後に失敗した XA API から、結果として sqlca のみ検索することがで きます。 ------------------------------------------------------------------------ 37.7 db2XaListIndTrans (sqlxphqr を 入れ替える新規 API) db2XaListIndTrans - 未確定トランザクションをリストする 現在接続されているデータベースの全未確定トランザクションのリストを 提供しま す。 有効範囲 この API は、発行されたノードにだけ影響します。 権限 以下のいずれかとなります。 * sysadm * dbadm 必要な接続 データベース 版 db2ApiDf.h C API 構文 /* File: db2ApiDf.h */ /* API: 未確定トランザクションのリスト */ /* ... */ SQL_API_RC SQL_API_FN db2XaListIndTrans ( db2Uint32 versionNumber, void * pParmStruct, struct sqlca * pSqlca); typedef SQL_STRUCTURE db2XaListIndTransStruct { db2XaRecoverStruct * piIndoubtData; db2Uint32 iIndoubtDataLen; db2Uint32 oNumIndoubtsReturned; db2Uint32 oNumIndoubtsTotal; db2Uint32 oReqBufferLen; } db2XaListIndTransStruct; typedef SQL_STRUCTURE db2XaRecoverStruct { sqluint32 timestamp; SQLXA_XID xid; char dbalias[SQLXA_DBNAME_SZ]; char applid[SQLXA_APPLID_SZ]; char sequence_no[SQLXA_SEQ_SZ]; char auth_id[SQL_USERID_SZ]; char log_full; char connected; char indoubt_status; char originator; char reserved[8]; } db2XaRecoverStruct; API パラメーター versionNumber 入力。2 番目のパラメーター pParmStruct で渡されている構造の バージョン とリリース・レベルを指定します。 pParmStruct 入力。db2XaListIndTransStruct 構造へのポインター。 pSqlca 出力。 sqlca 構造へのポインター。 この構造体の詳細について詳しくは、管 理 API 解説書 をご覧ください。 piIndoubtData 入力。未確定データのバッファーを提供したアプリケーションへのポインター が、 返されます。未確定データは db2XaRecoverStruct の形式です。アプリ ケーションは db2XaRecoverStruct 構造のサイズを使用し、このパラメーター により提供されたアドレスで始動することで 未確定トランザクションのリス トを traverse することができます。 その値が NULL の場合、DB2 は必要なバッファーのサイズを計算し、 oReqBufferLen でのこの値を返します。oNumIndoubtsTotal は未確定トランザ クションの数の合計を 含んでいます。 このアプリケーションは、必要なバッ ファー・サイズを割り振り、 API を再度発行します。 oNumIndoubtsReturned 出力。 未確定トランザクション・レコードの数は、pIndoubtData で指定され た バッファーに返されます。 oNumIndoubtsTotal 出力。 未確定トランザクション・レコードの合計数は、API 呼び出し時に 使 用可能です。 piIndoubtData バッファーがすべてのレコードを含めるのに小 さすぎる 場合は、oNumIndoubtsTotal が oNumIndoubtsReturned の合計を 超 えます。 アプリケーションはすべてのレコードを取得するために、API を再 発行 する場合があります。 注:この数は、未確定トランザクションが自動的に、もしくは試行錯誤的に 繰り返し同期化しようとした結果、または他のトランザクションが未確 認状態に入った結果として、 API 呼び出しの間で変化する場合がありま す。 oReqBufferLen 出力。 API 呼び出し時に、すべての未確定トランザクション・レコードを保 留できる バッファー長が要求されました。アプリケーションはこの値を、 pIndoubtData の設定を NULL にした API 呼び出しにより、必要なバッファ ー・サイズを決定するために使用します。 この値は、その結果、必要なバッ ファーを割り振るために使用できるので、割り振られた バッファーのアドレ スへの pIndoubtData 設定で、API を発行することができます。 注:必須のバッファー・サイズは、未確定トランザクションが自動的に、も しくは試行錯誤的に 繰り返し同期化しようとした結果、または他のトラ ンザクションが未確認状態に入った結果として、 API 呼び出しの間で変 化する場合があります。アプリケーションは これらを計算に入れて大規 模なバッファーを割り振る場合があります。 timestamp 出力。 トランザクションが未確定状態に入った時点で、時刻を 指定します。 xid 出力。 グローバル・トランザクションを一意的に識別するためのトランザク ション・マネージャーにより 割り当てられた XA ID を指定します。 dbalias 出力。 未確定トランザクションが検出されたデータベースの別名を指定 しま す。 applid 出力。 このトランザクションのデータベース・マネージャーにより割り当て られた アプリケーション ID を指定します。 sequence_no 出力。 applid の拡張版としてデータベース・マネージャーに割り当てられた シーケンス番号を指定します。 auth_id 出力。 トランザクションを実行するユーザーの許可 ID を指定します。 log_full 出力。 ログのフル状態がこのトランザクションが原因かどうか指示 します。 有効な値は 以下の通りです。 SQLXA_TRUE この未確定トランザクションがログのフル状態の原因となっています。 SQLXA_FALSE この未確定トランザクションはログのフル状態の原因になっていませ ん。 connected 出力。 アプリケーションが接続されているかどうか指示します。有効な値は 以下の通りです。 SQLXA_TRUE このトランザクションは、通常同期点処理を実行中で、2 フェーズ・コ ミットの 第 2 フェーズを待機しています。 SQLXA_FALSE このトランザクションは、早期の障害により未確定のままであり、現在 は トランザクション・マネージャーからの再同期化を待機しています。 indoubt_status 出力。 この未確定トランザクションの状況を指示します。 有効な値は 以下 の通りです。 SQLXA_TS_PREP このトランザクションは準備済みです。 この接続パラメーターは、トラ ンザクションが 通常コミット・プロセスの第 2 フェーズを待機してい るのか、エラーが発生し、 トランザクション・マネージャーが要求した 再同期化を行っているのか 判定するために使用することができます。 SQLXA_TS_HCOM このトランザクションは、試行錯誤的にコミットされました。 SQLXA_TS_HROL このトランザクションは試行錯誤的にロールバックされました。 SQLXA_TS_MACK このトランザクションは区分に分割されたデータベース内の 1 つのノー ドから コミットの承認が未着です。 SQLXA_TS_END このトランザクションはこのデータベースで終了しています。このトラ ンザクションは 後で再活動化、コミット、ロールバックなどをする場合 があります。またトランザクションが エラーになった場合、トランザク ションが完了しなかった場合でも 可能です。これがそのケースの場合、 このトランザクションは、試行錯誤の処置を要求します。 それは、トラ ンザクションがロックしたままになったり、データ・アクセスが他のア プリケーションの妨げ になる場合があるためです。 使用上の注意 通常のアプリケーションは、データベースもしくは 分割データベース座標ノードへ の現行接続を設定した後、以下のステップを実行 します。 1. piIndoubtData に NULL をセットして db2XaListIndTrans をコールします。 これは oReqBufferLen と oNumIndoubtsTotal で値を返します。 2. バッファーを割り振るため、oReqBufferLen で戻り値を使用します。 このバ ッファーは 追加の未確定トランザクションがあると、大きさが十分でない場 合があります。それは、 oReqBufferLen を取得するための API の初期呼び出 しのためです。このアプリケーションは oReqBufferLen より大きなバッファ ーを提供する場合があります。 3. すべての未確定トランザクション・レコードが取得されたか決定します。これ は oNumIndoubtsReturned と oNumIndoubtTotal の比較により行うことができ ます。oNumIndoubtsTotal が oNumIndoubtsReturned より大きい場合、アプリ ケーションは以上のステップを繰り返すことが できます。 参照項目 管理 API 解説書 に「sqlxhfrg - トランザクション状態の喪失」、「sqlxphcm - 未確定トランザクションのコミット」、 および「sqlxphrl - 未確定トランザクシ ョンのロールバック」があります。 ------------------------------------------------------------------------ 37.8 db2GetSnapshot - スナップショットの取得 db2GetSnapshot API の構文は以下のように表記します。 int db2GetSnapshot( unsigned char version; db2GetSnapshotData *data, struct sqlca *sqlca); データに記述されるパラメーターは以下の通りです。 typedef struct db2GetSnapshotData{ sqlma *piSqlmaData; sqlm_collected *poCollectedData void *poBuffer; db2uint32 iVersion; db2int32 iBufferSize; db2uint8 iStoreResult; db2uint16 iNodeNumber; db2uint32 *poOutputFormat; }db2GetSnapshotData; ------------------------------------------------------------------------ 37.9 ログ・レコードの喪失 以下の情報は、「MPP 従属ノードの準備」セクションの「付録 F」に追加されま す。 このログ・レコードは、未確定トランザクションのロールバック後、または 2 フェ ーズ・コミットの コミット後に書き込まれます。ログ・レコードは、トランザクシ ョンの終わりにマークを付けるために 書き込まれ、保持されているログ・リソース を解放します。トランザクションを喪失するためには、 トランザクションが手操作 で完了した状態になっている必要があります。 表 9. ログ・レコード構造の喪失 記述 タイプ オフセット (バイト単位) ログ・ヘッダー LogManagerLogRecordHeader 0(20) time sqluint64 20(8) 全長: 28 バイト ------------------------------------------------------------------------ 37.10 sqlaintp - エラー・メッセージの取得 以下の使用上の注意はこの API の説明に追加されます。 マルチスレッド・アプリケーションでは、sqlaintp は有効なコンテキストに 付加されている必要があります。 そうでなければ、SQLCODE -1445 のメッセージ・テキストを取得できません。 ------------------------------------------------------------------------ 37.11 sqlbctcq - 表スペース・コンテナー照会のクローズ ロードはこの API の有効な許可レベルではありません。 ------------------------------------------------------------------------ 37.12 sqleseti - クライアント情報の設定 この API によって提供されるデータ値には、SQL 特殊レジスターによるアクセスも 可能です。 これらのレジスターに入れられる値は、データベース・コード・ページ の形で保管されます。 この API によって提供されるデータ値は、特殊レジスター に保管される前に データベース・コード・ページに変換されます。 データベー ス・コード・ページへの変換後のサイズがサポートされる最大サイズを超えている データ値は、 サーバー上で保管される前に切り捨てられます。 特殊レジスターか ら戻されるのは、これらの切り捨て後の値です。 オリジナルのデータ値もサーバー 上で保管されます。それらはデータベース・コード・ページには 変換されません。 変換されていない値を戻させるには、sqleqryi API を 呼び出します。 ------------------------------------------------------------------------ 37.13 sqlubkp - データベースのバックアップ BackupType パラメーターの場合、 SQLUB_FULL 値が SQLUB_DB に置き換えられま す。 データベース内のすべての表スペースのバックアップが行われます。 新しい増分バックアップ機能をサポートするために、 SQLUB_INCREMENTAL および SQLUB_DELTA パラメーターも追加されます。 増分バックアップ・イメージとは、最 新の正常な全バックアップ以降に変更された すべてのデータベース・データのコピ ーです。 差分バックアップ・イメージとは、任意のタイプについての最新の正常な バックアップ以降に 変更されたすべてのデータベース・データのコピーです。 ------------------------------------------------------------------------ 37.14 sqlureot - 表の再編成 以下の文が使用上の注意に追加されます。 REORGANIZE TABLE は、索引拡張子に基づく索引を使用できません。 ------------------------------------------------------------------------ 37.15 sqlurestore - データベースのリストア RestoreType パラメーターの場合、 SQLUD_FULL 値が SQLUD_DB に置き換えられま す。 データベース内のすべての表のリストアが行われます。これはオフラインで実 行されます。 新しい増分リストア機能をサポートするために、 SQLUD_INCREMENTAL パラメーター も追加されます。 増分バックアップ・イメージとは、最新の正常な全バックアップ以降に変更された すべてのデータベース・データのコピーです。 ------------------------------------------------------------------------ 37.16 AIX 拡張共有メモリー・サポートに関するドキュメンテーション・エラー (EXTSHM) 「付録 E 並行アクセスを行うスレッド化アプリケーション」の注 2 は 次のように 変更されます。 2. デフォルトでは、AIX は 32 ビット・アプリケーションがプロセスあたり 11 を 超えるメモリー・セグメントに接続することを許可していません。ローカル DB2 接 続に使用できるのは 最大 10 までです。 DB2 で EXTSHM を使用するには、次のようにします。 クライアント・セッション内: export EXTSHM=ON DB2 サーバーの始動時 : export EXTSHM=ON db2set DB2ENVLIST=EXTSHM db2start EEE 上で、sqllib/db2profile に以下の行を追加してください。 EXTSHM=ON export EXTSHM ------------------------------------------------------------------------ 37.17 SQLFUPD 37.17.1 locklist トークンの名前は SQLF_DBTN_LOCKLIST から SQLF_DBTN_LOCK_LIST に変更されまし た。 locklist パラメーターは SMALLINT から 64 ビットの符号なし INTEGER に変 更されました。 更新可能データベース構成パラメーターの表に以下が追加されまし た。 パラメーター名 トークン トークン値 データ・タイプ locklist SQLF_DBTN_LOCK_LIST 704 Uint64 このパラメーターの新しい最大値は 524 288 です。 さらに、「第 3 章 データ構造」の表 53、更新可能データベース構成パラメーター に リストされている dbheap のトークン値 701 は誤りです。 正しい値は 58 で す。 ------------------------------------------------------------------------ 37.18 SQLEDBDESC SQLDBCSS (sqlenv に定義された) の有効値のリストに 2 つの値が追加されます。 追加される値は以下の通りです。 SQL_CS_SYSTEM_NLSCHAR 文字タイプに対して NLS バージョンの比較ルーチンを使用するシステムから の照合シーケンス。 SQL_CS_USER_NLSCHAR 文字タイプに対して NLS バージョンの比較ルーチンを使用するユーザーから の照合シーケンス。 ------------------------------------------------------------------------ DB2 アプリケーション構築の手引き ------------------------------------------------------------------------ 38.1 入手可能な更新 「DB2 アプリケーション構築の手引き」はフィックスパック 4 の一部として更新さ れ、最新の PDF は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンライン でダウンロードできます。更新された資料は、 すべて CD でも入手できます。 こ の CD は、PTF 番号 U478862 を使用して、DB2 サービス を介して注文できます。 DB2 サービスへの連絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ アプリケーション開発の手引き ------------------------------------------------------------------------ 39.1 入手可能な更新 「アプリケーション開発の手引き」はフィックスパック 4 の一部として更新され、 最新の PDF は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンラインでダウンロードできます。 これらの注釈の情報は、 更新された解 説書への追加情報です。 更新された資料は、 すべて CD でも入手できます。 この CD は、PTF 番号 U478862 を使用して、DB2 サービス を介して注文できます。 DB2 サービスへの連絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 39.2 IBM OLE DB Provider (DB2 UDB 版) IBM OLE DB Provider (DB2 版) の使用法についての詳細は、 http://www.ibm.com/software/data/db2/udb/ad/v71/oledb.html を参照してくださ い。 ------------------------------------------------------------------------ CLI の手引きおよび解説書 ------------------------------------------------------------------------ 40.1 ランタイム・クライアントを使用するデータベース・ユーティリティーのバイ ンド ランタイム・クライアントを使用して、データベース・ユーティリティー (インポ ート、エクスポート、 REORG、コマンド行プロセッサー)、および DB2 CLI バイン ド・ファイルを、データベースとともに使用する前に 各データベースにバインドす ることはできません。 DB2 管理クライアントまたは DB2 アプリケーション開発ク ライアントを使用する必要があります。 データベース・ユーティリティーおよび DB2 CLI バインド・ファイルを、 各デー タベースとともに使用する前にそれらのデータベースにバインドしなければなりま せん。 ネットワーク環境では、異なるオペレーティング・システムで実行している 複数のクライアントを使用しているか、または異なるバージョンやサービス・レベ ルの DB2 を使用している場合、各オペレーティング・システムと DB2 のバージョ ンの 組み合わせに対して、ユーティリティーを一度ずつバインドしなければなりま せん。 ------------------------------------------------------------------------ 40.2 CLI アプリケーションで静的 SQL の使用 CLI アプリケーションでの静的 SQL の使用について、詳しくは以下の Web ページ をご覧ください。 http://www.ibm.com/software/data/db2/udb/staticcli/ ------------------------------------------------------------------------ 40.3 JDBC/ODBC/CLI 静的プロファイル の制限 JDBC/ODBC/CLI 静的プロファイルは、現在、簡単なアプリケーションをターゲット としています。 多くの機能内容や、実行中の複雑なプログラム・ロジックが複雑な アプリケーションを意味しているわけではありません。 SQL ステートメントは、プロファイル・セッションで取り込まれている間、 正常に 実行する必要があります。マッチング・セッションでは、アンマッチの動的ステー トメントは 動的 JDBC/ODBC/CLI コールとして実行が継続します。 SQL ステートメントはステートメント・マッチングで有効な候補であるには 取り込 まれたり、バインドされたりしたステートメントが文字単位で等しくならなければ なりません。スペース は有効です。たとえば、"COL = 1" は "COL=1" と異なると 見なされます。 一致するヒット数を増やすため、リテラルのインプレースでパラメ ーター・マーカーを 使用します。 事前バインドの静的 SQL ステートメントがあるアプリケーションを実行する際、 動的ステートメントの振る舞いを制御するレジスターは静的に変換された ステート メントの影響を受けません。 アプリケーションが後続の DML ステートメントを参照するオブジェクトに DDL を 実行する場合、取り込んだファイルの中でこれらのステートメントをすべて 検索で きます。JDBC/ODBC/CLI 静的プロファイル・バインド・ツールがそれらをバインド しようと します。バインドの試みは、VALIDATE(RUN) バインド・オプションをサポ ートする DBMS では 成功しますが、そうでないものは失敗します。このケースで は、 アプリケーションは静的プロファイルを使用する必要があります。 データベース管理者は、アプリケーション固有の要求に応じて、SQL ステートメン トを追加、 変更、除去するためのキャプチャー・ファイルを編集することができま す。 ------------------------------------------------------------------------ 40.4 ADT トランスフォーム 以下の記述を、ブックの既存の情報と置き換えてください。 * 新規記述子タイプ (smallint) SQL_DESC_USER_DEFINED_TYPE_CODE が 次の値 と一緒にあります。 SQL_TYPE_BASE 0 (これは USER_DEFINED_TYPE ではありません) SQL_TYPE_DISTINCT 1 SQL_TYPE_STRUCTURED 2 この値は SQLColAttribute または SQLGetDescField (IRD のみ) のいずれかで 照会できます。 以下の属性が実際のタイプ名を取得するのに追加されます。 SQL_DESC_REFERENCE_TYPE SQL_DESC_STRUCTURED_TYPE SQL_DESC_USER_TYPE この値は SQLColAttribute または SQLGetDescField (IRD のみ) のいずれかで 照会できます。 * アプリケーションで必要になった場合のために、SQL_DESC_BASE_TYPE を追加 します。 たとえば、アプリケーションは構造化タイプを認識しないかもしれ ませんが、 フェッチあるいは挿入を試み、他のコードで詳細を扱うようにす るかもしれません。 * SQL_ATTR_TRANSFORM_GROUP という新規接続属性を追加し、 アプリケーション で ("SET CURRENT DEFAULT TRANSFORM GROUP" ステートメントではなく) トラ ンスフォーム・グループを設定できるようになります。 * SQLSetConnectAttr を使用して設定または照会できる SQL_ATTR_RETURN_USER_DEFINED_TYPES という 新規ステートメント / 接続を 追加し、CLI が 値 SQL_DESC_USER_DEFINED_TYPE_CODE を有効な SQL タイプ として 戻すようにします。 この属性は、トランスフォームを行う前に必要で す。 o デフォルトで属性はオフであり、基本タイプ情報は SQL タイプとして 戻されます。 o 使用可能な場合、SQL_DESC_USER_DEFINED_TYPE_CODE が SQL_TYPE とし て戻されます。 アプリケーションは SQL_DESC_USER_DEFINED_TYPE_CODE を検査し、 適切なタイプ名を検索するようになっています。 これは、 SQLColAttribute、SQLDescribeCol、および SQLGetDescField で使用可 能です。 * SQLBindParameter は SQL_C_DEFAULT をバインドするときに エラーを返しま せん。タイプ SQL_USER_DEFINED_TYPE を指定する SQLBindParameter を許可 するコードはないためです。 サーバーへのベース SQL タイプに基づいて、標 準デフォルト C タイプが使用されます。 例: sqlrc = SQLBindParameter (hstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_VARCHAR, 30, 0, &c2, 30, NULL); ------------------------------------------------------------------------ 40.5 第 1 章 CLI の概要 40.5.1 DB2 CLI と組み込み SQL の相違 「DB2 CLI を使用する利点」セクションのリストの最後から 3 番目の項目は無視し てください。 正しい情報は次の通りです。 DB2 CLI を使用すると、DB2 ユニバーサル・データベース・サーバー、DB2 (MVS/ESA 版) サーバー (バージョン 5 以降)、 または OS/400 サーバー (バージ ョン 5 以降) に常駐しているストアード・プロシージャーから 生成された複数の 行および結果セットを検索できます。 OS/400 で複数結果セットの検索がサポート されるようにするためには、当該のサーバー に PTF (プログラム一時修正) SI01761 を適用する必要があります。 OS/400 システム管理者に連絡して、この PTF が適用済みであるかどうかを確認してください。 ------------------------------------------------------------------------ 40.6 第 3 章 拡張フィーチャーの使用法 40.6.1 マルチスレッド・アプリケーションの書き込み 以下を「Multi-Threaded Mixed Applications」セクションの終わりに追加します。 注:デフォルトのスタック・サイズを使用せずに、スタック・サイズを 少なくと も 256 000 に増やすことをお勧めします。DB2 では、DB2 関数の呼び出し時 に 必要な最小スタック・サイズは 256 000 です。したがって、お使いのアプ リケーションと、 DB2 関数呼び出し時の最小要件の両方を十分に満たす合計 スタック・サイズが割り当てられている ことを確認する必要があります。 40.6.2 DB2 CLI ユニコード・アプリケーションの作成 以下は、この章の新しいセクションです。 DB2 CLI ユニコード・アプリケーションのサポート領域には次の 2 つがあります。 1. ANSI ストリング引き数の代わりにユニコード・ストリング引き数を受け入れ 可能な 関数のセットの追加。 2. ANSI またはユニコード・データとしてデータを記述する、新しい C および SQL データ・ タイプの追加。以下のセクションは、これらの領域の両方につ いての詳細を提供します。 ユニコード・アプリケーションと認識されるため には、アプリケーションは接続を行う前に、 SQL_ATTR_ANSI_APP 接続属性を SQL_AA_FALSE に設定する必要があります。これにより、 CLI はユニコード・ クライアントとして接続し、ユニコード・データはすべて、 CHAR データでは UTF-8、GRAPHIC データでは UCS-2 で送信されます。 40.6.2.1 ユニコード関数 以下は、ユニコード (W) および ANSI (A) の両方をサポートする ODBC API 関数の リストです (ユニコードの関数名には W が付きます)。 SQLBrowseConnect SQLForeignKeys SQLPrimaryKeys SQLColAttribute SQLGetConnectAttr SQLProcedureColumns SQLColAttributes SQLGetConnectOption SQLProcedures SQLColumnPrivileges SQLGetCursorName SQLSetConnectAttr SQLColumns SQLGetDescField SQLSetConnectOption SQLConnect SQLGetDescRec SQLSetCursorName SQLDataSources SQLGetDiagField SQLSetDescField SQLDescribeCol SQLGetDiagRec SQLSetStmtAttr SQLDriverConnect SQLGetInfo SQLSpecialColumns SQLDrivers SQLGetStmtAttr SQLStatistics SQLError SQLNativeSQL SQLTablePrivileges SQLExecDirect SQLPrepare SQLTables 常にストリング長引き数を返す、または取得するユニコード関数は、文字数の カウ ントとして渡されます。サーバー・データに対して長さの情報を返す関数では、 表 示サイズは文字の数で示されます。長さ (データの転送サイズ) がストリングまた は ストリング以外のデータを参照するときは、長さはオクテット長で示されます。 たとえば、SQLGetInfoW は長さをバイト・カウントとして取りますが、 SQLExecDirectW は 文字数のカウントを使用します。CLI は結果セットを、アプリ ケーションのバインドに 応じてユニコードまたは ANSI で返します。アプリケーシ ョンが SQL_C_CHAR にバインドする 場合、ドライバーは SQL_WCHAR データを SQL_CHAR に変換します。ドライバー・マネージャーは、 ANSI ドライバーについて は SQL_C_WCHAR を SQL_C_CHAR にマップしますが、ユニコード・ ドライバーにつ いてはマッピングを行いません。 40.6.2.2 新しいデータ・タイプと有効な変換 2 つの新しい CLI または ODBC 定義のデータ・タイプ、SQL_C_WCHAR および SQL_WCHAR が あります。SQL_C_WCHAR は、C バッファーに UCS-2 データが含まれ ていることを指示します。 SQL_WCHAR は、特定の列またはパラメーター・マーカー にユニコード・データが含まれて いることを指示します。DB2 ユニコード・サーバ ーの場合、漢字列は SQL_WCHAR として 記述されます。漢字データ間で行われるの と同様に、SQL_C_WCHAR と SQL_CHAR、 SQL_LONGVARCHAR と SQL_CLOB の間で変換 が行われます。 表 10. サポートされるデータ変換 S S Q Q L S S L _ Q Q _ C L L C S S _ _ _ _ Q Q T C C D S L L Y _ _ B S Q S _ _ P S S C B C S Q S S L S Q C C M Q Q L L L Q L S Q S Q _ Q L _ _ _ L L O O O L _ Q L Q L C L _ T T T _ S _ B B B _ C L _ L _ _ _ C Y Y I C Q C _ _ _ C _ _ C _ C T C _ P P M _ L _ L L L _ N C _ C _ I _ D M M M B _ D O O O B U _ W _ S N F O _ _ S I C B C C C I M C C L H Y L U D T T N _ C A A A G M H H O O I O B A I A A B H T T T I A SQL データ・ A A N A N A L T M M A I A O O O N I タイプ A A G T T T M M M P Y T A A A A T C BLOB X X D X CHAR D X X X X X X X X X X X X X CLOB D X X X DATE X X D X DBCLOB X X D X DECIMAL D X X X X X X X X X X DOUBLE X X X X X X D X X X FLOAT X X X X X X D X X X GRAPHIC X X D (非ユニコード) GRAPHIC X X X X X X X X X X X X D X (ユニコード) INTEGER X X D X X X X X X X LONG D X X VARCHAR LONG X X X D VARGRAPHIC (非ユニコード) LONG X X X D VARGRAPHIC (ユニコード) NUMERIC D X X X X X X X X REAL X X X X X D X X X SMALLINT X X X D X X X X X X BIGINT X X X X X X X X X D X TIME X X D X TIMESTAMP X X X X D VARCHAR D X X X X X X X X X X X X X VARGRAPHIC X X D (非ユニコード) VARGRAPHIC X X X X X X X X X X X X D X (ユニコード) 注:D 変換がサポートされています。これは SQL データ・タイプのデフォルト 変換です。 X IBM DBMS はすべて変換をサポートしています。 ブランク IBM DBMS は変換をサポートしていません。 * データは LOB ロケーター・タイプに変換されません。ロケーターは デ ータ値を表示します。詳しくは、「ラージ・オブジェクトの使用」を参 照してください。 * SQL_C_NUMERIC は、32 ビット Windows オペレーティング・システムで のみ 使用可能です。 40.6.2.3 古いキーワード/パッチ値 ユニコード・アプリケーションがサポートされるようになるまでは、GRAPHIC=1、 2、また は 3 や Patch2=7 といった一連の cli ini ファイル・キーワードによっ て、 単一バイト文字データの操作用に作成されたアプリケーションが 2 バイト漢 字データを操作できるように していました。 これらの回避策では、漢字データを 文字データとして表示しており、 報告されるデータの長さにも影響が出ました。 これらのキーワードは、ユニコード・アプリケーションの場合には不要であり、 さ らに潜在的な副次作用を持つ危険性があるため、使用しないようにしてください。 あるアプリケーションがユニコード・ アプリケーションかどうかがわからない場合 は、漢字データの処理に影響する キーワードなしで試してみることをお勧めしま す。 40.6.2.4 ユニコード・データベースのリテラル 非ユニコード・データベースでは、LONG VARGRAPHIC および LONG VARCHAR 列のデ ータは 比較できません。 GRAPHIC/VARGRAPHIC および CHAR/VARCHAR 列のデータ は、 比較のみが可能か、または暗黙的コード・ページ変換がサポートされていない ため、 明示的な cast 関数を使用して相互に割り当てることができます。 これに は、GRAPHIC/VARGRAPHIC リテラルが G 接頭部によって CHAR/VARCHAR と 区別され る、GRAPHIC/VARGRAPHIC および CHAR/VARCHAR が含まれます。 ユニコード・データベースについては、GRAPHIC/VARGRAPHIC および CHAR/VARCHAR リテラル間の キャストは不要です。また、G 接頭部は GRAPHIC/VARGRAPHIC リテラ ルの 前には必要ありません。少なくとも 1 つの引き数がリテラルの場合、暗黙的 変換が 行われます。これにより、リテラルは G 接頭部を持っていても持っていな くても、 SQLPrepareW() または SQLExecDirect() を使用するステートメント内で 使用することが できます。LONG VARGRAPHIC のリテラルには G 接頭部が必要で す。 詳しくは、SQL 解説書 の「第 3 章、言語エレメント」の「データ・タイプ間のキ ャスト」を参照してください。 40.6.2.5 新しい CLI 構成キーワード ユニコード・アプリケーションがデータベースに接続するときに余分なオーバーヘ ッドを 避けるために、次の 3 つのキーワードが追加されました。 1. DisableUnicode キーワードの説明: ユニコードのサポートを使用不可にします。 db2cli.ini キーワード構文 DisableUnicode = 0 | 1 デフォルト設定 0 (false) DB2 CLI/ODBC 設定タブ: このキーワードは CLI/ODBC 設定ノートブックで設定することはできま せん。 このキーワードを 使用するためには、db2cli.ini ファイルを直 接変更する必要があります。 使用上の注意: ユニコード・サポートが使用可能になっている場合、ユニコード・アプリケー ションから 呼び出されると、CLI はコード・ページ変換による不要なデータ 損失のないように、 最適なクライアント・コード・ページを使用してデータ ベースに接続しようとします。 そのために、コード・ページ交換のために接 続時間が増加するか、またはこのサポートが追加されるまでは 行われていな かったクライアントでのコード・ページ変換が行われる可能性があります。 このキーワードを true に設定すると、すべてのユニコード・データは 最初 に (サーバーに送信される前に) アプリケーションのローカル・コード・ペー ジに変換されます。 このことが原因で、ローカル・コード・ページでは表示 できないデータが失われることがあります。 2. ConnectCodepage キーワードの説明: 余分な接続オーバーヘッドを避けるために、データ・ソースへの接続時 に使用する 特定のコード・ページを指定します。 db2cli.ini キーワード構文 ConnectCodepage = 0 | 1 <任意の 有効な db2 コード・ページ> デフォルト設定 0 DB2 CLI/ODBC 設定タブ: このキーワードは CLI/ODBC 設定ノートブックで設定することはできま せん。 このキーワードを使用するためには、db2cli.ini ファイルを直 接編集する必要があります。 使用上の注意: 非ユニコード・アプリケーションは、データベースへの接続時には常にそのア プリケーションの ローカル・コード・ページか DB2Codepage 環境設定を使用 します。デフォルトでは、CLI により、 ユニコード・アプリケーションはユ ニコード・データベースへの接続時には常に UTF-8 およ び UCS-2 コード・ ページを使用し、非ユニコード・データベースへの接続時には常にそのデータ ベースの コード・ページを使用するようになっています。これにより、コー ド・ページ変換による 不要なデータ損失が確実に回避されます。 このキーワードを使用すれば、非ユニコード・データベースに 接続するとき にはそのデータベースのコード・ページを指定して、接続時に余分なオーバー ヘッドが 生じないようにできます。 値 1 を 指定すると、SQLDriverConnect() は出力接続ストリングに正しい値 を返します。 これにより値を以降の SQLDriverConnect() 呼び出しで使用す ることができます。 3. UnicodeServer キーワードの説明: データ・ソースがユニコード・サーバーであることを指示します。 ConnectCodepage=1208 の 設定と同じです。 db2cli.ini キーワード構文 UnicodeServer = 0 | 1 デフォルト設定 0 DB2 CLI/ODBC 設定タブ: このキーワードは CLI/ODBC 設定ノートブックで設定することはできま せん。 このキーワードを 使用するためには、db2cli.ini ファイルを直 接変更する必要があります。 使用上の注意: このキーワードは ConnectCodepage=1208 と同じもので、便宜上追加されたも のです。 DB2 (OS/390 版) バージョン 7 またはそれ以降に接続するときの余 分な接続オーバーヘッドを 避けるためにこのキーワードを設定してくださ い。DB2 (Windows 版)、DB2 (Unix 版)、 または DB2 (OS/2 版) について は、余分な処理が必要にならないため、このキーワードを 設定する必要はあ りません。 40.6.3 トランザクション・モニターとしての Microsoft Transaction Server (MTS) 「インストールおよび構成」サブセクションに記載されている DISABLEMULTITHREAD 構成キーワードの デフォルト値は、次のように訂正されます。 * DISABLEMULTITHREAD キーワード (デフォルトは 0) 40.6.4 スクロール可能カーソル 以下の情報は「スクロール可能カーソル」セクションに追加されています。 40.6.4.1 サーバー側のスクロール可能カーソル・サポート (OS/390) Unix、Windows、および OS/2 プラットフォームの UDB クライアントは、 OS/390 バージョン 7 データベースに対して実行されるとき、 更新可能なサーバー側のス クロール可能カーソルをサポートします。 3 階層環境で OS/390 スクロール可能カ ーソルにアクセスするには、 クライアントおよびゲートウェイが DB2 UDB バージ ョン 7.1 フィックスパック 3 またはそれ以降を 実行している必要があります。 スクロール可能カーソルにアクセスできる アプリケーション使用可能化インターフ ェースには、 ODBC と JDBC の 2 つがあります。 JDBC インターフェースは、静的 スクロール可能カーソルにのみアクセスすることが可能で、 ODBC インターフェー スは、静的およびキーセット・ドリブンの サーバー側スクロール可能カーソルにア クセスすることが可能です。 カーソル属性 下の表では、ODBC での OS/390 バージョン 7 カーソルの デフォルト属性をリスト します。 表 11. ODBC での OS/390 カーソルの デフォルト属性 カーソル・ タ カーソル感度 カーソル 更新 カーソル並列 カーソル・ スク イプ 可能 性 ロール可能 フォワードのみ 未指定 更新不可 読み取り専用 スクロール不可 a 並列性 静的 反映不可 更新不可 読み取り専用 スクロール可能 並列性 キーセット・ド 反映可能 更新可能 値並列性 スクロール可能 リブン a フォワードのみは、FOR UPDATE 文節を使用しない スクロール可能カーソ ルのデフォルトの振る舞いです。 フォワードのみカーソルで FOR UPDATE を指定すると、 更新可能、ロック並列性、スクロール不可のカーソルが作 成されます。 サポートされているフェッチ方向 すべての ODBC フェッチ方向が SQLFetchScroll または SQLExtendedFetch インタ ーフェースで サポートされます。 キーセット・ドリブン・カーソルの更新 キーセット・ドリブン・カーソルは更新可能なカーソルです。 照会が SELECT ... FOR READ ONLY として 実行されている場合、または FOR UPDATE 文節がすでに 指 定されている場合を除いて、CLI ドライバーは FOR UPDATE 文節を 照会に追加しま す。 DB2 (OS/390 版) に実装されたキーセット・ドリブン・カーソルは、値並列性 カーソルです。 値並列性カーソルを使用するとオプティミスティック・ロックにな ります。 更新または削除が試行されるまでロックは行われません。 更新または削 除が試行されると、データベース・サーバーは、アプリケーションが検索した 以前 の値を基礎表の現行値と比較します。 値が一致する場合、更新または削除は成功し ます。 値が一致しない場合、操作は失敗します。 失敗した場合、アプリケーショ ンは値をもう一度照会して、 まだ適用可能であれば更新または削除を再実行しま す。 アプリケーションはキーセット・ドリブン・カーソルを以下の 2 つの方法で更新す ることができます。 * SQLExecute() または SQLExecDirect() とともに SQLPrepare() を 使用し て、UPDATE WHERE CURRENT OF "" または DELETE WHERE CURRENT OF "" を 実行します。 * SQLSetPos() または SQLBulkOperations() を使用して、 結果セットに対して 行の更新、削除、または追加を行います。 注:SQLSetPos() または SQLBulkOperations() 経由で 結果セットに追加さ れた行は、サーバー上の表に挿入されますが、サーバーの結果セットに は追加されません。 したがって、このような行は更新されず、 別のト ランザクションが行った変更も反映されません。 ただし、挿入された行 は、クライアント側でキャッシュされるため、結果セットの一部のよう に見えます。 挿入された行に適用されるトリガーは、アプリケーション 側からは適用されていないように見えます。 挿入された行を更新可能お よび反映可能にし、適用可能なトリガーの結果を参照するには、 アプリ ケーションで照会を再実行して、結果セットを再生成する必要がありま す。 スクロール可能カーソル・サポートの前に作成されたアプリケーションの障害追及 スクロール可能カーソル・サポートは新しい機能であるため、 UDB (OS/390 版) ま たは UDB (Unix 版、Windows 版、および OS/2 版) の前のリリースを 使用してい た一部の ODBC アプリケーションでは、振る舞いまたはパフォーマンスが変わる 可 能性があります。 スクロール可能カーソルを要求したアプリケーションは、 スク ロール可能カーソルがサポートされる前は フォワードのみカーソルを受け取ってい たために、 このようなことが起こります。 スクロール可能カーソル・サポート前 のアプリケーションの振る舞いをリストアするには、 次の構成キーワードを db2cli.ini ファイルに設定します。 表 12. スクロール可能カーソル・サポート前のアプリケーションの振る舞いをリス トアする 構成キーワード値 構成キーワード設定 記述 PATCH2=6 スクロール可能カーソル (キーセット・ ドリブンおよび静的) がサポートされて いない というメッセージを返します。 CLI は、スクロール可能カーソルの要求 をフォワードのみカーソルに 自動的にダ ウングレードします。 DisableKeysetCursor=1 サーバー側とクライアント側の両方のキ ーセット・ドリブン・スクロール可能カ ーソルを使用不可にします。 これは、キ ーセット・ドリブン・カーソルが要求さ れたときに、CLI ドライバーによって ア プリケーションが静的カーソルを提供す ることを強制するために使用されます。 UseServerKeysetCursor=0 クライアント側のキーセット・ドリブ ン・カーソル・ライブラリーを使用して キーセット・ドリブン・カーソルをシミ ュレートするアプリケーションに対して サーバー側の キーセット・ドリブン・カ ーソルを使用不可にします。 サーバー側 のキーセット・ドリブン・カーソルで問 題が発生した場合のみ、このオプション を使用します。 クライアント側のカーソ ルは大量のオーバーヘッドを発生させ、 通常、サーバー側のカーソルよりパフォ ーマンスが劣ってしまうためです。 40.6.5 複合 SQL の使用 以下の注釈がブックから欠落しています。 動的に準備可能な照会以外の任意の SQL ステートメントは、 複合ステートメント内のステートメントとして実行できます。 注釈: アトミック複合 SQL 内で、保管点、リリース保管点、および SQL ステートメントの保管点へのロールバックは許可されていません。 一方、アトミック 複合 SQL は保管点では許可されていません。 40.6.6 ストアード・プロシージャーの使用 40.6.6.1 CLI でのストアード・プロシージャーの記述 以下は、CLI ストアード・プロシージャーで文書化されていない制限です。 複数 CLI ストアード・プロシージャーへの呼び出しを行う場合、 次のストアード・プロシージャーを呼び出す前に、アプリケーションは ストアード・プロシージャーからオープン・カーソルをクローズする 必要があります。具体的には、オープン・カーソルの最初のセットを、 次のストアード・プロシージャーがカーソルをオープンしようとする前に、 クローズする必要があります。 40.6.6.2 CLI ストアード・プロシージャーおよび自動バインド 以下は、ブックの補足情報です。 CLI/ODBC ドライバーは、CLI/ODBC アプリケーションが、データベースに対して SQL を 初めて実行した時に、ユーザーに適切な特権または許可がある 場合、CLI パッケージを自動バインドします。CLI パッケージの自動バインドは、 ストアー ド・プロシージャー内から実行できません。そのため、アプリケーションが最初に 行うことが CLI ストアード・プロシージャーの呼び出しである場合、この自動バイ ンドは起きません。新しい DB2 データベースに対して CLI ストアード・プロシー ジャーを呼び出す CLI アプリケーションを実行する前に、 次のコマンドで、一度 CLI パッケージをバインドする必要があります。 UNIX db2 bind /@db2cli.lst blocking all Windows および OS/2 db2bind "%DB2PATH%\bnd\@db2cli.lst" blocking お勧めするアプローチとしては、データベースが、実行時に自動バインドするのを 回避する ために作成される時に、このパッケージを常にバインドする方法がありま す。自動バインドは、ユーザーに 特権がない場合、または別のアプリケーションが 同時に自動バインドを行っている場合には失敗します。 ------------------------------------------------------------------------ 40.7 第 4 章 CLI/ODBC の構成とサンプル・アプリケーションの実行 40.7.1 構成キーワード 40.7.1.1 CURRENTFUNCTIONPATH CURRENTFUNCTIONPATH キーワードの最後の段落は無視してください。 正しい情報は 次の通りです。 このキーワードは、現行ユーザーのスキーマ以外のスキーマ名に定義されている 非 修飾関数およびストアード・プロシージャー参照を解決するためのプロセスの一部 として使用されます。 スキーマ名の順序は、関数名とプロシージャー名が解決され る順序を決定します。 関数およびプロシージャーの解決について詳しくは、「SQL 解説書」を参照してください。 40.7.1.2 SKIPTRACE 新規構成キーワードを以下で説明します。 キーワードの説明: CLI アプリケーションがトレース機能から除外されるのを許可します。 db2cli.ini キーワード構文 SKIPTRACE = 0 | 1 デフォルト設定 トレース機能をスキップしません。 DB2 CLI/ODBC 設定タブ: このキーワードは CLI/ODBC 設定ノートブックで設定することはできません。 このキーワードを使用するためには、db2cli.ini ファイルを直接編集する必 要があります。 使用上の注意: このキーワードを使用すると、トレース機能が CLI アプリケーションをバイ パスするのを許可することにより、パフォーマンスを向上させることができま す。したがって、DB2 トレース機能 db2trc をオンにし、このキーワードを 1 に設定すると、トレースには CLI アプリケーションの実行の情報は含まれま せん。 トレース情報を必要としない UNIX プラットフォーム上の実稼働環境には、 SKIPTRACE をオンにすることをお勧めします。テスト環境ではトレース出力が 役立つこともあるので、詳細な実行の情報を必要とする場合は、このキーワー ドをオフにする (あるいはデフォルト設定のままにする) ことができます。 SKIPTRACE は、db2cli.ini 構成ファイルの [COMMON] セクションで設定され なければなりません。 ------------------------------------------------------------------------ 40.8 第 5 章 DB2 CLI 関数 40.8.1 SQLBindFileToParam - LOB ファイル参照を LOB パラメーターにバインド SQLBindFileToParam() CLI 関数の最後のパラメーター、IndicatorValue は 現在 「出力 (据え置き)」と書かれています。 これは 「入力 (据え置き)」となりま す。 40.8.2 SQLColAttribute -- 列属性を戻す 以下の更新事項が引き数 SQL_DESC_AUTO_UNIQUE_VALUE および SQL_DESC_UPDATABLE の「説明」欄に 追加されます。 SQL_DESC_AUTO_UNIQUE_VALUE どの DB2 SQL データ・タイプの場合でも、NumericAttributePtr に は SQL_FALSE が戻されます。常に SQL_FALSE が戻されるのは、現在 DB2 CLI は ある列が一致列かどうかを 判別できないからです。この制限は、ODBC 仕様に 完全には準拠していないためのものです。 UNIX および Windows サーバー版 DB2 CLI の将来のバージョンでは、 自動固有化がサポートされるようになり ます。 SQL_DESC_UPDATABLE 列データ・タイプが更新可能データ・タイプかどうかを指示します。 o どの DB2 SQL データ・タイプの場合でも、NumericAttributePtr に は SQL_ATTR_READWRITE_UNKNOWN が戻されます。これが戻されるのは、現在 DB2 CLI はある列が 更新可能かどうかを判別できないからです。 UNIX および Windows サーバー版 DB2 CLI の将来のバージョンでは、 ある列 が更新可能かどうかを判別できるようになります。 40.8.3 SQLGetInfo - 一般情報の取得 「SQLGetInfo によって戻される情報」の下の「使用法」セクションに記載されてい る情報は、 次のように訂正されます。 SQL_DATABASE_NAME (ストリング) 使用中の現行データベースの名前。 注:このストリングは、非ホスト・システム で SELECT CURRENT SERVER ス テートメントによって戻されるのと同じものです。 DB2 (OS/390 版) や DB2 (OS/400 版) のようなホスト・データベースの場合は、戻されるス トリング は DCS データベース名 (DB2 コネクト・ゲートウェイでの CATALOG DCS DATABASE DIRECTORY コマンドの 発行時に指定されたもの) です。 40.8.4 SQLGetLength - ストリング値の長さの検索 表 113「SQLGetLength の引き数」の脚注は、次のように訂正されます。 注 : a これには DBCLOB データ用の文字が使用されます。 40.8.5 SQLNextResult - 次の結果セットを別のステートメント・ハンドルに関連付 ける 次のテキストが第 5 章、「DB2 CLI 関数」に追加されました。 40.8.5.1 目的 仕様: DB2 CLI 7.x 40.8.5.2 構文 SQLRETURN SQLNextResult (SQLHSTMT StatementHandle1 SQLHSTMT StatementHandle2); 40.8.5.3 関数の引き数 表 13. SQLNextResult 引き数 データ・タイ プ 引き数 使用 記述 SQLHSTMT StatementHandle 入力 ステートメント・ハンドル。 SQLHSTMT StatementHandle 入力 ステートメント・ハンドル。 40.8.5.4 使用法 ストアード・プロシージャーは、終了後にカーソルをオープンしたままにしておく ことで、 複数の結果セットを返します。最初の結果セットは常に、ストアード・プ ロシージャーを 呼び出したステートメント・ハンドルを使用することによってアク セスされます。複数の 結果セットが返される場合、SQLMoreResults() または SQLNextResult()を 使用して結果セットを記述およびフェッチすることができま す。 SQLMoreResults() は、最初の結果セット用にカーソルをクローズし、 次の結果セ ットを処理するために使用されます。SQLNextResult() は、 StatementHandle1 に あるカーソルをクローズせずに、次の結果セットを StatementHandle2 に移動しま す。どちらの関数も、フェッチする結果セットが ない場合は、SQL_NO_DATA_FOUND を返します。 SQLNextResult() を使用すると、他のステートメント・ハンドルに転送された 順序 で結果セットを処理することができます。StatementHandle1 にカーソル (オープン 結果セット) がなくなるまで、SQLMoreResults() および SQLNextResult() に 対す る混合呼び出しが可能です。 SQLNextResult() が SQL_SUCCESS を返すとき、次の結果セットは StatementHandle1 との関連はなくなります。代わりに次の結果セットは、 SQLExecDirect() の呼び出しが StatementHandle2 での照会を 正常に実行したよう に、StatementHandle2 と関連付けられます。このため カーソルは、 SQLNumResultSets()、SQLDescribeCol()、 または SQLColAttribute() を使用して 記述することができます。 SQLNextResult() が呼び出された後、StatementHandle2 に 関連付けられた結果セ ットは残りの結果セットのチェーンから除去され、 SQLNextResult() または SQLMoreResults() で使用できません。 このことは、'n' 個の結果セットについて SQLNextResult() を最大 'n-1' 回 正常に呼び出すことができることを示していま す。 SQLFreeStmt() が SQL_CLOSE オプション指定で呼び出されるか、 または SQLFreeHandle() が HandleType を SQL_HANDLE_STMT に 設定して呼び出される と、このステートメント・ハンドルで保留された結果セットは すべて廃棄されま す。 SQLNextResult() は、StatementHandle2 がオープン・カーソルを 持っているか、 または StatementHandle1 と StatementHandle2 が 同じ接続にない場合は、 SQL_ERROR を返します。エラーまたは警告が返されない場合、 SQLError() は常に StatementHandle1 で呼び出されているはずです。 注:SQLMoreResults() はまた、 SQLParamOptions() および SQLBindParameter() で指定された 入力パラメーター値の配列を使用してパラメーター化照会を操 作します。 ただし SQLNextResult() はこれをサポートしません。 40.8.5.5 戻りコード * SQL_SUCCESS * SQL_SUCCESS_WITH_INFO * SQL_STILL_EXECUTING * SQL_ERROR * SQL_INVALID_HANDLE * SQL_NO_DATA_FOUND 40.8.5.6 診断 表 14. SQLNextResult SQLSTATEs SQLSTATE 記述 説明 40003 通信リンク障害。 アプリケーションとデータ・ソース間の通信リ 08S01 ンクに、関数の完了前に障害が起きました。 58004 予期しないシステム障回復不能システム・エラー。 害。 HY001 メモリー割り振り失 DB2 CLI が、関数の実行または完了をサポート 敗。 するために必要なメモリーを 割り振れません。 HY010 関数シーケンス・エラdata-at-execute (SQLParamData(), ー。 SQLPutData()) 操作中に 関数が呼び出されまし た。 StatementHandle2 は、関連付けられたオープ ン・カーソルを 持っています。 BEGIN COMPOUND および END COMPOUND SQL 操作 中に関数が呼び出されました。 HY013 予期しないメモリー・DB2 CLI が、関数の実行または完了をサポート ハンドリング・エラ するために必要なメモリーを アクセスできませ ー。 んでした。 HYT00 タイムアウト満了。 データ・ソースが結果セットを返す前にタイム アウト期間が満了しました。タイムアウトは、 Windows 3.1 や Macintosh System 7 などの非 マルチタスク・システムでのみサポートされま す。 タイムアウト期間は SQLSetConnectAttr() の SQL_ATTR_QUERY_TIMEOUT 属性を使用して 設 定することができます。 40.8.5.7 制約事項 SQLMoreResults() だけがパラメーター化照会に使用できます。 40.8.5.8 参照 * 525 ページの 「SQLMoreResults - 結果セットが他にもあるかを判別してくだ さい」 * 120 ページの 「ストアード・プロシージャーから返される結果セット」 40.8.6 SQLSetEnvAttr - 環境属性の設定 以下は、「使用法」の「環境属性」セクションの追加の環境属性です。 SQL_ATTR_KEEPCTX 環境ハンドルがフリーの場合にコンテキストを保持するかどうかを指定する 32 ビット整数値です。この属性は、環境レベルにおいて設定される必要があ ります。 複数スレッド・アプリケーションが、各スレッドの接続、データベ ース・リソース、 およびデータ伝送に関連したコンテキストを管理するのに 使用されます。 可能な値は以下の通りです。 o SQL_FALSE: スレッドの環境ハンドルがフリーになったときに アプリケ ーションはコンテキストを解放します。これがデフォルト値です。 o SQL_TRUE: スレッドの環境ハンドルがフリーになったときに、コンテキ ストは同じ接続にある 他の既存のスレッドに使用可能であり、コンテキ ストは有効なままです。SQL_ATTR_KEEPCTX を SQL_TRUE に設定すると、 複数スレッド・アプリケーションにおける 競合コンテキストに関連した 問題をいくつか解決できます。 注:これは IBM 拡張です。 40.8.7 SQLSetStmtAttr -- ステートメント関連のオプションの設定 ステートメント属性 SQL_ATTR_QUERY_TIMEOUT に関する既存の情報は、 以下の情報 に置き換えられます。 SQL_ATTR_QUERY_TIMEOUT (DB2 CLI v2) SQL ステートメントの実行を何秒待ったらアプリケーションに制御を戻すかに ついて、 その秒数を表す 32 ビット整数値。 このオプションは、実行時間の 長い照会を終了させるために設定および使用できます。 値 0 は、タイムアウ トにならないことを意味します。 DB2 CLI は、マルチスレッド化をサポート するすべてのプラットフォームで非ゼロ値をサポートします。 ------------------------------------------------------------------------ 40.9 付録 C. DB2 CLI および ODBC 以下の新しいセクションがこの付録に追加されました。 40.9.1 ODBC ユニコード・アプリケーション ユニコード ODBC アプリケーションは、主に UCS-2 で文字を検索します。これ は、ODBC 関数のユニコード・バージョン (接尾部「W」を持つもの) を呼び出して ユニコード・データ・タイプを指定するという方法で行われます。アプリケーショ ンはローカル・コード・ページを明示的に 指定しません。それでもアプリケーショ ンは ANSI 関数を呼び出し、ローカル・コード・ページ・ ストリングを渡すことが できます。 たとえば、アプリケーションは SQLConnectW() を呼び出し、DSN、ユーザー ID、お よび パスワードをユニコード引き数として渡すことができます。次にアプリケーシ ョンは、 SQLExecDirectW() を呼び出し、ユニコード SQL ステートメント・ストリ ングを渡し、 ANSI ローカル・コード・ページ・バッファー (SQL_C_CHAR) および ユニコード・ バッファー (SQL_C_WCHAR) の組み合わせをバインドします。データ ベース・データ・ タイプはローカル・コード・ページ、または UCS-2 と UTF-8 に なります。 CLI アプリケーションが SQLConnectW を呼び出すか、または SQL_ATTR_ANSI_APP を SQL_AA_FALSE に 設定して SQLSetConnectAttr を呼び出す場合、アプリケーシ ョンはユニコード・アプリケーションと 見なされます。このことは、CHAR データ はすべて、データベースとの間で UTF-8 形式で 送受信されることを意味していま す。アプリケーションはこの後 CHAR データを、 SQL_C_CHAR バッファーにローカ ル・コード・ページで取り出すか (データ損失の可能性があります)、 または SQL_C_WCHAR バッファーに UCS-2 でデータを損失することなく取り出すことが で きます。 アプリケーションが上述した 2 種類の呼び出しのどちらも行わない場合は、CHAR データはサーバー上で アプリケーション・ローカル・コード・ページに変換されま す。このことは、 SQL_C_WCHAR に取り出された CHAR データがデータ損失を被る可 能性があることを 意味しています。 DB2CODEPAGE インスタンス変数が (db2set を使用して) コード・ページ 1208 (UTF-8) に 設定された場合、アプリケーションはすべての CHAR データを UTF-8 で受け取ります。 これは、UTF-8 がローカル・コード・ページになっているためで す。アプリケーションはまた、 CHAR 入力データもすべて UTF-8 であることを確認 する必要もあります。ODBC は、 SQL_C_WCHAR データがすべてネイティブ・エンデ ィアン形式であると想定します。CLI は、 SQL_C_WCHAR について必要なバイト反転 を実行します。 40.9.1.1 ODBC ユニコードと非ユニコード・アプリケーション このリリースの DB2 ユニバーサル・データベースには SQLConnectW() API が含ま れています。 ユニコード・ドライバーは、ドライバー・マネージャーにユニコー ド・ドライバーとして 認識されるように、SQLConnectW をエクスポートする必要が あります。 多くの ODBC アプリケーション (Microsoft Access や Visual Basic など) は SQLConnectW() を 呼び出すことに注意してください。DB2 ユニバーサ ル・データベースの前のリリースでは、 DB2 CLI はこの API をサポートしていな かったので、ODBC ドライバー・マネージャーは これをユニコード・ドライバーと して認識しませんでした。 このため、ODBC ドライバー・マネージャーはすべての ユニコード・データをアプリケーションの ローカル・コード・ページに変換してい ました。SQLConnectW() 関数のサポートが追加された ことで、これらのアプリケー ションはユニコード・アプリケーションに接続し、DB2 CLI が 必要なデータ変換を すべて行うようになりました。 DB2 CLI は現在、ユニコード API (接尾部 "W" が付きます) を受け入れます。 ODBC は接尾部 "A" の関数のセットを定義しますが、ドライバー・マネージャーは 接尾部 "A" の ANSI 関数をドライバーに渡しません。代わりに、これらの関数を ANSI 関数 呼び出しに変換し、ドライバーに渡します。 SQLConnectW() API を呼び出す ODBC アプリケーションは、ユニコード・アプリケ ーションと 見なされます。ODBC ドライバー・マネージャーは呼び出されるアプリ ケーションのバージョンに かかわらず常に SQLConnectW() API を呼び出すため、 SQL_ATTR_ANSI_APP 接続属性を使用して、 アプリケーションが ANSI か UNICODE のどちらと考えられるかをドライバーに通知します。 SQL_ATTR_ANSI_APP が SQL_AA_FALSE に設定されていない場合、DB2 CLI はすべての ユニコード・データ を、サーバーに送る前にローカル・コード・ページに変換します。 ------------------------------------------------------------------------ 40.10 付録 D 拡張スカラー関数 40.10.1 日時関数 次の関数が、付録 D 「拡張スカラー関数」の日付および時刻関数のセクションから 抜けています。 DAYOFWEEK_ISO( date_exp ) 1 週間の曜日を、1 から 7 の範囲の整数値として date_exp で 戻します。 1 は月曜を表します。この関数と DAYOFWEEK() 関数との 間の相違に注意してく ださい。 WEEK_ISO( date_exp ) 1 年の週を、1 から 53 までの範囲の整数値として date_exp に戻します。 Week 1 は年の最初の週で、木曜を 含みます。そのため、月曜日が週の最初の 日であると考えられているため、 Week1 は Jan 4 が含まれる最初の週と同じ ことに なります。 WEEK_ISO() は、54 までの値を返す WEEK() の現行定義とは異なることに注意 してください。 WEEK() 関数では、 Week 1 は、最初の日曜を含む週となりま す。これは、週に 1 日しか 含まれていなくても、Jan. 1 が含まれる週と同 じことになります。 DAYOFWEEK_ISO() および WEEK_ISO() は、バージョン 7 で作成されたデータベース で 自動的に使用できます。データベースがバージョン 7 以前に作成された場合、 これらの 関数は使用できない可能性があります。 DAYOFWEEK_ISO() および WEEK_ISO() 関数を そのようなデータベースで使用可能にするには、db2updb シス テム・コマンドを 使用してください。 db2updb の詳細については、 このリリース 情報の「コマンド解説書」をご覧ください。 ------------------------------------------------------------------------ 40.11 付録 K DB2 CLI/ODBC/JDBC トレース機能の使用 この付録内のこのセクションは更新されています。 のトレース機能についてのより 最新の情報は問題判別の手引きの「トレース」の章をご覧ください。 ------------------------------------------------------------------------ メッセージ解説書 ------------------------------------------------------------------------ 41.1 入手可能な更新 「メッセージ解説書」はフィックスパック 4 の一部として更新され、最新の PDF は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support からオンラ インでダウンロードできます。更新された資料は、 すべて CD でも入手できます。 この CD は、PTF 番号 U478862 を使用して、DB2 サービス を介して注文できま す。DB2 サービスへの連絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 41.2 メッセージの更新 41.2.1 SQL2554N 新規理由コード 12 説明: DB2 データ・リンク・マネージャーで、割り当てられた時間枠内で 調整処理 を完了することができませんでした。詳しくは、診断ログ・ファイル db2diag.log を調べてください。 ユーザー応答: reconcile コマンドが、DB2 データ・リンク・マネージャーの 検査を待機中 にタイムアウトになりました。 reconcile コマンドを再試行してください。 41.2.2 追加の新規メッセージおよび SQLSTATE SQL0490NSQL ステートメントに直接指定された数値 "" が、 このコンテ キスト内で許可されている値の範囲 ("", "") 外で す。 説明: コンテキスト内で指定された数値 ("") が無効です。 このコンテキ ストで許可されている最小値は "" です。 このコンテキストで許可されて いる最大値は "" です。 "" および "" ("" =< n =< "") で 指定される範囲内に n がなければなりません。 ユーザーの処置: ステートメントで、値 n を有効な値に変更してください。 sqlcode: -490 sqlstate: 428B7 SQL20214NORDER OF "" が指定されました。ただし、 この table-designator は配列されていません。 説明: ORDER OF 文節で、配列されていない "" の 配列に基づ いた結果表の配列を指定しています。照会に "" に関連した ORDER BY 文節がないか、あるいは ORDER BY 文節のソート・キーが定数式です。 ユーザーの処置: 有効な ORDER BY 文節を、"" と関連した照会 に追加するか、 あるいは ORDER OF 文節を使用せずにソート・キー指定を使用して ください。 sqlcode: -20210 sqlstate: 428FI SQL20211NORDER BY および FETCH FIRST n ROWS ONLY の指定が無効です。 説明: ORDER BY または FETCH FIRST n ROWS ONLY が次のいずれかにあるため、許 可されていません。 * 視点の外部全選択 * SQL 表機能の RETURN ステートメント内の外部全選択 * サマリー表定義 ユーザーの処置: ORDER BY または FETCH FIRST n ROWS ONLY 文節を除去してくだ さい。 ORDER BY は、視点、サマリー表、または SQL 表関数を使用する照会でのみ 使用できます。 FETCH FIRST n ROWS ONLY は、WHERE 文節内の述部と一緒に ROW_NUMBER() OVER() 文節を使用して作成できます。 例: SELECT name FROM (SELECT ROW_NUMBER() OVER() AS rn name FROM emp) AS e WHERE rn<10 sqlcode: -20211 sqlstate: 428FJ 表 15. 新規 SQLSTATE メッセージ SQLSTATE 値 意味 428B7 SQL ステートメントで指定された数値 が、有効な範囲内にありません。 428FI ORDER OF が指定されましたが、 table-designator に ORDER BY 文節が含 まれていません。 428FJ ORDER BY は、視点またはサマリー表の外 部全選択では許可されていません。 ------------------------------------------------------------------------ SQL 解説書 ------------------------------------------------------------------------ 42.1 入手可能な SQL 解説書 の更新 「SQL 解説書」は更新されていて、最新の .pdf は、 http://www.ibm.com/software/data/db2/udb/winos2unix/support から オンライン でダウンロードできます。これらの注釈の情報は、 更新された解説書への追加情報 です。更新された資料は、 すべて CD でも入手できます。この CD は、PTF 番号 U478862 を使用して、DB2 サービス を介して注文できます。 DB2 サービスへの連 絡方法 は、 http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で ご覧になれます。 ------------------------------------------------------------------------ 42.2 新しい関数とプロシージャーの使用可能化 バージョン 7 フィックスパックには、新しい SQL 組み込みスカラー関数が含まれ ています。 これらの新しい関数については、「SQL 解説書」の更新分を 参照して ください。新しい関数は、データベース・サーバー・コードが新しい サービス・レ ベルにアップグレードされるとき、各データベースで自動的に 使用可能にはなりま せん。これらの新しい関数を使用可能にするには、システム管理者が サーバーの各 データベースを指定したコマンド db2updv7 を 実行しなければなりません。このコ マンドによって、コマンド実行前に作成されたデータベース・オブジェクトが、 新 しい関数シグニチャーに一致する可能性のある既存の関数シグニチャーを使用する ことを保証する 項目がデータベースに作成されます。 MQSeries 関数 (DB2MQ スキーマに定義されているもの) を使用可能化する 方法に ついては MQSeriesを参照してください。 ------------------------------------------------------------------------ 42.3 MQSeries 情報 42.3.1 スカラー関数 42.3.1.1 MQPUBLISH >>-MQPUBLISH---(------------------------------------------------> >-----+-----------------------------------------------+---------> '-publisher-service--,--+--------------------+--' '-service-policy--,--' >----msg-data----+-----------------------------------+--)------>< '-,--topic--+--------------------+--' | (1) | '-,--correl-id-------' 注: 1. correl-id は、service および policy が事前に定義されていない場合、指定 できません。 スキーマは DB2MQ です。 MQPUBLISH 関数はデータを MQSeries に発行します。 この関数を使用するには、 MQSeries パブリッシュ/サブスクライブまたは MQSeries Integrator の いずれか をインストールしなければなりません。 詳細については、 www.ibm.com/software/MQSeries を調べてください。 MQPUBLISH 関数は、service-policy により定義されているサービス・ポリシーの 品質を使用して、msg-data に含まれているデータを、publisher-service により 指定されている MQSeries パブリッシャーに発行します。 メッセージのオプション のトピックが指定でき、オプションのユーザー定義のメッセージ相関 ID も 指定で きます。 この関数は、正常に終了すると '1' の値を返し、正常に終了しないと '0' の値を返します。 publisher-service メッセージが送信される論理 MQSeries 宛先を含むストリングです。 publisher-service が指定されていると、AMT.XML リポジトリー・ファイルに 定義されているパブリッシャー・サービス・ポイントを参照します。 サービ ス・ポイントとは、メッセージの送受信元である論理エンドポイントのことで す。 サービス・ポイントの定義には、MQSeries キュー・マネージャーおよび キューの名前が 含まれています。 詳しくは「MQSeries アプリケーション・ メッセージング・インターフェース」を参照してください。 publisher-service が指定されていない場合、DB2.DEFAULT.PUBLISHER が 使 用されます。 publisher-service の最大サイズは 48 バイトです。 service-policy このメッセージの処理に使用される MQSeries AMI サービス・ポリシーを含む ストリングです。 service-policy が指定されている場合、service-policy は AMT.XML リポジトリー・ファイルに 定義されているポリシーを参照しま す。 サービス・ポリシーは、このメッセージング操作に適用されるサービ ス・オプションの 品質のセットを定義します。 このオプションには、メッセ ージ優先順位とメッセージ持続性が含まれます。 詳しくは 「MQSeries アプ リケーション・メッセージング・インターフェース」マニュアルを参照してく ださい。 service-policy が指定されていない場合、デフォルトの DB2.DEFAULT.POLICY が 使用されます。service-policy の最大サイズは 48 バイトです。 msg-data MQSeries 経由で送信されるデータを含むストリング式です。 タイプ VARCHAR の ストリングが 4000 バイトの場合は、最大サイズです。ストリングが CLOB の場合は、 最大 1MB までのサイズを取る可能性があります。 topic メッセージ発行のトピックを含むストリング式です。 トピックが指定されて いない場合、メッセージには何も関連付けられません。 topic の 最大サイズ は 40 バイトです。 複数のトピックを 1 つのストリングに指定することがで きます (40 文字まで)。 その場合、各トピックはコロンで区切ります。 たと えば、"t1:t2:the third topic" は、メッセージが t1、t2、および "the third topic" の 3 つの トピックすべてに関係していることを示していま す。 correl-id このメッセージに関連させる相関 ID を含むオプションのストリング式です。 correl-id は、要求を応答に関連させるために要求および応答シナリオに よ く指定されます。 これが指定されていない場合、メッセージに相関 ID が追 加されません。 correl-id の 最大サイズは 24 バイトです。 例: 例 1: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) により ストリン グ "Testing 123" がデフォルト・パブリッシャー・サービス (DB2.DEFAULT.PUBLISHER) に 発行されます。 相関 ID もトピックもメッセージに 対して指定されていません。 VALUES MQPUBLISH('Testing 123') 例 2: この例では、ストリング "Testing 345" がトピック "TESTS" で パブリッシ ャー・サービス "MYPUBLISHER" に発行されます。 デフォルト・ポリシーが使用さ れていて、相関 ID が指定されていません。 VALUES MQPUBLISH('MYPUBLISHER','Testing 345', 'TESTS') 例 3: この例では、"TEST1" の相関 ID を持つポリシー "MYPOLICY" によりストリ ング "Testing 678" が パブリッシャー・サービス "MYPUBLISHER" に発行されま す。 トピック "TESTS" に関するメッセージが発行されます。 VALUES MQPUBLISH('MYPUBLISHER','MYPOLICY','Testing 678','TESTS','TEST1') 例 4: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用し、 相関 ID を使用せずに、ストリング "Testing 901" がトピック "TESTS" で パブリッシ ャー・サービス "MYPUBLISHER" に発行されます。 VALUES MQPUBLISH('Testing 901','TESTS') 上記のどの例でも、正常終了の場合は値 '1' が返されます。 42.3.1.2 MQREADCLOB >>-MQREADCLOB---(-----------------------------------------------> >-----+------------------------------------------+--)---------->< '-receive-service--+--------------------+--' '-,--service-policy--' スキーマは DB2MQ です。 MQREADCLOB 関数は、service-policy に定義されているサービス・ポリシーの 品質 を使用して、receive-service によって指定されている MQSeries ロケーションか ら メッセージを返します。 この操作を実行しても、receive-service に関連する キューからこのメッセージが 除去されることはありませんが、代わりにキューの先 頭にあるメッセージが返されます。戻り値は、 このメッセージを含む最大長 1MB の CLOB です。 戻されるメッセージが使用できない場合、NULL が返されます。 receive-service メッセージの受信元である論理 MQSeries 宛先を含むストリングです。 receive-service が指定されている場合、receive-service は AMT.XML リポ ジトリー・ファイルに 定義されているサービス・ポイントを参照します。 サ ービス・ポイントとは、メッセージの送受信元である論理エンドポイントのこ とです。 サービス・ポイントの定義には、MQSeries キュー・マネージャーお よびキューの名前が 含まれています。 詳しくは「MQSeries アプリケーショ ン・メッセージング・インターフェース」を参照してください。 receive-service が指定されていない場合、DB2.DEFAULT.SERVICE が 使用さ れます。 receive-service の最大サイズは 48 バイトです。 service-policy このメッセージの処理に使用される MQSeries AMI サービス・ポリシーを含む ストリングです。 service-policy が指定されている場合、service-policy は AMT.XML リポジトリー・ファイルに 定義されているポリシーを参照しま す。 サービス・ポリシーは、このメッセージング操作に適用されるサービ ス・オプションの 品質のセットを定義します。 このオプションには、メッセ ージ優先順位とメッセージ持続性が含まれます。 詳しくは 「MQSeries アプ リケーション・メッセージング・インターフェース」マニュアルを参照してく ださい。 service-policy が指定されていない場合、デフォルトの DB2.DEFAULT.POLICY が 使用されます。 service-policy の最大サイズは 48 バイトです。 例: 例 1: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューの先頭に ある メッセージが読み取られます。 VALUES MQREADCLOB() 例 2: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 サ ービス "MYSERVICE" により指定されているキューの先頭にある メッセージが読み 取られます。 VALUES MQREADCLOB('MYSERVICE') 例 3: この例では、ポリシー "MYPOLICY" を使用して、サービス "MYSERVICE" によ り 指定されているキューの先頭にあるメッセージが読み取られます。 VALUES MQREADCLOB('MYSERVICE','MYPOLICY') 上記の例ではすべて、正常終了するとメッセージの内容が最大サイズ 1MB の CLOB として 返されます。 メッセージが使用できない場合、NULL が返されます。 42.3.1.3 MQRECEIVECLOB >>-MQRECEIVECLOB------------------------------------------------> >----(--+-------------------------------------------------------------+---)-> '-receive-service--+---------------------------------------+--' '-,--service-policy--+---------------+--' '-,--correl-id--' >-------------------------------------------------------------->< スキーマは DB2MQ です。 MQRECEIVECLOB 関数は、サービス・ポリシー service-policy の 品質を使用して、 receive-service によって指定されている MQSeries ロケーションからの メッセー ジを返します。この操作を実行すると、receive-service に関連するキューからこ のメッセージが除去されます。 correl-id が 指定されている場合、一致する相関 ID を持つ最初のメッセージが返されます。 correl-id が指定されていない場合、 キューの先頭にあるメッセージが 返されます。 戻り値は、このメッセージを含む 最大長 1MB の CLOB です。 戻されるメッセージが使用できない場合、NULL が返さ れます。 receive-service メッセージの受信元である論理 MQSeries 宛先を含むストリングです。 receive-service が指定されている場合、receive-service は AMT.XML リポ ジトリー・ファイルに 定義されているサービス・ポイントを参照します。 サ ービス・ポイントとは、メッセージの送受信元である論理エンドポイントのこ とです。 サービス・ポイントの定義には、MQSeries キュー・マネージャーお よびキューの名前が 含まれています。 詳しくは「MQSeries アプリケーショ ン・メッセージング・インターフェース」を参照してください。 receive-service が指定されていない場合、DB2.DEFAULT.SERVICE が使用され ます。 receive-service の最大サイズは 48 バイトです。 service-policy このメッセージの処理に使用される MQSeries AMI サービス・ポリシーを含む ストリングです。 service-policy が 指定されている場合、service-policy は AMT.XML リポジトリー・ファイルに定義されているポリシー を参照します 1 。service-policy が指定されていない場合、 デフォルトの DB2.DEFAULT.POLICY が使用されます。 service-policy の最大サイズは 48 バイトです。 correl-id このメッセージに関連させるオプションの相関 ID を含むストリングです。 correl-id は、要求を応答に関連させるために要求および応答シナリオに よ く指定されます。これが指定されていない場合、 相関 ID は使用されませ ん。correl-id の 最大サイズは 24 バイトです。 例: 例 1: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューの先頭に ある メッセージが受信されます。 VALUES MQRECEIVECLOB() 例 2: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 サ ービス "MYSERVICE" により指定されているキューの先頭にある メッセージが受信 されます。 VALUES MQRECEIVECLOB('MYSERVICE') 例 3: この例では、ポリシー "MYPOLICY" を使用して、サービス "MYSERVICE" によ り 指定されているキューの先頭にあるメッセージが受信されます。 VALUES MQRECEIVECLOB('MYSERVICE','MYPOLICY') 例 4: この例では、ポリシー "MYPOLICY" を使用して、サービス "MYSERVICE" によ り 指定されているキューの先頭から '1234' に一致する相関 ID を持つ最初のメッ セージが 受信されます。 VALUES MQRECEIVECLOB('MYSERVICE',MYPOLICY','1234') 上記の例ではすべて、 正常終了するとメッセージの内容が最大サイズ 1MB の CLOB として返されます。 メッセージが使用できない場合、NULL が返されます。 42.3.1.4 MQSEND >>-MQSEND---(----+------------------------------------------+---> '-send-service--,--+--------------------+--' '-service-policy--,--' >----msg-data----+--------------------+--)--------------------->< | (1) | '-,--correl-id-------' 注: 1. correl-id は、service および policy が事前に定義されていない場合、指定 できません。 スキーマは DB2MQ です。 MQSEND 関数は、service-policy により定義されているサービス・ポリシーの 品質 を使用して、msg-data に含まれているデータを、send-service により 指定されて いる MQSeries ロケーションに送信します。 任意指定のユーザー定義メッセージ相 関 ID は、correl-id によって指定することができます。 この関数は、正常に終了 すると '1' の値を返し、正常に終了しないと '0' の値を返します。 msg-data MQSeries 経由で送信されるデータを含むストリング式です。 データがタイプ VARCHAR の場合は、 最大サイズは 4000 バイト、タイプ CLOB の場合は、1MB です。 send-service メッセージが送信される論理 MQSeries 宛先を含むストリングです。 send-service が指定されている場合、send-service は AMT.XML リポジトリ ー・ファイルに定義されている サービス・ポイントを参照します。 サービ ス・ポイントとは、メッセージを送受信する 論理エンドポイントのことで す。 サービス・ポイントの定義には、MQSeries キュー・マネージャーおよび キューの名前が含まれています。 詳しくは 「MQSeries アプリケーション・ メッセージング・インターフェース」マニュアルを参照してください。 send-service が指定されていない場合、DB2.DEFAULT.SERVICE の値が使用さ れます。 send-service の最大サイズは 48 バイトです。 service-policy このメッセージの処理に使用される MQSeries AMI サービス・ポリシーを含む ストリングです。 service-policy が指定されている場合、service-policy は AMT XML リポジトリー・ファイルに 定義されているサービス・ポリシーを 参照します。 サービス・ポリシーは、このメッセージング操作に適用される サービス・オプションの 品質のセットを定義します。 このオプションには、 メッセージ優先順位とメッセージ持続性が含まれます。 詳しくは「MQSeries アプリケーション・メッセージング・インターフェース」 マニュアルを参照 してください。 service-policy が指定されていない場合、 DB2.DEFAULT.POLICY のデフォルト値が 使用されます。 service-policy の最 大サイズは 48 バイトです。 correl-id このメッセージに関連した相関 ID を含むオプションのストリングです。 correl-id は、要求を応答に関連させるために要求および応答シナリオに よ く指定されます。これが指定されていない場合、相関 ID は送信されません。 correl-id の 最大サイズは 24 バイトです。 例: 例 1: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 相 関 ID は使用せずに、ストリング "Testing 123" がデフォルト・サービス (DB2.DEFAULT.SERVICE) に 送信されます。 VALUES MQSEND('Testing 123') 例 2: この例では、ポリシー "MYPOLICY" を使用して、相関 ID は使用せずに、 ス トリング "Testing 345" がサービス "MYSERVICE" に送信されます。 VALUES MQSEND('MYSERVICE','MYPOLICY','Testing 345') 例 3: この例では、ポリシー "MYPOLICY" と相関 ID "TEST3" を使用して、 ストリ ング "Testing 678" がサービス "MYSERVICE" に送信されます。 VALUES MQSEND('MYSERVICE','MYPOLICY','Testing 678','TEST3') 例 4: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 相 関 ID は使用せずに、ストリング "Testing 901" がサービス "MYSERVICE" に 送信 されます。 VALUES MQSEND('MYSERVICE','Testing 901') 上記のすべての例で、正常終了すると '1' のスカラー値が返されます。 42.3.2 表関数 42.3.2.1 MQREADALLCLOB >>-MQREADALLCLOB---(--------------------------------------------> >-----+------------------------------------------+--------------> '-receive-service--+--------------------+--' '-,--service-policy--' >-----+-----------+--)----------------------------------------->< '-num-rows--' スキーマは DB2MQ です。 MQREADALLCLOB 関数は、サービス・ポリシー service-policy の品質を 使用して、 receive-service によって指定されている MQSeries ロケーションからの メッセー ジおよびメッセージ・メタデータを含む表を返します。 この操作を実行しても、 receive-service に関連するキューからこのメッセージが 除去されることはありま せん。 num-rows が指定されている場合、num-rows メッセージの最大数が 返されます。 num-rows が指定されていない場合、使用可能なすべてのメッセージが 返されま す。返される表には以下の列が含まれます。 * MSG - MQSeries メッセージの内容を含む CLOB 列。 * CORRELID - メッセージを関連させるために使用される相関 ID を持つ VARCHAR(24) 列。 * TOPIC - 使用可能な場合、メッセージが発行されたときに使用されたトピック を持つ VARCHAR(40) 列。 * QNAME - メッセージが受信されたキューの名前を持つ VARCHAR(48) 列。 * MSGID - このメッセージに割り当てられた MQSeries 固有 ID を持つ CHAR(24) 列。 * MSGFORMAT - MQSeries により定義されているようなメッセージの形式を持つ VARCHAR(8) 列。 一般的なストリングの形式は MQSTR 形式です。 receive-service メッセージの読み取り元である論理 MQSeries 宛先を含むストリングです。 receive-service が 指定されている場合、AMT.XML リポジトリー・ファイル に定義されているサービス・ポイントを参照します。 サービス・ポイントと は、メッセージの送受信元である論理エンドポイントのことです。 サービ ス・ポイントの定義には、MQSeries キュー・マネージャーおよびキューの名 前が 含まれています。 詳しくは「MQSeries アプリケーション・メッセージ ング・インターフェース」を参照してください。 receive-service が指定さ れていない場合、DB2.DEFAULT.SERVICE が 使用されます。 receive-service の最大サイズは 48 バイトです。 service-policy このメッセージの処理に使用される MQSeries AMI サービス・ポリシーを含む ストリングです。 service-policy が 指定されている場合、AMT XML リポジ トリー・ファイルに定義されているポリシーを参照します。 サービス・ポリ シーは、このメッセージング操作に適用されるサービス・オプションの 品質 のセットを定義します。 このオプションには、メッセージ優先順位とメッセ ージ持続性が含まれます。 詳しくは 「MQSeries アプリケーション・メッセ ージング・インターフェース」マニュアルを参照してください。 service-policy が指定されていない場合、デフォルトの DB2.DEFAULT.POLICY が 使用されます。service-policy の最大サイズは 48 バイトです。 num-rows この関数により返されるメッセージの最大数を含む正の整数です。 例: 例 1: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューから す べてのメッセージが受信されます。 メッセージとすべてのメタデータが表として返 されます。 SELECT * FROM table (MQREADALLCLOB()) T 例 2: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 サ ービス MYSERVICE により指定されているキューの先頭からすべてのメッセージが受 信されます。 MSG 列と CORRELID 列だけが返されます。 SELECT T.MSG, T.CORRELID FROM table (MQREADALLCLOB('MYSERVICE')) T 例 3: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューの先頭が 読み取られます。 '1234' の CORRELID を持つメッセージだけが返されます。 列は すべて返されます。 SELECT * FROM table (MQREADALLCLOB()) T WHERE T.CORRELID = '1234' 例 4: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューの先頭か ら 最初の 10 メッセージが受信されます。 列はすべて返されます。 SELECT * FROM table (MQREADALLCLOB(10)) T 42.3.2.2 MQRECEIVEALLCLOB >>-MQRECEIVEALLCLOB---(-----------------------------------------> >-----+-------------------------------------------------------------+> '-receive-service--+---------------------------------------+--' '-,--service-policy--+---------------+--' '-,--correl-id--' >-----+--------------------+--)-------------------------------->< '-+----+---num-rows--' '-,--' スキーマは DB2MQ です。 MQRECEIVEALLCLOB 関数は、サービス・ポリシー service-policy の品質を 使用し て、receive-service によって指定されている MQSeries ロケーションからの メッ セージおよびメッセージ・メタデータを含む表を返します。 この操作を実行する と、receive-service に関連するキューからこのメッセージが除去されます。 correl-id が指定されている場合、一致する相関 ID を持つメッセージだけが 返さ れます。correl-id が指定されていない場合、キューの先頭にあるメッセージが返 されます。 num-rows が指定されている場合、num-rows メッセージの最大数が 返されます。 num-rows が指定されていない場合、有効なすべてのメッセージが 返されます。 返 される表には以下の列が含まれます。 * MSG - MQSeries メッセージの内容を含む CLOB 列。 * CORRELID - メッセージを関連させるために使用される相関 ID を持つ VARCHAR(24) 列。 * TOPIC - 使用可能な場合、メッセージが発行されたときに使用されたトピック を持つ VARCHAR(40) 列。 * QNAME - メッセージが受信されたキューの名前を持つ VARCHAR(48) 列。 * MSGID - このメッセージに割り当てられた MQSeries 固有 ID を持つ CHAR(24) 列。 * MSGFORMAT - MQSeries により定義されているようなメッセージの形式を持つ VARCHAR(8) 列。 一般的なストリングの形式は MQSTR 形式です。 receive-service メッセージの受信元である論理 MQSeries 宛先を含むストリングです。 receive-service が 指定されている場合、AMT.XML リポジトリー・ファイル に定義されているサービス・ポイントを参照します。 サービス・ポイントと は、メッセージの送受信元である論理エンドポイントのことです。 サービ ス・ポイントの定義には、MQSeries キュー・マネージャーおよびキューの名 前が 含まれています。 詳しくは 「MQSeries アプリケーション・メッセージ ング・インターフェース」マニュアルを参照してください。 receive-service が指定されていない場合、DB2.DEFAULT.SERVICE が 使用されます。 receive-service の最大サイズは 48 バイトです。 service-policy このメッセージの処理に使用される MQSeries AMI サービス・ポリシーを含む ストリングです。 service-policy が 指定されている場合、AMT XML リポジ トリー・ファイルに定義されているポリシーを参照します。 サービス・ポリ シーは、このメッセージング操作に適用されるサービス・オプションの 品質 のセットを定義します。 このオプションには、メッセージ優先順位とメッセ ージ持続性が含まれます。 詳しくは 「MQSeries アプリケーション・メッセ ージング・インターフェース」マニュアルを参照してください。 service-policy が指定されていない場合、デフォルトの DB2.DEFAULT.POLICY が 使用されます。service-policy の最大サイズは 48 バイトです。 correl-id このメッセージに関連した相関 ID を含むオプションのストリングです。 correl-id は、要求を応答に関連させるために要求および応答シナリオに よ く指定されます。これが指定されていない場合、相関 ID は指定されません。 correl-id の 最大サイズは 24 バイトです。 num-rows この関数により返されるメッセージの最大数を含む正の整数です。 例: 例 1: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューから す べてのメッセージが受信されます。 メッセージとすべてのメタデータが表として返 されます。 SELECT * FROM table (MQRECEIVEALLCLOB()) T 例 2: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 サ ービス MYSERVICE により指定されているキューの先頭からすべてのメッセージが受 信されます。 MSG 列と CORRELID 列だけが返されます。 SELECT T.MSG, T.CORRELID FROM table (MQRECEIVEALLCLOB('MYSERVICE')) T 例 3: この例では、ポリシー "MYPOLICY" を使用して、サービス "MYSERVICE" によ り 指定されているキューの先頭からすべてのメッセージが受信されます。 '1234' の CORRELID を持つメッセージだけが返されます。 MSG 列と CORRELID 列だけが返 されます。 SELECT T.MSG, T.CORRELID FROM table (MQRECEIVEALLCLOB('MYSERVICE','MYPOLICY','1234')) T 例 4: この例では、デフォルト・ポリシー (DB2.DEFAULT.POLICY) を使用して、 デ フォルト・サービス (DB2.DEFAULT.SERVICE) により指定されているキューの先頭か ら 最初の 10 メッセージが受信されます。 列はすべて返されます。 SELECT * FROM table (MQRECEIVEALLCLOB(10)) T 42.3.3 MQSeries 関数でサポートされるようになった CLOB データ MQSeries 関数 (DB2MQ スキーマで定義された関数) には、VARCHAR データに 加え て、CLOB データでも使用できる機能が含まれるようになりました。 新規関数が CLOB データ・ タイプを処理する場合もあれば、既存の関数が CLOB と VARCHAR デ ータの 両方を処理するようになった場合もあります。いずれの場合も、CLOB 関数 の構文は、VARCHAR の 場合と同一です。CLOB データの使用をサポートする関数と VARCHAR データの使用を サポートする関数は、次の表にリストされています。 表 16. CLOB データ・タイプをサポートする MQSeries 関数 VARCHAR データ用に使用される関数 CLOB データ用に使用される関数 MQPUBLISH MQPUBLISH MQREAD MQREADCLOB MQRECEIVE MQRECEIVECLOB MQSEND MQSEND MQREADALL MQREADALLCLOB MQRECEIVEALL MQRECEIVEALLCLOB MQSeries 関数 (DB2MQ スキーマに定義されているもの) を使用可能化する 方法に ついては MQSeries を参照してください。 ------------------------------------------------------------------------ 42.4 データ・タイプ情報 42.4.1 データ・タイプのプロモーション このセクションでは、表 5 に各データ・タイプの優先順位リストが示されます。 以下に注意してください。 1. ユニコード・データベースの場合、以下が同等のデータ・タイプと見なされま す。 o CHAR および GRAPHIC o VARCHAR および VARGRAPHIC o LONG VARCHAR および LONG VARGRAPHIC o CLOB および DBCLOB 2. ユニコード・データベースでは、同等の CHAR および GRAPHIC データ・タイ プ間で 関数シグニチャーのみが異なる (たとえば foo(CHAR(8)) と foo(GRAPHIC(8)) など) 関数を 作成することが可能です。将来のリリースへ の移行を行う前に、これらのどちらかを ドロップしなければならなくなるた め、このような重複する関数は定義しないことを 強くお勧めします。 このような重複する関数が存在する場合、どちらを呼び出すかの 選択は、2 つのパス・アルゴリズムで決定されます。最初のパスは、非ユニコード・ デ ータベースの関数を解決するために使用されるものと同じアルゴリズムを使用 して 一致を探そうとします。一致が見つからない場合は、CHAR および GRAPHIC ストリングに ついて次のプロモーション優先順位を考慮して 2 番目 のパスが行われます。 GRAPHIC-->CHAR-->VARGRAPHIC-->VARCHAR-->LONG VARGRAPHIC-->LONG VARCHAR-->DBCLOB-->CLOB 42.4.2 データ・タイプ間のキャスト 次の項目が、「特殊タイプを含む次のキャストがサポートされています」と 紹介さ れているリストに追加されました。 * ユニコード・データベースの場合、VARCHAR または VARGRAPHIC から ソー ス・データ・タイプ CHAR または GRAPHIC の特殊タイプ DT へのキャスト。 以下は、「表 6. 組み込みデータ・タイプ間でサポートされる キャスト」に対する 更新です。 影響を受ける表の行のみが示されています。 表 17. 組み込みデータ・タイプ間で サポートされているキャスト ターゲット・データ・ タイプ > L O N L G O V V N A A G R R V V G G G A A R R R D R R A A A B C C C C P P P C H H H L H H H L ソース・データ・タイプ A A A O I I I O V R R R B C C C B CHAR Y Y Y Y Y1 Y1 - - VARCHAR Y Y Y Y Y1 Y1 - - LONGVARCHAR Y Y Y Y - - Y1 Y1 CLOB Y Y Y Y - - - Y1 GRAPHIC Y1 Y1 - - Y Y Y Y VARGRAPHIC Y1 Y1 - - Y Y Y Y LONGVARGRAPHIC - - Y1 Y1 Y Y Y Y DBCLOB - - - Y1 Y Y Y Y 1 キャストはユニコード・データベースでのみサポートされています。 42.4.3 割り当てと比較 文字および漢字データの両方を含む割り当てと比較は、ストリングの いずれかがリ テラルのときにのみサポートされます。関数解決については、 漢字リテラルと文字 リテラルは文字および漢字関数パラメーターの両方に 一致します。 以下は、「表 7. 割り当てと比較についてのデータ・タイプ 互換性」に対する更新 です。 影響を受ける表の行と、新しい脚注 6 のみが 示されています。 タイ バイナ 文字 ス 漢字 ス ム・ リー・ オペラン 2 進 10 進 浮動小 トリン トリン スタン ストリ ド 整数 数 数点 グ グ 日付 時刻プ ング UDT 文字スト No No No Yes Yes 6 1 1 1 No 3 2 リング 漢字スト No No No Yes 6 Yes No No No No 2 リング 6 ユニコード・データベースでのみサポートされます。 42.4.3.1 ストリング割り当て ストレージ割り当て このサブセクションの最後の段落が次のように変更されました。 ストリングが固定長の列に割り当てられ、ストリングの長さがターゲットの 長さ属 性より小さいとき、ストリングには右側に必要な数の 1 バイト、2 バイト、 また は UCS-2 の 2 ブランクが埋められます。 埋め込み文字は、FOR BIT DATA 属性で 定義された列についても、常にブランクに なります。 検索割り当て このサブセクションの 3 番目の段落が次のように変更されました。 文字ストリングが固定長の変数に割り当てられ、ストリングの長さがターゲットの 長さ属性より小さいとき、ストリングには右側に必要な数の 1 バイト、2 バイト、 または UCS-2 の 2 ブランクが埋められます。 埋め込み文字は、FOR BIT DATA 属 性で定義されたストリングについても、常にブランクに なります。 2 UCS-2 はいくつかの SPACE 文字を異なるプロパティーで定義します。 ユニコ ード・データベースの場合、データベース・マネージャーは常に、x'0020' の 位置の ASCII SPACE を UCS-2 ブランクとして使用します。EUC データベース の場合、 位置 x'3000' の IDEOGRAPHIC SPACE が埋めこみ GRAPHIC ストリン グに 使用されます。 ストリング割り当ての変換規則 以下の段落がこのサブセクションの終わりに追加されました。 ユニコード・データベースの場合、文字ストリングを漢字の列に、漢字ストリング を 文字の列に割り当てることができます。 漢字ストリング割り当てに関する DBCS 考慮事項 このサブセクションの最初の段落が次のように変更されました。 漢字ストリング割り当ては、文字ストリングに似た方法で処理されます。 非ユニコ ード・データベースの場合、漢字ストリング・データ・タイプは他の 漢字ストリン グ・データ・タイプとのみ互換性を持ち、数値、文字ストリング、 または日付デー タ・タイプとは互換性がありません。ユニコード・データベースの 場合、漢字スト リング・データ・タイプは文字ストリング・データ・タイプと互換性があります。 42.4.3.2 ストリング比較 比較の変換規則 このサブセクションが次のように変更されました。 2 つのストリングを比較するとき、必要に応じ、最初に一方のストリングが もう一 方のストリングのエンコード・スキームおよびコード・ページに変換されます。 詳 しくは SQL 解説書 の「第 3 章 言語エレメント」の 「ストリング変換の規則」を 参照してください。 42.4.4 結果データ・タイプの規則 42.4.4.1 ユニコード・データベースの文字および漢字ストリング これは、サブセクション「漢字ストリング」の後に挿入される新しいサブセクショ ンです。 ユニコード・データベースでは、文字ストリングと漢字ストリングには互換性があ ります。 オペランド... 他のオペランド... 結果のデータ・タイプ... GRAPHIC(x) CHAR(y) または GRAPHIC(z)、z = max(x,y) GRAPHIC(y) VARGRAPHIC(x) CHAR(y) または VARGRAPHIC(z)、z = VARCHAR(y) max(x,y) VARCHAR(x) GRAPHIC(y) または VARGRAPHIC(z)、z = VARGRAPHIC max(x,y) LONG VARGRAPHIC CHAR(y) または LONG VARGRAPHIC VARCHAR(y) または LONG VARCHAR LONG VARCHAR GRAPHIC(y) または LONG VARGRAPHIC VARGRAPHIC(y) DBCLOB(x) CHAR(y) または DBCLOB(z)、z = max(x,y) VARCHAR(y) または CLOB(y) DBCLOB(x) LONG VARCHAR DBCLOB(z)、z = max(x,16350) CLOB(x) GRAPHIC(y) または DBCLOB(z)、z = max(x,y) VARGRAPHIC(y) CLOB(x) LONG VARGRAPHIC DBCLOB(z)、z = max(x,16350) 42.4.5 ストリング変換の規則 3 番目のポイントが、このセクションの次のリストに追加されました。 コード・ページの各ペアについて、次の規則を順番に適用することで結果が決定さ れます。 * コード・ページが等しい場合、結果はそのコード・ページになります。 * コード・ページが BIT DATA (コード・ページ 0) 結果のコード・ページは BIT DATA になります。 * ユニコード・データベースで、あるコード・ページが他のコード・ページと 異なるエンコード・スキームでデータを指定する場合、結果は UTF-8 ではな く UCS-2 に なります (つまり、漢字データ・タイプが文字データ・タイプに 優先します)。1 * それ以外の場合、結果のコード・ページは SQL 解説書 の 「第 3 章 言語エ レメント」の「ストリング変換の規則」セクションの 表 8 で決定されます。 表の「最初」の項目は、最初のオペランドからのコード・ページが 選択され ることを意味し、「2 番目」は 2 番目のオペランドからのコード・ページが 選択される ことを意味します。 1 非ユニコード・データベースでは、異なるエンコード・スキーム間の変換は サポートされていません。 42.4.6 式 以下が追加されました。 ユニコード・データベースでは、文字または漢字ストリングを受け入れる 式は、変 換がサポートされるストリング・タイプを受け入れます。 42.4.6.1 連結演算子 以下がこのサブセクションの終わりに追加されました。 ユニコード・データベースでは、文字ストリング・オペランドと漢字ストリング・ オペランドの 両方を含む連結は、最初に文字オペランドを漢字オペランドに変換し ます。非ユニコード・ データベースでは、連結は文字および漢字オペランドの両方 を扱うことはできません。 42.4.7 述部 次の項目が、「次の規則がすべてのタイプの述部に適用されます」という文で 紹介 されているリストに追加されました。 * ユニコード・データベースでは、文字または漢字ストリングを受け入れる 述 部はすべて、変換がサポートされるストリング・タイプを受け入れます。 ------------------------------------------------------------------------ 42.5 ユニコード情報 42.5.1 スカラー関数およびユニコード ユニコード・データベースでは、文字または漢字ストリングを受け入れる スカラー 関数はすべて、変換がサポートされるストリング・タイプを受け入れます。 ------------------------------------------------------------------------ 42.6 ユニコード・データベースのより大きな索引キー 42.6.1 ALTER TABLE レジストリー変数 DB2_INDEX_2BYTEVARLEN がオンであったときに定義された、 1 次および固有キーを含む索引の一部である可変長列の長さを 255 バイトを超える 長さに変更することができます。 実際、可変長列は外部キーに関係していますが、 レジストリー値の設定にかかわらず、 列を 255 バイトを超える長さに変更するこ とを妨げるわけではありません。 ただし、対応する 1 次キーの長さが 255 バイト を超えていないかぎり、長さが 255 を 超えるデータを表に挿入することはできま せん。 これが可能なのは、レジストリー変数 ON で 1 次キーが作成された場合だ けです。 42.6.2 CREATE INDEX レジストリー変数 DB2_INDEX_2BYTEVARLEN が ON であれば、 長さが 255 バイトを 超える可変長列に索引を定義できます。 42.6.3 CREATE TABLE レジストリー変数 DB2_INDEX_2BYTEVARLEN が ON になっていれば、 可変キー部分 を持つ 1 次および固有キーのサイズを 255 より大きくすることができます。 長さ が 255 バイトを超える可変長列に外部キーを定義できます。 ------------------------------------------------------------------------ 42.7 GET DIAGNOSTICS ステートメントの追加オプション GET DIAGNOSTICS ステートメント GET DIAGNOSTICS ステートメントは、直前に呼び出された SQL ステートメントに関 する情報を 入手するのに使用されます。このステートメントの構文は、以下のよう に更新されました。 コマンド構文 >>-GET DIAGNOSTICS----------------------------------------------> >-----+-SQL-variable-name--=----+-ROW_COUNT-----+-+------------>< | '-RETURN_STATUS-' | '-| condition-information |-----------------' condition-information |---EXCEPTION--1------------------------------------------------> .-,----------------------------------------------. V | >--------SQL-variable-name--=----+-MESSAGE_TEXT-----+--+--------| '-DB2_TOKEN_STRING-' コマンド・パラメーター SQL-variable-name 割り当てのターゲットである変数を識別します。ROW_COUNT または RETURN_STATUS が指定された場合、この変数は整変数でなければなりません。 整変数でない場合は、変数は CHAR または VARCHAR でなければなりません。 SQL 変数は複合ステートメントで定義できます。 ROW_COUNT 直前に呼びされた SQL ステートメントに関連する行数を識別します。 直前の SQL ステートメントが DELETE、INSERT、または UPDATE ステートメントの場 合、 ROW_COUNT はそのステートメントによって、それぞれ削除、挿入、また は更新された行数を識別します。 その際に、トリガーまたは参照保全制約に よって影響を受ける行は除外されます。 直前のステートメントが PREPARE ス テートメントの場合、 ROW_COUNT は、準備済みステートメントの結果行の見 積もり 数を識別します。 RETURN_STATUS 直前に実行された SQL ステートメントが、状況を戻すプロシージャーを呼び 出す CALL ステートメントの場合に、 そのステートメントに関連するストア ード・プロシージャーから戻される状況値を識別します。 直前のステートメ ントがそのようなステートメントでなければ、 戻される値は特に意味のな い、何らかの整数です。 condition-information 直前に実行された SQL ステートメントに対するエラーまたは警告情報を戻す よう指定します。 エラーに関する情報が必要な場合は、GET DIAGNOSTICS ス テートメントは、 エラーをハンドルするハンドラーに指定された最初のステ ートメントでなければなりません。 警告に関する情報が必要で、ハンドラー が警告状態を制御するようにしたい場合は、 GET DIAGNOSTICS ステートメン トはそのハンドラーで最初のステートメントに指定しなければなりません。 ハンドラーが警告条件の制御を得ないようにする場合は、 GET DIAGNOSTICS ステートメントを実行する次のステートメントにします。 MESSAGE_TEXT 直前に実行された SQL ステートメントから戻されるエラーや警告メッセ ージ・テキストを 識別します。メッセージ・テキストは、ステートメン トが処理されるデータベース・サーバーの 言語で戻されます。ステート メントが SQLCODE ゼロで完了すると、 空ストリングまたはブランクが 戻されます。 DB2_TOKEN_STRING 直前に実行された SQL ステートメントから戻されるエラーや警告メッセ ージ・トークンを 識別します。ステートメントが SQLCODE ゼロで完了 するか、または SQLCODE にトークンがないと、 空ストリングまたはブ ランクが戻されます。 ------------------------------------------------------------------------ 42.8 副選択内の ORDER BY DB2 は、副選択および全選択の ORDER BY をサポートするようになりました。 42.8.1 全選択 以下に、order-by-clause の位置を示す、変更後の全選択の構文図の一部を示しま す。 >>-+-subselect---------+----------------------------------------> +-(fullselect)------+ '-| values-clause |-' .---------------------------------------------------. V | >--------+---------------------------------------------+--+-----> '--+-UNION---------+---+-subselect---------+--' +-UNION ALL-----+ +-(fullselect)------+ +-EXCEPT--------+ '-| values-clause |-' +-EXCEPT ALL----+ +-INTERSECT-----+ '-INTERSECT ALL-' >-----+------------------+------------------------------------->< '-order-by-clause--' ORDER BY 文節を含む全選択は、以下では指定できません。 * サマリー表 * 視点の最外部全選択 (SQLSTATE 428FJ SQLCODE -20211) 全選択内の ORDER BY 文節は、照会から戻される行の順序には 影響しません。 ORDER BY 文節は、最外部全選択で指定された場合のみ、 戻された行の順序に影響 します。 42.8.2 副選択 以下に、order-by-clause および fetch-first-clause の位置を示す、 変更後の副 選択の完全な構文図を示します。 >>-select-clause--from-clause----+---------------+--------------> '-where-clause--' >-----+------------------+---+----------------+-----------------> '-group-by-clause--' '-having-clause--' >-----+------------------+------------------------------------->< '-order-by-clause--' 副選択の文節は、以下の順序で処理されます。 1. FROM 文節 2. WHERE 文節 3. GROUP BY 文節 4. HAVING 文節 5. SELECT 文節 6. ORDER BY 文節 ORDER BY 文節を含む副選択は、以下では指定できません。 * 視点の最外部全選択 * サマリー表 * 副選択が括弧で囲まれていない場合 たとえば、以下の構文は無効です (SQLSTATE 428FJ SQLCODE -20211)。 SELECT * FROM T1 ORDER BY C1 UNION SELECT * FROM T2 ORDER BY C1 以下の例が 有効 です。 (SELECT * FROM T1 ORDER BY C1) UNION (SELECT * FROM T2 ORDER BY C1) 副選択内の ORDER BY 文節は、照会から戻される行の順序には 影響しません。 ORDER BY 文節は、最外部全選択で指定された場合のみ、 戻された行の順序に影響 します。 42.8.3 order-by-clause 以下に、変更後の order-by-clause の完全な構文図を示します。 .-,--------------------------------. V .-ASC--. | >>-ORDER BY------+-sort-key--+------+----------+--+------------>< | '-DESC-' | '-ORDER OF--table-designator--' sort-key |---+-simple-column-name--+-------------------------------------| +-simple-integer------+ '-sort-key-expression-' ORDER OF table-designator table-designator で使用されているのと同じ配列が 副選択の結果表に適用さ れることを指定します。この文節を指定する副選択の FROM 文節に、 table-designator と一致する表参照がなければなりません。 (SQLSTATE 42703)。指定されている table-designator に対応する 副選択 (または全選 択) は、データに従属する ORDER BY 文節を含む必要があります。 (SQLSTATE 428FI SQLCODE -20210)。ネストされた副選択 (または全選択) の ORDER BY 文節の列が外部の副選択 (または全選択) に組み込まれ、またこれらの列が ORDER OF 文節の代わりに 指定されたかのように、同じ配列が適用されます。 表指定子に関する詳細は、SQL 解説書 の「あいまいさを避けるための列名修 飾子」を参照してください。 このフォームは、全選択では使用できないことに注意してください (全選択の 古いフォームを除く)。 たとえば、以下の例は無効です。 (SELECT C1 FROM T1 ORDER BY C1) UNION SELECT C1 FROM T2 ORDER BY ORDER OF T1 以下の例は有効です。 SELECT C1 FROM (SELECT C1 FROM T1 UNION SELECT C1 FROM T2 ORDER BY C1 ) AS UTABLE ORDER BY ORDER OF UTABLE 42.8.4 select-statement 以下に、変更後の select-statement の完全な構文図を示します。 >>-+---------------------------------------+--fullselect--------> | .-,--------------------------. | | V | | '-WITH-----common-table-expression---+--' >----fetch-first-clause---*--+---------------------+------------> +-read-only-clause----+ | (1) | '-update-clause-------' >----*--+---------------------+--*----+---------------+-------->< '-optimize-for-clause-' '-WITH--+-RR-+--' +-RS-+ +-CS-+ '-UR-' 注: 1. 全選択に order-by-clause が含まれる場合は、 update-clause を指定するこ とはできません。 SELECT INTO ステートメント 構文 .-,----------------. V | >>-select-clause--INTO-------host-variable---+--from-clause-----> >-----+---------------+---+------------------+------------------> '-where-clause--' '-group-by-clause--' >-----+----------------+---+------------------+-----------------> '-having-clause--' '-order-by-clause--' >-----+---------------+---------------------------------------->< '-WITH--+-RR-+--' +-RS-+ +-CS-+ '-UR-' 42.8.5 OLAP 関数 (window-order-clause) 以下に、変更後の window-order-clause を示す、OLAP 関数の構文図の一部を示し ます。 window-order-clause |--ORDER BY-----------------------------------------------------> .-,----------------------------------------------------. V .-| asc オプション |---. | >---------+-sort-key-expression--+----------------------+-+--+--| | '-| desc オプション |--' | '-ORDER OF--table-designator--------------------' asc オプション .-NULLS LAST--. |---ASC--+-------------+----------------------------------------| '-NULLS FIRST-' desc オプション .-NULLS FIRST--. |---DESC--+--------------+--------------------------------------| '-NULLS LAST---' ORDER BY (sort-key-expression,...) 区分内の行の配列を定義し、OLAP 関数の値を決定したり、あるいは window-aggregation-group-clause の ROW 値の意味を判別したりします (照 会結果セットの配列は定義されません)。 sort-key-expression ウィンドウ区分内の行の配列の定義に使用される式です。 sort-key-expression 内で参照される各列名は、OLAP 関数を含み、 副選択の 結果セットの列を明確に参照するものでなければなりません。 (SQLSTATE 42702 または 42703)。各 sort-key-expression の長さは、 255 バイトを超 えてはなりません (SQLSTATE 42907)。sort-key-expression は、 スカラー全 選択を組み込むことはできません (SQLSTATE 42822)。 また、可変の関数、あ るいは外部処理を伴う関数を組み込むことは できません (SQLSTATE 42845)。 この文節は、RANK および DENSE_RANK 関数で 必要です (SQLSTATE 42601)。 ASC sort-key-expression の値を昇順にします。 DESC sort-key-expression の値を降順にします。 NULLS FIRST ウィンドウ配列において、ソート順序は、すべての非 NULL 値の 前に NULL 値が置かれます。 NULLS LAST ウィンドウ配列において、ソート順序は、すべての非 NULL 値の 後に NULL 値が置かれます。 ORDER OF table-designator table-designator で使用されているのと同じ配列が 副選択の結果表に適用さ れることを指定します。この文節を指定する副選択の FROM 文節に、 table-designator と一致する表参照がなければなりません。 (SQLSTATE 42703)。指定されている table-designator に対応する 副選択 (または全選 択) は、データに従属する ORDER BY 文節を含む必要があります。 (SQLSTATE 428FI SQLCODE -20210)。ネストされた副選択 (または全選択) の ORDER BY 文節の列が外部の副選択 (または全選択) に組み込まれ、またこれらの列が ORDER OF 文節の代わりに 指定されたかのように、同じ配列が適用されます。 表指定子に関する詳細は、SQL 解説書 の「あいまいさを避けるための列名修 飾子」を参照してください。 ------------------------------------------------------------------------ 42.9 GET_ROUTINE_SAR プロシージャー用の新規入力引き数 このプロシージャーは、タイプ INTEGER の入力引き数である hide_body_flag をサ ポートするようになりました。 この引き数は、ルーチン・テキストがカタログから 抽出されたときに、 ルーチン本文を隠すかどうかを、(以下のいずれかを使用して) 指定します。 0 ルーチン・テキストをそのままにします。これがデフォルト値です。 1 ルーチン・テキストがカタログから抽出されたときに、ルーチン本文を空の本 文と置き換えます。 >>-GET_ROUTINE_SAR----------------------------------------------> >----(--sarblob--,--タイプ--,--routine_name_string--+--------------------+---)-> '-,--hide_body_flag--' >-------------------------------------------------------------->< ------------------------------------------------------------------------ 42.10 SET INTEGRITY ステートメントに必要な許可 保全性の検査をオフにするためにこのステートメントを使用する場合、 ステートメ ントの許可 IDの特権に、少なくとも以下のいずれかが含まれていなければなりませ ん。 * CONTROL 特権: o 指定された表、 o ステートメントによって保全性検査がオフになった下層外部キー表、お よび o ステートメントによって保全性検査がオフになった下層即時サマリー 表。 * SYSADM または DBADM 権限 * LOAD 権限 ------------------------------------------------------------------------ ユニコード更新 ------------------------------------------------------------------------ 43.1 入門 ユニコード標準は、書かれた文字とテキストのための汎用文字エンコード・ スキー ムです。 文字セットを非常に正確に定義すると同時に、少数のエンコードも 定義 します。 テキスト・データの国際的な交換と、グローバル・ソフトウェアの基礎の 作成を可能にする エンコード・マルチリンガル・テキストの一貫性のある方法を定 義します。 ユニコードには 2 つのエンコード・スキーム、UTF-16 および UTF-8 が備えられて います。 デフォルトの エンコード・スキームは UTF-16 で、これは 16 ビットのエンコー ド・スキームです。 UCS-2 は UTF-16 のサブセットで、これは文字を表すために 2 バイトを使用します。 UCS-2 は一般に、既存のすべての 1 バイトおよび 2 バイ ト・コード・ページから すべての必要な文字を表現可能な汎用コード・ページとし て受け入れられています。 UCS-2 は、IBM ではコード・ページ 1200 として登録さ れています。 他のユニコード・エンコード形式には UTF-8 があり、これはバイト単位で扱われ、 ASCII をベースとする既存のシステムで容易に使用できるように設計されていま す。 UTF-8 は、各文字を保管するために可変のバイト数 (通常 1-3、4 の場合あ り) を 使用します。変化しない ASCII 文字は単一バイトとして保管されます。そ れ以外の 文字はすべて複数バイトを使用して保管されます。一般に UTF-8 データ は、 マルチバイト・コード・ページのために設計されていないコードによって、 拡張 ASCII データとして扱うことができます。UTF-8 は、IBM では コード・ペー ジ 1208 として登録されています。 アプリケーションは、データがローカル・コード・ページ、UCS-2 および UTF-8 の 間で変換されるときにデータの要件を考慮に入れることが重要になります。 たとえ ば 20 文字は、UCS-2 ではちょうど 40 バイト、UTF-8 ではオリジナルの コード・ ページと使用される文字に応じて 20 から 60 バイトを必要とします。 43.1.1 DB2 ユニコード・データベースおよびアプリケーション UTF-8 のコード・セットを指定して作成された DB2 ユニバーサル・データベース Unix 版、Windows 版、 および OS/2 版を使用すれば、UCS-2 と UTF-8 の両方のフ ォーマットのデータを保管できます。 このようなデータベースは、ユニコード・デ ータベースと呼ばれます。 SQL 文字データは UTF-8 を使用 してエンコードされ、 SQL 漢字データは UCS-2 を使用してエンコードされます。 つま り、MBCS 文字 は、 単一バイト文字および 2 バイト文字の両方を含めて文字列に保管され、DBCS 文字は、 漢字の列に保管されます。 アプリケーションのコード・ページは、DB2 がデータの保管に使用する コード・ペ ージに一致しない場合があります。非ユニコード・データベースでは、 コード・ペ ージが同じでない場合、データベース・マネージャーがクライアントと サーバーの 間で転送される文字および漢字 (純粋な DBCS) データを変換します。 ユニコー ド・データベースでは、クライアント・コード・ページと UTF-8 間の データの変 換はデータベース・マネージャーによって自動的に実行されますが、 漢字 (UCS-2) データはクライアントとサーバーの間で変換されずに渡されます。 図 1. データベース・マネージャーによって実行されるコード・ページ変換 [データベース・マネージャーによって実行されるコード・ページ変換] 注: 1. ユニコード・データベースに接続するとき、アプリケーションが DB2CODEPAGE=1208 を 設定する場合、ローカル・コード・ページは UTF-8 な ので、コード・ページ変換が必要になります。 2. ユニコード・データベースに接続するとき、CLI アプリケーションは文字デー タを 漢字データとして、漢字データを文字データとして受け取ります。 UTF-8 コード・ページをアプリケーションが指定するのは可能であり、この場合、 漢字データはすべて UCS-2 で、文字データは UTF-8 で送受信されます。この アプ リケーション・コード・ページはユニコード・データベースでのみサポートされま す。 ユニコード使用時のその他の考慮事項には以下があります。 1. データベース・コード・ページはデータベースの作成時に決定され、デフォル トでは この値はオペレーティング・システム・ロケール (またはコード・ペ ージ) から 決定されます。明示的にユニコード DB2 データベースを作成する には、 CODESET および TERRITORY キーワードを使用できます。たとえば: CREATE DATABASE unidb USING CODESET UTF-8 TERRITORY US 2. アプリケーション・コード・ページはまたローカル・コード・ページにデフォ ルト設定 されますが、これは次の 2 つの方法で UTF-8 にオーバーライドさ れます。 o 次のコマンドでアプリケーション・コード・ページを UTF-8 (1208) に 設定します。 db2set DB2CODEPAGE=1208 o CLI/ODBC アプリケーションの場合、 SQLSetConnectAttr() を呼び出し て SQL_ATTR_ANSI_APP を SQL_AA_FALSE に設定します。 デフォルト設 定は SQL_AA_TRUE です。 3. GRAPHIC 列のデータは各ユニコード文字につきちょうど 2 バイトですが、 CHAR 列のデータはユニコード文字につき 1 バイトから 3 バイトを使用しま す。 GRAPHIC 列の 文字に関する SQL 制限は一般に CHAR 列の半分ですが、 バイト数に関しては同じです。 たとえば、CHAR 列の最大文字長は 254 であ り、 漢字の列の最大文字長は 127 です。 詳しくは、SQL 解説書 の「関数」 の章の MAX を参照してください。 4. グラフィック・リテラルは G 接頭部で文字リテラルと区別されます。 たとえ ば: SELECT * FROM mytable WHERE mychar = 'utf-8 data' AND mygraphic = G'ucs-2 data' 注:G 接頭部はユニコード・データベースの場合、オプションです。 詳細および更新されたサポートについては、 40.6.2.4, "ユニコード・データ ベースのリテラル" を参照してください。 5. CLI/ODBC および JDBC アプリケーションのサポートは、組み込みアプリケー ションの サポートとは異なります。CLI/ODBC サポートに関する情報について は、 "CLI の手引きおよび解説書" を参照してください。 6. UCS-2 のバイト順序は、プラットフォーム間で異なる場合があります。 内部 的に DB2 はビッグ・エンディアン形式を使用します。 43.1.2 資料の更新 これらのリリース情報には、DB2 バージョン 7.1 でユニコードを使用する際の次の 情報への 更新が含まれています。 * SQL 解説書: 第 3 章 言語エレメント 第 4 章 関数 第 6 章 SQL ステートメント * CLI ガイドおよび解説書: 第 3 章 拡張フィーチャー 付録 C DB2 CLI および ODBC * DB2 データ移動ユーティリティー手引きおよび解説書、付録 C エクスポート/ インポート/ロード・ユーティリティー・ファイル形式 DB2 でのユニコードの使用法については、管理の手引き の各国語サポート (NLS) の付録: 「DB2 UDB での ユニコード・サポート」を参照してください。 ------------------------------------------------------------------------ ホスト・システムへの接続 部分目次 * DB2 コネクト 使用者の手引き o 44.1 増加する DB2 コネクト・データ転送速度 + 44.1.1 エクストラ照会ブロック + 44.1.2 RFC-1323 ウィンドウ・スケーリング * コネクティビティー補足 o 45.1 VM 環境でのアプリケーション・サーバーのセットアップ o 45.2 CLI/ODBC/JDBC 構成 PATCH1 および PATCH2 の設定 ------------------------------------------------------------------------ DB2 コネクト 使用者の手引き ------------------------------------------------------------------------ 44.1 増加する DB2 コネクト・データ転送速度 照会結果セットの行のブロック化に新しさがないのに対して、バージョン 6.1 リリ ース 以降の DB2 (z/OS 版) (従来 DB2 (OS/390 版) と呼ばれていた) には、DB2 コネクトなどの リモート・クライアントに対する OPEN または FETCH 要求に応答 して複数の照会ブロックを 戻す機能がありました。 一度に 1 ブロックの行データ を要求して DB2 (z/OS 版) サーバーに繰り返し 要求を送信するのではなく、クラ イアントはオプションでサーバーが追加の数の照会ブロックを送り返す ように要求 できるようになりました。 このような追加の照会ブロックを エクストラ照会ブロ ックと呼びます。 この新しいフィーチャーを使用すれば、クライアントはネットワーク回線反転の数 を最小化する ことができ、ネットワーク・パフォーマンスに大きな影響を及ぼしま す。 クライアントがサーバーに送信する照会ブロックへの要求の数が減ると、パフ ォーマンスが大幅に押し上げられます。 これは、送受信間のスイッチは、パフォー マンスの観点から高価な操作だからです。DB2 コネクト は、DB2 (z/OS 版) サーバ ーからデフォルトでエクストラ照会ブロックを要求することによって、 このパフォ ーマンス改善を活用できるようになりました。 TCP/IP の優先ネットワーク・プロトコル用のエクストラ照会ブロック (各ブロック は、 最大 32K バイトまでの長さを取ることができる) の戻しを最大限利用するた めに、 ウィンドウ・スケーリング拡張機能も DB2 コネクトの RFC-1323 の下で 設 計済みとして使用可能化されます。このフィーチャーを使用すれば、TCP/IP は動的 かつ効率的に、 送受信ウィンドウ・サイズを調整して、エクストラ照会ブロックを 介して戻される 可能性がある大量なデータを収容できます。 44.1.1 エクストラ照会ブロック バージョン 6.1 以降の DB2 (z/OS 版) サーバーにおけるエクストラ照会ブロッ ク・サポートは、 「DB2 DDF インストール」パネルの EXTRA BLOCKS SRV パラメー ターを 介して構成されます。 このパラメーターは、要求に対して DB2 がクライア ントに送り返す ことができるエクストラ照会ブロックの最大数を制御し、0 〜 100 の間の値に 設定できます。パラメーター値を 0 に設定すると、エクストラ照会ブ ロックを戻すことが できなくなります。 デフォルト値の 100 は、 この設定値を 理想的なレベル以下にするネットワークのあらゆる特質を排除して、 このフィーチ ャーを最大限に利用するために使用します。 アプリケーションが、同じ場所に配置された DB2 コネクト・インストールを介して 直接、 または別の DB2 コネクト・サーバー・インストールを介して DB2 (z/OS 版) にアクセスする クライアント・サイドで、対応する DB2 コネクト・サポート をカーソル単位でまたは次を使用して ステートメント・ベースで活動化する各種の 方法があります。 * カーソルの照会行セット・サイズ * カーソルに関連した SELECT ステートメント上の 'OPTIMIZE for N ROWS' 節 * カーソルに関連した SELECT ステートメント上の 'FETCH FIRST N ROWS ONLY' 節 オプション 1 は、このセクションでは取り扱っていません。これは、DB2 コネク ト・ バージョン 7.1 フィックスパック 2 の DB2 (z/OS 版) スクロール可能・サ ポートの一部として すでにインプリメントされているからです。 このセクション の焦点は、 次のように異なる SQL API を使用してエクストラ照会ブロックを使用 可能にすることではなく、 オプション 2 および 3 の使用に当てられています。 1. 組み込み SQL o SELECT ステートメント自体の上で 'OPTIMIZE for N ROWS' 節 または 'FETCH FIRST N ROWS ONLY' 節 (あるいはその両方) を指定することに よって、 照会のためにエクストラ照会ブロックを呼び出します。 o 'OPTIMIZE for N ROWS' 節を指定すると、DB2 (z/OS 版) は、EXTRA BLOCKS SRV DDF インストール ・パラメーターの設定に応じて、必要な 行数をブロックして DB2 コネクトに 戻そうとします。 アプリケーショ ンは、N 行を超えたフェッチを選択できます。これは、 照会結果セット に最終的に戻すことができる行数の合計を DB2 (z/OS 版) が N に 制限 していないからです。 o 'FETCH FIRST N ROWS ONLY' 節も同様に機能しますが、 照会結果セット は、DB2 (z/OS 版) によって N 行に制限されています。N 行を超えてフ ェッチする と、SQL コード +100 (データの終わり) が表示されます。 2. CLI/ODBC o SQL_MAX_ROWS ステートメント属性を介して照会のためにエクストラ照会 ブロックを呼び出します。 o DB2 コネクトは、DB2 (z/OS 版) 6.x サーバーの場合、'OPTIMIZE for N ROWS' 節に タグを付けます。 照会結果セットに最終的に戻すことがで きる行数が DB2 (z/OS 版) によって N に 制限されていなくても、N 行 を超すフェッチが試みられた場合には、CLI/ODBC は、 アプリケーショ ンに SQL_NO_DATA_FOUND を戻します。 o 代わりに 'FETCH FIRST N ROWS ONLY' 節が DB2 (z/OS 版) 7.1 以降の サーバーに 対して使用されます。 組み込み SQL の場合と同様に、照会 結果セットは、DB2 (z/OS 版) に よって N 行に制限されています。 N 行を超えてフェッチする と、SQL_NO_DATA_FOUND が表示されます。 3. JDBC o setMaxRows 方式を介して照会のためにエクストラ照会ブロックを呼び出 します。 CLI/ODBC の使用可能化と同様に、DB2 コネクトは、DB2 (z/OS 版) サーバー 6.x の 場合、'OPTIMIZE for N ROWS' 節にタグを付け、 DB2 (z/OS 版) サーバー 7.1 以降の 場合、'FETCH FIRST N ROWS ONLY' 節にタグを付けます。 44.1.2 RFC-1323 ウィンドウ・スケーリング TCP/IP 用に RFC-1323 拡張機能をサポートするすべての Windows および UNIX プ ラットフォーム上で は、フィックスパック 4 時点で、ウィンドウ・スケーリング がサポートされています。この フィーチャーは、DB2 レジストリー変数 DB2SORCVBUF を介して DB2 (Windows およ び UNIX 版) 上で使用可能化することが できます。ウィンドウ・スケーリングを使用可能に するには、DB2 レジストリー変 数 DB2SORCVBUF を 64K を超える任意の値に設定します (たとえ ば、DB2 (Windows または UNIX 版) 上では、db2set DB2SORCVBUF =65537 を発行できます)。最大の送 受信バッファー・サイズは、個々のオペレーティング・システムに よって異なりま す。 構成されたバッファー・サイズが受信されたことを確認するために、ユーザー は データベース・マネージャー構成パラメーター DIAGLEVEL を 4 (通知) に設定 し、db2diag.log ファイルをチェックしてメッセージを調べることができます。 ウィンドウ・スケーリングを有効にするには、接続の両端で使用可能化される 必要 があります。 たとえば、ウィンドウ・スケーリングを DB2 コネクト・ワークステ ーションと ホストの間で使用可能にするには、このフィーチャーは、オペレーティ ング・ システム TCP/IP スタックにより、直接的に、または DB2 製品を通じて間 接的にワークステーションと ホストの両方で活動状態になければなりません。 た とえば、DB2 (z/OS 版) の場合、ウィンドウ・ スケーリングは、現在、オペレーテ ィング・システムを介して TCPRCVBUFRSIZE を 64K を超す任意の値 に設定するこ とによってのみ、活動化できます。 リモート DB2 クライアントが、DB2 コネクト・サーバー・ワークステーションを 介してホスト DB2 にアクセスするために使用される場合、 ウィンドウ・スケーリ ングはクライアント上でも使用可能にすることができます。 同じトークンを取るこ とによって、ウィンドウ・スケーリングは、ホスト DB2 が関係していない場合に、 リモート DB2 クライアントとワークステーション DB2 サーバーとの間でも使用可 能にすることができます。 ウィンドウ・スケーリングはネットワーク・パフォーマンスを向上させるように設 計されていますが、 期待されたパフォーマンスの向上が常に実現するとは限りませ ん。 イーサネットまたはトークンリング LAN アダプターに使用されるフレーム・ サイズ、IP MTU サイズ、およびその他の 通信リンク全体のルーターにおける設定 値などの要因間の相互作用は、ウィンドウ・スケーリングが 使用可能化されると、 性能低下を引き起こす可能性さえあります。デフォルトでは、ウィンドウ・ スケー リングは、送受信双方のバッファーを 64K に設定して使用不可になっています。ユ ーザーは、 ウィンドウ・スケーリングをオンにした場合の影響を評価し、必要なあ らゆる調整をネットワークに 加える準備をする必要があります。ネットワークのパ フォーマンス向上のためのネットワークの調整 に関する手引きについては、 http://www.networking.ibm.com/per/per10.html にある ホワイト・ペーパーを参 照してください。 ------------------------------------------------------------------------ コネクティビティー補足 ------------------------------------------------------------------------ 45.1 VM 環境でのアプリケーション・サーバーのセットアップ 以下の文を、「ネットワーク情報の提供」のサブセクション「アプリケーション・ サーバーを定義する」の 最初の行の後に追加してください。 RDB_NAME が DBNAME パラメーターの SQLSTART EXEC で提供されています。 ------------------------------------------------------------------------ 45.2 CLI/ODBC/JDBC 構成 PATCH1 および PATCH2 の設定 CLI/ODBC/JDBC ドライバーは、クライアント構成アシスタントまたは ODBC ドライ バー・マネージャー (システムにインストールされている場合) から、 あるいは手 動で db2cli.ini ファイルを編集して構成できます。 詳細については、インストー ルおよび構成補足 または CLI ガイドおよび解説書 を参照してください。 DB2 CLI/ODBC ドライバーのデフォルトの振る舞いは、db2cli.ini ファイルまたは SQLDriverConnect() か SQLBrowseConnect() CLI API を経由して PATCH1 および PATCH2 キーワードの両方に値を指定して、変更することができます。 PATCH1 キーワードは、ユーザーが設定したいすべてのキーワードを追加して 指定 されます。 たとえば、パッチ 1、2、および 8 が指定されると、PATCH1 には値 11 があります。 次が各キーワードの値の記述と、ドライバーへの効果です。 1 - これにより、ドライバーは "count(exp)" を検索し、 "count(distinct exp)" と置き換えます。DB2 のバージョンによっては、 "count(exp)" 構文をサポートするものがあり、この構文は ODBC アプリケーション で生成されるため、この処置が必要になります。Microsoft のアプリケーションでは、 サーバーが "count(exp)" 構文をサポートしないときに、この構文を必要します。 2 - ODBC アプリケーションの中には、LITERAL_PREFIX または LITERAL_SUFFIX 列の いずれかのために、SQLGetTypeInfo() 関数で SQL_NULL_DATA が戻されたときに トラップされるものがあります。これは、ドライバーに、空ストリングを 戻すよう強制します。Impromptu 2.0 で必要です。 4 - これはタイム・スタンプの時刻と小数部がゼロの場合、ドライバーに 入力タイム・スタンプ・データを日付データとして扱うよう強制します。 Microsoft Access で必要です。 8 - これはタイム・スタンプの日付部分が 1899-12-30 の場合、ドライバーに 時間データとして入力タイム・スタンプを扱うよう強制します。 Microsoft Access で必要です。 16 - 未使用 32 - ドライバーに、SQL_LONGVARCHAR、SQL_LONGVARBINARY、および SQL_LONGVARGRAPHIC 列に関する情報を戻さないよう強制します。アプリケーションでは、 長いフィールドがサポートされないように示されます。Lotus 123 で必要です。 64 - これは、ドライバーにグラフィックス出力ストリングでヌル終了を強制します。 2 バイト環境の Microsoft Access で必要です。 128 - これは、ドライバーが、照会 "SELECT Config, nValue FROM MSysConf" を サーバーへ送信するよう強制します。現在、ドライバーは、S0002 (表が見つからない) の SQLSTATE 値に関連したエラーを戻しています。ユーザーがデータベースにこの構成表を 作成し、アプリケーションからアクセスできるようにしたい場合に必要です。 256 - ドライバーに SQLStatistics() 呼び出しの最初に、1 次キー列を戻すよう 強制します。現在、ドライバーは、索引名でソートされた索引を返します。 これは、標準 ODBC の振る舞いです。 512 - ドライバーに、SQL_API_SQLTABLEPRIVILEGES と SQL_API_SQLCOLUMNPRIVILEGES の両方で SQLGetFunctions() 関数で FALSE を戻すよう強制します。 1024 - 実行された UPDATE または DELETE ステートメントが行に影響しない場合に、 ドライバーに、SQLExecute() または SQLExecDirect() で、SQL_NO_DATA_FOUND ではなく SQL_SUCCESS を戻すよう強制します。Visual Basic アプリケーションで必要です。 2048 - 未使用 4096 - 自動コミット・モードの時に、カーソルのクローズ後に COMMIT を 実行しないよう、ドライバーに強制します。 8192 - ドライバーに、ストアード・プロシージャーの呼び出し後に、余分な結果セットを 戻すよう強制します。この結果セットは、ストアード・プロシージャーの出力値から 構成される 1 行の結果セットです。 Powerbuild アプリケーションでアクセスできます。 32768 - ドライバーに、DB2 MVS 同義語を使用して、Microsoft Query アプリケーション を強制的に動作させます。 65536 - ドライバーに、実際には GRAPHIC リテラルである文字リテラルの前に "G" を手動で 挿入するよう強制します。このパッチは、2 バイト環境で動作する時には、 必ず指定する必要があります。 131072 - タイム・スタンプ列が固有索引の一部である時、タイム・スタンプ列を CHAR(26) 列として記述するようドライバーに強制します。 Microsoft のアプリケーションで必要です。 262144 - ドライバーに、SYSCAT.PROCEDURES および SYSCAT.PROCPARMS 表の 代わりに、疑似カタログ表の db2cli.procedures を使用するよう 強制します。 524288 - ドライバーに、DB2/400 V3.x システムへのシステム表照会を行う際に、 TABLE_SCHEMA の代わりに SYSTEM_TABLE_SCHEMA を使用するよう強制します。 この結果、パフォーマンスが向上されます。 1048576 - ドライバーに、SQLPutData() からのゼロ長ストリングを SQL_NULL_DATA として扱うよう強制します。 PATCH2 キーワードは PATCH1 キーワードとは異なります。 この場合、複数のパッ チがコンマ区切り記号を使用して指定されます。 たとえば、パッチ 1、4、および 5 が指定されると、PATCH2 には値 "1,4,5" があります。 次が各キーワードの値の 記述と、ドライバーへの効果です。 1 - ドライバーに、CALL ステートメントでのストアード・プロシージャーの 名前を大文字に強制的に変換させます。 2 - 未使用。 3 - ドライバーに、スキーマ呼び出しのすべての引き数を大文字にするよう強制します。 4 - スキーマ呼び出し (SQLColumns()、SQLProcedureColumns() など) に対して ドライバーが、バージョン 5 のような結果セットの代わりに、バージョン 2.1.2 のような 結果セットを戻すよう強制します。 5 - ドライバーに、入力 VARCHAR 列の処理を最適化しないよう強制します。 入力 VARCHAR 列では、データへのポインターと長さへのポインターが メモリー内で連続しています。 6 - ドライバーに、スクロール可能カーソルがサポートされないというメッセージを 戻すよう強制します。DB2 クライアントがバージョン 5 で、サーバーが DB2 UDB バージョン 5 の場合に、Visual Basic プログラムで必要です。 7 - ドライバーに、すべての GRAPHIC 列データ・タイプを CHAR 列データ・タイプ にマップするよう強制します。2 バイト環境で必要です。 8 - ドライバーに、スキーマ呼び出しのカタログ検索引き数を無視するよう強制します。 9 - カーソルの Early Close でコミットしません 10 - 未使用 11 - カタログ名がサポートされていることを報告します (VB ストアード・プロシージャー) 12 - スキーマ呼び出し引き数から二重引用符を除去します (Visual Interdev) 13 - db2cli.ini から出力接続ストリングへ、キーワードを追加しません 14 - SQLProcedures() と SQLProcedureColumns() でスキーマ名を無視します 15 - 文字出力で小数点にピリオドを常に使用します 16 - オープンごとに describe 情報を強制的に戻します 17 - describe で列名を返しません 18 - パラメーター・マーカーでリテラルを置き換えます 19 - 現在、DB2 MVS V4.1 は、括弧が外部結合文節の ON 文節で許可されている ODBC 構文をサポートしていません。  この PATCH2 をオンにした場合、外部結合文節が ODBC エスケープ・シーケンスにあると、 IBM DB2 ODBC ドライバーが括弧をストリップします。 この PATCH2 は DB2 MVS 4.1 に対してのみ使用してください。 20 - 現在、MVS 上の DB2 は、両方のオペランド (expression ? BETWEEN ?) として パラメーター・マーカーを使用した BETWEEN 述部をサポートしていません。 このパッチをオンにすると、IBM ODBC ドライバーが (expression >= ? と expression <= ?) に述部を再書き込みします。 21 - ストアード・プロシージャー用のすべての OUTPUT only パラメーターを SQL_NULL_DATA に設定します。 22 - この PATCH2 によって、IBM ODBC ドライバーは外部結合がサポートされていないと報告します。 これは外部結合ステートメントの使用時に、SELECT DISTINCT col1 または ORDER BY col1 (col1 は 254 文字を超える) を生成するアプリケーションに使用され、DB2 UDB は    この方式では、254 バイトを超える長さの列をサポートしないためです。 23 - cbColDef=0 でバインドしたパラメーターに入力を最適化しません 24 - 時刻値を文字としてマッピングするアクセス予備手段 25 - 10 進数列のアクセス予備手段 - CHAR 表記の後続ゼロの除去 26 - sqlcode 464 をアプリケーションに戻しません - 結果セットが戻されます 27 - アプリケーションで有効値を指定している場合でも、SQLTables で強制的に TABLETYPE キーワード値を使用します 28 - 実際の列を重複列として記述します 29 - 10 進数列の ADO 予備手段 - 値 x の先行ゼロの除去 ここで、1 > x > -1 (特定の MDAC バージョンでのみ必要) 30 - ストアード・プロシージャーのキャッシュ最適化を使用不可にします 31 - SQLStatistics 呼び出しの別名の統計を報告します 32 - sqlcode -727 理由コード 4 の処理を変更します 33 - CHAR に変換時にタイム・スタンプの ISO バージョンを戻します (ODBC バージョンとは逆) 34 - CHAR FOR BIT DATA 列を CHAR として報告します 35 - SQL_DESC_BASE_TABLE_NAME が要求された場合に無効な TABLENAME を 報告します - ADO 読み取り専用最適化 36 - 予約済み 37 - 予約済み ------------------------------------------------------------------------ 追加の情報 部分目次 * 追加の情報 o 46.1 DB2 Everywhere は DB2 Everyplace に変更されました o 46.2 DB2 UDB バージョン 7 のユーザー補助機能 + 46.2.1 キーボードによる入力および操作 + 46.2.1.1 キーボード入力 + 46.2.1.2 キーボード・フォーカス + 46.2.2 ディスプレイを見やすくする機能 + 46.2.2.1 高コントラスト・モード + 46.2.2.2 フォント設定 + 46.2.2.3 色の非依存 + 46.2.3 選べる警告キュー + 46.2.4 補助技術の互換性 + 46.2.5 利用しやすい資料 o 46.3 マウスが必要 o 46.4 「バインド・ファイルが見つかりません」のエラーで DB2 ランタ イム・クライアント結果からバインドを試みる o 46.5 サーチ・ディスカバリー o 46.6 HP-UX 11 のメモリー・ウィンドウ o 46.7 DB2 DFS クライアント・イネーブラーのアンインストール o 46.8 Windows NT 上でのクライアントの認証 o 46.9 統合システムの制約 o 46.10 MPP 区分表を用いた統合制限 o 46.11 DataJoiner 制約 o 46.12 Hebrew Information Catalog Manager for Windows NT o 46.13 DB2 の SNA SPM が Windows ブート後に失敗します o 46.14 Windows NT および Windows 2000 での DB2 に対するサービス・ アカウント要件 o 46.15 データウェアハウスセンター (DWC) で使用される すべてのユー ザー定義プログラムをコミットする o 46.16 Windows NT 上でのクライアント・サイド・キャッシング o 46.17 ライフ・サイエンス データ・コネクト + 46.17.1 新規ラッパー + 46.17.2 特記事項- o 46.18 SQL Assist の機能強化 o 46.19 バックアップおよびリストア・コマンドのヘルプ o 46.20 「ウェアハウス・マネージャー」は「DB2 ウェアハウス・マネー ジャー」 ------------------------------------------------------------------------ 追加の情報 ------------------------------------------------------------------------ 46.1 DB2 Everywhere は DB2 Everyplace に変更されました DB2 Everywhere の名称が DB2 Everyplace に変更になりました。 ------------------------------------------------------------------------ 46.2 DB2 UDB バージョン 7 のユーザー補助機能 DB2 UDB 製品ファミリーには、体の不自由な方のために 製品をより使いやすくする 機能が用意されています。以下のような機能が あります。 * キーボードの入力および操作を簡単にする機能 * プロパティーの表示を強調する機能 * 音と表示により警告を促すオプション * 補助技術の互換性 * オペレーティング・システムのユーザー補助機能との互換性 * 利用しやすい文書形式 46.2.1 キーボードによる入力および操作 46.2.1.1 キーボード入力 DB2 コントロール・センターはキーボードのみを使用して操作することができま す。メニュー項目と コントロールではユーザーがキーボードから直接、コントロー ルを活動状態にしたり、メニュー項目を 選択したりできるアクセス・キーを提供し ています。アクセス・キーはコントロールやメニューの上に 下線で表示されてお り、自己文書化することができます。 46.2.1.2 キーボード・フォーカス UNIX ベースのシステムでは、キーボード・フォーカスの位置が反転表示され、 ウ ィンドウが活動状態のエリアとユーザーのキー・ストロークが影響する位置を 示し ています。 46.2.2 ディスプレイを見やすくする機能 DB2 コントロール・センターには、ユーザー・インターフェースを強調し、 視力の 低いユーザーでも身近に感じられるようにする多くの機能があります。これらの補 助機能には 高コントラスト設定やカスタマイズ可能なフォント・プロパティーのサ ポートなどが含まれています。 46.2.2.1 高コントラスト・モード コントロール・センターのインターフェースはオペレーティング・システムが提供 する高コントラスト・モードを サポートしています。この機能は背景色と前景色と のコントラストが強い方が望ましいユーザーを 補助する機能です。 46.2.2.2 フォント設定 コントロール・センターのインターフェースは、テキストの色やサイズ、フォント を、 ユーザーがメニューとダイアログ・ウィンドウから選べるようになっていま す。 46.2.2.3 色の非依存 本製品のあらゆる機能を使う上で、ユーザーが色を 見分ける必要はありません。 46.2.3 選べる警告キュー ユーザーは、警告を受ける場合の方法として、音の合図と目で見える合図を選ぶこ とができます。 46.2.4 補助技術の互換性 DB2 コントロール・センターのインターフェースは Via Voice などの画面読み込み アプリケーション と互換性があります。アプリケーション・モード時、コントロー ル・センターのインターフェースは、 目の不自由なユーザーが画面上の情報を利用 できるよう、これらの補助アプリケーションに 必要なプロパティーを所有していま す。 46.2.5 利用しやすい資料 DB2 ファミリー製品の資料は利用しやすい HTML 形式です。 これによりユーザーは ブラウザーを参照できるよう設定することで 資料を表示することができます。画面 読み込みや、他の補助技術を使用する ことも可能です。 ------------------------------------------------------------------------ 46.3 マウスが必要 Windows を除くすべてのプラットフォームで、ツールを使用するためにマウスが必 要になります。 ------------------------------------------------------------------------ 46.4 「バインド・ファイルが見つかりません」のエラーで DB2 ランタイム・クラ イアント結果からバインドを試みる DB2 ランタイム・クライアントは、バインド・ファイルのフルセットを持っていな いので、 DB2 ランタイム・クライアントから GUI ツールのバインディングを行う ことはできません。 この操作は、DB2 管理クライアントのみ行うことができます。 ------------------------------------------------------------------------ 46.5 サーチ・ディスカバリー サーチ・ディスカバリーは、ブロードキャスト媒体上のみサポートされています。 たとえば、サーチ・ディスカバリーは ATM アダプターを介しては機能しません。 ただしこの制限は既知のディスカバリーには適用されません。 ------------------------------------------------------------------------ 46.6 HP-UX 11 のメモリー・ウィンドウ メモリー・ウィンドウは、ラージ HP 64 ビット・マシンで、32 ビット・アプリケ ーションの 共有メモリーの 1.75GB よりもたくさんのメモリーを利用したいユーザ ー向けです。 64 ビット・バージョンの DB2 を実行する場合、メモリー・ウィンド ウは必要ありません。 メモリー・ウィンドウは、処理ごとまたは処理のグループご とに、1 の共有メモリーが使用可能です。 これは、インスタンス独自の 1GB の共 有メモリーと、0.75GB のグローバル共有メモリーを所有することができます。 ユ ーザーがこれを利用したい場合、複数インスタンスを、それぞれ独自のウィンドウ で実行することができます。 メモリー・ウィンドウを使用する場合の前提条件と状 態は、次の通りです。 * DB2 EE 環境 o パッチ : 拡張ソフトウェア 12/98、および PHKL_17795 o $DB2INSTANCE 変数がインスタンスに設定されている o メモリー・ウィンドウで実行したい DB2 インスタンスごとに、 /etc/services.window ファイルに項目がある必要があります。 たとえ ば: db2instance1 50 db2instance2 60 注: 名前と ID の間にはシングル・スペースのみが入ります。 o サーバーで実行、およびシングル・ステートメントより多くのものが必 要な DB2 コマンドは、 TCP/IP ループバック方式を使用して実行する必 要があります。 これは、メモリー・ウィンドウが最初のステートメント の処理を終了した時に、シェルが終了しているためです。 DB2 サービス は、この完了方法について認識しています。 o メモリー・ウィンドウで実行するインスタンスに対して、 実行したい DB2 コマンドは、db2win (sqllib/bin にあります) で 始まる必要があ ります。 たとえば: db2win db2start db2win db2stop o メモリー・ウィンドウの外側で実行される DB2 コマンド (メモリー・ウ ィンドウは実行中) は、 1042 を返す必要があります。 たとえば: db2win db2start <== OK db2 connect to db <==SQL1042 db2stop <==SQL1042 db2win db2stop <== OK * DB2 EEE 環境 o パッチ : 拡張ソフトウェア 12/98、および PHKL_17795 o $DB2INSTANCE 変数がインスタンスに設定されている o DB2_ENABLE_MEM_WINDOWS レジストリー変数は TRUE に設定されている必 要があります。 o メモリー・ウィンドウで実行したい各論理ノードの インスタンスごと に、/etc/services.window ファイルに 項目がある必要があります。 各 項目のはじめのフィールドはポート番号と連結した インスタンス名であ る必要があります。 たとえば: === $HOME/sqllib/db2nodes.cfg for db2instance1 === 5 host1 0 7 host1 1 9 host2 0 === $HOME/sqllib/db2nodes.cfg for db2instance2 === 1 host1 0 2 host2 0 3 host2 1 === /etc/services.window on host1 === db2instance10 50 db2instance11 55 db2instance20 60 === /etc/services.window on host2 === db2instance10 30 db2instance20 32 db2instance21 34 o db2win とともに、EE 環境内のみで使用されている DB2 コマンドに 前 置きを付ける必要はありません。 ------------------------------------------------------------------------ 46.7 DB2 DFS クライアント・イネーブラーのアンインストール DB2 DFS クライアント・イネーブラーがアンインストールされる前に、root は使用 中の DFS ファイルがないか、 DFS ファイル・スペースにあるシェルを開いている ユーザーがいないか、確認する必要があります。 root で、以下のコマンドを実行 します。 stop.dfs dfs_cl /... が、マウントされていないことを確認してください。 mount | grep -i dfs これが実行されていないと、DB2 DFS クライアント・イネーブラーがアンインスト ールされると、 マシンをリブートしなくてはなりません。 ------------------------------------------------------------------------ 46.8 Windows NT 上でのクライアントの認証 新規の DB2 レジストリー変数 DB2DOMAINLIST は、Windows NT 環境での既存のクラ イアント 認証メカニズムを補うために導入されました。 この変数は、複数の Windows NT 定義域を定義するため、Windows NT サーバーの DB2 上で使用します。 このリスト上で定義された定義域に属しているユーザーからの接続、または接続要 求のみ が受け入れられます。 このレジストリー変数は、DB2 サーバーおよびクライアントのバージョン 7 (また はそれ以降) が 稼働する純粋な Windows NT 定義域環境下でのみ使用するようにし てください。 このレジストリー変数を設定する際の情報については、管理の手引き: パフォーマ ンス の 「DB2 レジストリーと環境変数」のセクションを参照してください。 ------------------------------------------------------------------------ 46.9 統合システムの制約 以下は、統合システムに適用される制約です。 * Oracle データ・タイプである NCHAR、NVARCHAR2、NCLOB、および BFILE は、 ニックネームに関係する照会ではサポートされません。 * サーバー作成オプション、サーバー変更オプションおよびドロップ・サーバ ー・オプションのコマンドは コントロール・センターからの実行はサポート していません。 これらのコマンドを実行するには、コマンド行プロセッサー (CLP) を使用する必要があります。 * ニックネームを呼び出す照会では、DB2 UDB は通常、 DFT_SQLMATHWARN デー タベース構成オプションにしたがいません。 その代わり、DFT_SQLMATHWARN の設定に関係なく、DB2 UDB はリモート・データ・ソースから 演算エラー か、警告を直接戻します。 * CREATE SERVER ステートメントは、大文字小文字を区別しない照合シーケンス のデータ・ソースに 「I」 を設定する COLSEQ サーバー・オプションを許可 していません。 * ALTER NICKNAME ステートメントは、無効なオプションが指定されると SQL0901N を返します。 * Oracle、Microsoft SQL Server、および Sybase データ・ソース、数値デー タ・タイプは、 DB2 の BIGINT データ・タイプにはマップされません。 デフ ォルトでは、10 <= p <= 18、および s = 0 のような、Oracle の数値 (p,s) データは、 DB2 の DECIMAL データ・タイプにマップされます。 ------------------------------------------------------------------------ 46.10 MPP 区分表を用いた統合制限 1 つの SQL ステートメントを使用してデータ・ソースからデータを選択し、DB2 統 合サーバー 上の MPP 区分表に直接、データを挿入、更新、または削除しよう とす ると、SQL0901N エラーが表示されます。統合機能では、 ニックネームから選択し て、MPP 区分表に挿入することは 許可されません。 フィックスパック 4 (またはそれ以上) を適用すると、次のステップを使用してデ ータを選択し、 データを MPP 区分表に挿入できます。 1. カスタマー・アプリケーション環境において、DB2NODE 環境変数をエクスポー トして、 アプリケーションが常に接続しなければならないノードを指定す る。 EXPORT DB2NODE=x ただし、x は、ノード番号。 2. 指定されたノードだけを含むノード・グループを作成する。 CREATE NODEGROUP nodegroup_name ON NODE(x) ただし、x は、ノード番号。 3. ノード・グループに表スペースを作成する。 CREATE TABLESPACE tablespace_name IN NODEGROUP nodegroup_name 4. 表スペースに一時表を作成する。 CREATE TABLE temp_table_name IN tablespace_name 5. アプリケーションの INSERT 操作を 2 つのステップに分割する。 o INSERT INTO temp_table_name SELECT * FROM nickname o INSERT INTO MPP_partitioned_table SELECT * from temp_table_name INSERT ステートメントを 2 つのステートメントに分割すると、ステートメント・ レベル・コミット およびロールバック・セマンティクスが変更されます。たとえ ば、1 つのステートメントをロールバック するのではなく、今後は 2 つのステー トメントをロールバックする必要があります。 さら に、DB2NODE 環境変数に関連 したノード番号を変更した場合は、アプリケーション・パッケージを 無効にして再 バインドする必要があります。 上記のステップを実行すれば、データ・ソースからデータを選択し、MPP 区分表に データを 挿入できます。 1 つのステートメントを使用してデータ・ソースからデ ータを選択 し、MPP 区分表のデータを更新、または削除しようとすると、 引き続 き、SQL0901N エラーが表示されます。 この制約事項は、DB2 ユニバーサル・デー タベース・ バージョン 8 では削除されます。 ------------------------------------------------------------------------ 46.11 DataJoiner 制約 統合環境内で実行された分散要求は、読み取り専用操作の制限が付与されていま す。 ------------------------------------------------------------------------ 46.12 Hebrew Information Catalog Manager for Windows NT The Information Catalog Manager component is available in Hebrew and is provided on the DB2 Warehouse Manager for Windows NT CD. The Hebrew translation is provided in a zip file called IL_ICM.ZIP and is located in the DB2\IL directory on the DB2 Warehouse Manager for Windows NT CD. To install the Hebrew translation of Information Catalog Manager, first install the English version of DB2 Warehouse Manager for Windows NT and all prerequisites on a Hebrew Enabled version of Windows NT. After DB2 Warehouse Manager for Windows NT has been installed, unzip the IL_ICM.ZIP file from the DB2\IL directory into the same directory where DB2 Warehouse Manager for Windows NT was installed. Ensure that the correct options are supplied to the unzip program to create the directory structure in the zip file. After the file has been unzipped, the global environment variable LC_ALL must be changed from En_US to Iw_IL. To change the setting: 1. Open the Windows NT Control Panel and double click on the System icon. 2. In the System Properties window, click on the Environment tab, then locate the variable LC_ALL in the System Variables section. 3. Click on the variable to display the value in the Value edit box. Change the value from En_US to Iw_IL. 4. Click on the Set button. 5. Close the System Properties window and the Control Panel. The Hebrew version of Information Catalog Manager should now be installed. ------------------------------------------------------------------------ 46.13 DB2 の SNA SPM が Windows ブート後に失敗します Microsoft SNA サーバー、バージョン 4 SP 3 またはそれ以上を使用する場合、 DB2 の SNA SPM がリブート後、正しく開始したか確認してください。 ファイルの 入力項目が以下と類似している \sqllib\\db2diag.log ファイルを 確認してください。 2000-04-20-13.18.19.958000 Instance:DB2 Node:000 PID:291(db2syscs.exe) TID:316 Appid:なし common_communication sqlccspmconnmgr_APPC_init Probe:19 SPM0453C Microsoft SNA が始動していないため、同期点マネージャーが始動 しません。 2000-04-20-13.18.23.033000 Instance:DB2 Node:000 PID:291(db2syscs.exe) TID:302 Appid:なし common_communication sqlccsna_start_listen Probe:14 DIA3001E 「SNA SPM」 プロトコル・サポートは正常に開始されませんでした。 2000-04-20-13.18.23.603000 Instance:DB2 Node:000 PID:291(db2syscs.exe) TID:316 Appid:なし common_communication sqlccspmconnmgr_listener Probe:6 DIA3103E APPC プロトコル・サポートでエラーが発生しました。 APPC 動詞 「APPC(DISPLAY 1 BYTE)」。1 次 rc は「F004」。2 次 rc は「00000000」。 db2diag.log のファイルにそのような項目があり、そのタイム・スタンプが 最新の ものと一致している場合、次のように実行する必要があります。 1. db2stop を呼び出します。 2. SnaServer サービスを開始します (まだ開始していない場合)。 3. db2start を呼び出します。 db2diag.log ファイルを再び確認し、その項目が もう、追加されていないことを確 かめます。 ------------------------------------------------------------------------ 46.14 Windows NT および Windows 2000 での DB2 に対するサービス・アカウント 要件 DB2 (Windows NT または Windows 2000 版) のインストール中に、 セットアップ・ プログラムは、いくつかの Windows サービスを作成し、このサービスごとにサービ ス・アカウントを割り当てます。 DB2 を正しく実行するには、セットアップ・プロ グラムは、DB2 に関連したサービス・アカウントに対して、 次のユーザー権限を付 与します。 * オペレーティング・システムの一部としての動作 * トークン・オブジェクトの作成 * 割り当て量の増加 * サービスとしてログオン * 処理レベル・トークンの置換 DB2 サービスに対して、別のサービス・アカウントを使用したい場合は、 このユー ザー権限をサービス・アカウントに付与する必要があります。 このユーザー権限の他に、サービス・アカウントは DB2 製品がインストールされて いるディレクトリーに対して、書き込みアクセスも必要です。 DB2 管理サーバー・サービス (DB2DAS00 サービス) に対するサービス・アカウント には、 他の DB2 サービスの開始および停止を行う権限 (つまり、サービス・アカ ウントが パワー・ユーザー・グループに属している必要があります。) と、DB2 が 管理する DB2 インスタンス に対する DB2 SYSADM 権限も必要となります。 ------------------------------------------------------------------------ 46.15 データウェアハウスセンター (DWC) で使用される すべてのユーザー定義プ ログラムをコミットする DB2 ストアード・プロシージャー・ビルダーで作成されたストアード・プロシージ ャーを データウェアハウスセンター (DWC) のユーザー定義プログラムとして使用 したい場合は、 ストアード・プロシージャーの con.close(); ステートメントの前 に、次のステートメントを挿入してください。 con.commit(); このステートメントが挿入されていないと、ストアード・プロシージャーが行った 変更は、ストアード・プロシージャーが DWC から実行される時にロールバックされ ます。 DWC のユーザー定義プログラムすべてが、 データベースに影響する変更用に、組み 込まれた DB2 機能を明白に コミットする必要があります。つまり、ユーザー定義 のプログラムに COMMIT ステートメントを追加する必要があります。 ------------------------------------------------------------------------ 46.16 Windows NT 上でのクライアント・サイド・キャッシング DB2 データ・リンクがインストールされている Windows NT サーバー・マシンにあ る READ PERM DB ファイルに 有効なトークンを使用して共有ドライブによってアク セスしようとしている場合、ファイルは期待通り オープンされます。ただしその 後、同じトークンを使用した後続のオープン要求は実際にはサーバーに 届きません が、クライアント上のキャッシュからサービスされます。トークンの有効期限が切 れた後でも、 項目はまだキャッシュにあるため、ファイルの内容はユーザーに対し て可視であり続けます。 ただし この問題は、ファイルが Windows NT ワークステ ーション上にある場合は発生しません。 この解決策は、レジストリー項目 \\HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\Lanmanserver\Parameters\EnableOpLocks を Windows NT サーバーでゼロに設定することです。 このレジストリー設定により、 サーバー上のファイルが共有ドライブを通じてクライアントからアクセスされる と、 要求はクライアント・キャッシュからサービスされる代わりに、常にサーバー に 到達します。このため、トークンはすべての要求についてもう一度検査されま す。 この解決策の欠点は、これが共有ドライブを通じたサーバーからのすべてのファイ ル・ アクセスのパフォーマンス全体に影響を与えることです。この設定でも、ファ イルが サーバー自体でマップされた共有ドライブを通じてアクセスされる場合は、 他の クライアント・マシンからのアクセスとは異なり、要求はキャッシュからサー ビス されます。このため、トークンの期限切れは起きません。 注:どの場合でも、ファイル・アクセスがローカル・アクセスであり、 共有ドラ イブからのものでなければ、トークンの検査と後続のトークンの期限切れは 予定通りに行われます。 ------------------------------------------------------------------------ 46.17 ライフ・サイエンス データ・コネクト 46.17.1 新規ラッパー フィックスパック 4 で、ライフ・サイエンス データ・コネクトに 2 つの新規ラッ パーが追加されました。 1 つは、AIX 上の Documentum 用、もう 1 つは Windows NT 上の Excel 用です。さらに、表構造 ファイル・ラッパーが、AIX から Windows NT、Solaris、Linux、および HP-UX に移植されています。 フィックスパック 5 では、AIX 上の BLAST ラッパーが DB2 ライフ・サイエンス データ・コネクトに追加されました。Documentum ラッパーが AIX から Windows NT、Windows 2000、HP-UX、おび Solaris 操作環境に移植されました。 46.17.2 特記事項- ライフ・サイエンス データ・コネクトには、Apache Software および ICU からの コードが含まれます。 IBM およびその直接または間接の子会社は、本コードを特定 物として現存するま まの状態で提供し、商品性の保証、特定目的適合性の保証およ び法律上の瑕 疵担保責任を含むすべての明示もしくは黙示の保証責任を負わないも のとし ます。また、補償、賠償の義務も適用されないものとします。 Apache ソフトウェア・ライセンス バージョン 1.1 Copyright (c) 1999-2001 The Apache Software Foundation. All rights reserved. ICU 1.8.1 およびそれ以降 Copyright (c) 1995-2001 International Business Machines Corporation and others All rights reserved. ------------------------------------------------------------------------ 46.18 SQL Assist の機能強化 SQL Assist ツールにより、ユーザーは、表結合で "=" 以外の結合演算子を 指定で きるようになりました。 SQL Assist ツールの「結合」ページで「結合タイプ」ボ タンを クリックすることによって呼び出される「結合タイプ」ダイアログが拡張さ れ、 結合演算子のドロップダウン・リストが組み込まれました。 使用可能な演算子は "="、"<>"、"<"、">"、"<="、および ">=" です。 SQL Assist は、シンプルな SQL ステートメントの作成でユーザーの役に立つツールです。 こ れはコマンド・センター (「対話式」タブ)、 コントロール・センター (「ビュー の作成」および「トリガーの作成」ダイアログ)、 ストアード・プロシージャー・ ビルダー (「SQL ストアード・プロシージャーの挿入」ウィザード)、 およびデー タウェアハウスセンター (SQL 処理ステップ) から使用できます。 ------------------------------------------------------------------------ 46.19 バックアップおよびリストア・コマンドのヘルプ db2 ? backup と入力すると、誤った情報が示されます。正しい出力は次の通りで す。 BACKUP DATABASE database-alias [USER username [USING password]] [TABLESPACE (tblspace-name [ {,tblspace-name} ... ])] [ONLINE] [INCREMENTAL [DELTA]] [USE TSM [OPEN num-sess SESSIONS]] | TO dir/dev [ {,dir/dev} ... ] | LOAD lib-name [OPEN num-sess SESSIONS]] [WITH num-buff BUFFERS] [BUFFER buffer-size] [PARALLELISM n] [WITHOUT PROMPTING] db2 ? restore と入力すると、誤った情報が示されます。正しい出力は次の通りで す。 RESTORE DATABASE source-database-alias { restore-options | CONTINUE | ABORT }"; restore-options:"; [USER username [USING password]] [{TABLESPACE [ONLINE] |"; TABLESPACE (tblspace-name [ {,tblspace-name} ... ]) [ONLINE] |"; HISTORY FILE [ONLINE]}] [INCREMENTAL [ABORT]]"; [{USE TSM [OPEN num-sess SESSIONS] |"; FROM dir/dev [ {,dir/dev} ... ] | LOAD shared-lib"; [OPEN num-sess SESSIONS]}] [TAKEN AT date-time] [TO target-directory]"; [INTO target-database-alias] [NEWLOGPATH directory]"; [WITH num-buff BUFFERS] [BUFFER buffer-size]"; [DLREPORT file-name] [REPLACE EXISTING] [REDIRECT] [PARALLELISM n]"; [WITHOUT ROLLING FORWARD] [WITHOUT DATALINK] [WITHOUT PROMPTING]"; ------------------------------------------------------------------------ 46.20 「ウェアハウス・マネージャー」は「DB2 ウェアハウス・マネージャー」 製品画面および製品ドキュメントに出てくるすべての「ウェアハウス・マネージャ ー」というフレーズは、「DB2 ウェアハウス・マネージャー」と読んでください。 ------------------------------------------------------------------------ 付録 ------------------------------------------------------------------------ 付録 A. 特記事項 IBM は、本書で述べられた製品、サービス、または機能を提供しない 可能性があり ます。 日本で現在使用可能な製品およびサービスに関する情報については、 日本 の IBM 担当者にお問い合わせください。 本書において、日本では発表されていな い IBM 製品 (機械およびプログラム) に ついて言及または説明する場合がありま す。これらのプログラムまたは製品に代えて、IBM の知的所有権を侵害することの ない 機械的に同等のプログラムまたは製品を使用することができます。 これらに 代えて、IBM の知的所有権を侵害することのない、機能的に同等の 製品、プログラ ム、またはサービスを使用することができます。 ただし、IBM 以外の製品、プログ ラムまたはサービスの 操作性の評価および検証は、お客様の責任で行っていただき ます。 IBM 社は、本書で説明する主題に関する特許権 (特許出願を含む) 商標権、 または 著作権を所有している場合があります。 本書は、これらの特許権、商標権、および 著作権について、本書で明示されている場合を除き、 実施権、使用権等を許諾する ことを意味するものではありません。 実施権、使用権等の許諾については、下記の 宛先に書面にてご照会ください。 〒106-0032 東京都港区六本木 3 丁目 2-31 IBM World Trade Asia Corporation Intellectual Property Law & Licensing 本書において、日本では発表されていない IBM 製品 (機械およびプログラム)、プ ログラミングまたは サービスについて言及または説明する場合があります。 国ま たは地域によっては、法律の強行規定により、保証責任の制限が 禁じられる場合、 強行規定の制限を受けるものとします。 本書には技術的な誤りまたは誤植が含まれている可能性があります。 本書に対し て、周期的に変更が行われ、これらの変更は、文書の新規エディションに 組み込ま れます。 IBM は予告なしに、随時、この文書に記載されている製品またはプログラ ムに対して、 改良または変更を行うことがあります。 本書において IBM 以外の Web サイトに言及している場合がありますが、 便宜のた め記載しただけであり、決してそれらの Web サイトを推奨するものでは ありませ ん。 それらの Web サイトにある資料は、この IBM 製品の資料の一部では ありま せん。それらの Web サイトは、お客様の責任でご使用ください。 IBM は、お客様が提供するいかなる情報も、お客様に対してなんら義務も負うこと のない、 自ら適切と信ずる方法で、使用もしくは配布することができるものとしま す。 本プログラムのライセンス保持者で、(i) 独自に作成したプログラムとその他のプ ログラム (本プログラムを含む) との間での情報交換、および (ii) 交換された情 報の相互利用を可能に することを目的として、本プログラムに関する情報を必要と する方は、下記に連絡してください。 IBM Canada Limited Office of the Lab Director 1150 Eglinton Ave. East North York, Ontario M3C 1H7 CANADA 本プログラムに関する上記の情報は、適切な使用条件の下で使用すること ができま すが、有償の場合もあります。 本書で説明されているライセンス・プログラムまたはその他の ライセンス資料は、 IBM 所定のプログラム契約の契約条項、IBM プログラムのご使用条件、またはそれ と同等の条項に基づいて、 IBM より提供されます。 本書において示されるパフォーマンスに関するデータは、いずれも制御 された環境 で決定されたものです。 したがって、稼働環境が 異なれば、得られる結果は著し く異なる場合があります。 また、測定値によっては開発過程で得られたものである 場合があり、 一般的に使用可能なシステムにおいても、 これらと同様な測定値が 得られるという保証 はありません。 さらに、測定値によっては推定によって見積 もられ たものである場合があります。 実際の結果は異なる場合があります。 お客 様は、お客様の特定の環境に適したデータを確かめる必要があります。 他社の製品に関する情報は、それらの 製品の提供者、それらの製品の発表資料、ま たはその他の一般に入手可能 な情報源から入手しました。 IBM はそれらの製品を テストしておらず、パフォーマンス の精度、互換性、またはその他の他社製品に関 するいかなる記述をも保証するものではありません。 他社製品の機能に関するご質 問は、それらの製品の提供者 に送るようお願い致します。 IBM の将来の方向または意向に関して記述がなされていたとしても、 それらは予告 なしに変更または撤回される場合があり、単に目標を示しているものです。 本書には、日常の業務処理で用いられるデータや報告書の例が含まれています。 よ り具体性を与えるために、それらの例には、個人、企業、ブランド、 あるいは製品 などの名前が含まれている場合があります。 これらの名称はすべて架空のものであ り、 名称や住所が類似する企業が実在しているとしても、それは偶然にすぎませ ん。 著作権使用許諾: 本書には、さまざまなオペレーティング・プラットフォームでの プログラミング手 法を例示するソース言語で書かれたサンプル・ アプリケーション・プログラムが掲 載されています。 このサンプル・プログラムは、サンプル・プログラムが書かれて いる オペレーティング・プラットフォームのアプリケーション・ プログラミン グ・インターフェースに準拠したアプリケーション・ プログラムの開発、使用、販 売、または配布を目的として、いかなる 形式においても IBM に対価を支払うこと なくこれを複製し、改変し、 配布することができます。 これらの例は、すべての 場合について完全にテストされたものではありません。 IBM はこれらのプログラム に信頼性、可用性、および機能について法律上の 瑕疵担保責任を含むいかなる明示 または暗示の保証責任も負いま せん。 それぞれの複製物、サンプル・プログラムのすべての部分、またはすべての派生し た創作物 には、次のように著作権表示を入れていただく必要があります。 (c) (お客様の会社名) (西暦年). このコードの一部は、IBM Corp. のサンプル・プ ログラムの派生物です。(c) Copyright IBM Corp. _ 西暦年を入れる _. All rights reserved. ------------------------------------------------------------------------ A.1 商標 次の用語は、アスタリスク (*) が付いている場合もありますが、 米国 International Business Machines Corporation またはその他の国、あるいは その 両方の商標です。 ACF/VTAM IBM AISPO IMS AIX IMS/ESA AIX/6000 LAN DistanceMVS AIXwindows MVS/ESA AnyNet MVS/XA APPN Net.Data AS/400 OS/2 BookManager OS/390 CICS OS/400 C Set++ PowerPC C/370 QBIC DATABASE 2 QMF DataHub RACF DataJoiner RISC System/6000 DataPropagator RS/6000 DataRefresher S/370 DB2 SP DB2 コネクト SQL/DS DB2 エクステンダー SQL/400 DB2 OLAP Server System/370 DB2 ユニバーサル・データベース System/390 分散リレーショナル・ SystemView データベース体系 VisualAge DRDA VM/ESA eNetwork VSE/ESA Extended Services VTAM FFST WebExplorer First Failure Support TechnologyWIN-OS/2 以下の用語は、他社の商標あるいは登録商標です。 Microsoft、Windows、および Windows NT は Microsoft Corporation の米国および その他の国における商標です。 Java およびすべての Java 関連の商標およびロゴ、および Solaris は Sun Microsystems, Inc. の米国およびその他の国における商標です。 Tivoli および NetView は Tivoli Systems Inc. の米国およびその他の 国におけ る商標です。 UNIX は、X/Open Company Limited が独占的にライセンスしている、 米国、または 他国、あるいはその両方における登録商標です。 他の社名、製品名、またはサービス名がアスタリスクを 2 つ (**) 付けて示される ことがありますが、これは他社の商標またはサービス名です。