目次リリース情報 IBM(R) DB2(R) ユニバーサル・データベース リリース情報 バージョン 7 -- フィックスパック 6 本マニュアルに関するご意見やご感想は、次の 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 6  発 行: 日本アイ・ビー・エム株式会社  担 当: ナショナル・ランゲージ・サポート 第1刷 2002.3 (C) Copyright International Business Machines Corporation 2000, 2001. All rights reserved. (c) Copyright IBM Japan 2002 目次 まえがき 最初にお読みください フィックスパック 6 の特長 製品情報 2.1 DB2 (Solaris 版) バージョン 7 でサポートしている CPU 2.2 日本語 Linux 版 および中国語 (簡体字) Linux 版 の DB2 の追加ロケール設定 |2.3 PTX での日本語の制限 2.4 Microsoft Internet Explorer 上でのコントロール・センターの問題 |2.5 コントロール・センター機能の喪失 |2.6 DB2 UDB への Netscape CD 添付の打ち切り |2.7 XML Readme ファイルでのエラー |2.8 DB2 バージョン 7.2 での新規のビジネス・インテリジェンス機能強化 |2.9 フィックスパック 2A 以降が原因で IBM DB2 OLAP Server に起こる問題 |2.10 WebSphere 3.5.5 を使用時のセグメント化違反 |2.11 AIX V4 の Java アプリケーションに必要な修正 オンライン資料 (HTML、PDF、および Search) の注釈 3.1 Windows 2000 オペレーティング・システムでサポートされている Web ブラウザー 3.2 Solaris 版 DB2 オンライン情報の検索 3.3 OS/2 上で TCP/IP を使用するよう NetQuestion を切り替える 3.4 Netscape を立ち上げようとした場合のエラー・メッセージ 3.5 UNIX ベース・システム上での Adobe Acrobat Reader の構成要件 3.6 SQL 解説書は 1 つの PDF ファイルで提供されます インストールおよび構成 一般インストール、移行、および構成情報 4.1 すべてのサポートされる DB2 クライアントのインストール・パッケージをダウンロード 4.2 追加が必要な Solaris パッチ・レベル |4.3 AIX での DB2 エンタープライズ拡張エディションのインストール |4.4 Netscape LDAP ディレクトリー・サポート |4.4.1 Netscape LDAP スキーマの拡張 |4.5 Windows ME、Windows XP および Windows 2000 Datacenter エディション・プラットフォームのサポート |4.5.1 Windows XP |4.5.1.1 制約事項 |4.5.2 Windows ME |4.5.2.1 制約事項 |4.5.3 Windows 2000 Datacenter Server |4.6 Windows 95 に DB2 をインストール 4.7 Windows 2000 に DB2 をインストール |4.8 Windows 2000 Terminal Server の管理モードでの DB2 の実行 4.9 Microsoft SNA サーバー および SNA マルチ・サイト・アップデート (2 フェーズ・コミット) のサポート 4.10 IBM Communications Server for Windows NT (CS/NT) にユーザー ID とパスワードを 定義 4.10.1 ノード定義 4.11 取りはずし可能ドライブが接続されていない場合に DB2 インストーラーが停止することがあります 4.12 Windows 2000 で CLP を使用したときのエラー SQL1035N 4.13 特別レジスターで定義した視点による移行の実行 4.14 IPX/SPX プロトコル・サポート (Windows 2000 版) 4.15 前バージョンの DB2 をアップグレードする前に DB2 の処理を停止 4.16 別の DB2 製品がすでにインストールされている場合はインストール後に db2iupdt を実行 4.17 DB2 コントロール・センターを実行するために Linux 環境を設定 4.18 Linux (S/390 版) 用の DB2 ユニバーサル・データベース・エンタープライズ・エディションおよび DB2 コネクト エンタープライズ・エディション |4.19 Linux (S/390 版) でのデータ損失の可能性 |4.20 DB2 Linux の Gnome および KDE Desktop Integration |4.21 Solaris カーネル構成パラメーター (推奨値) |4.22 DB2 ユニバーサル・データベース・エンタープライズ - 拡張エディション (UNIX 版) 概説およびインストール 4.23 shmseg カーネル・パラメーター (HP-UX) 4.24 IBM Visual Warehouse コントロール・データベースの移行 |4.25 db2uiddl コマンドを用いた固有索引の移行 |4.26 64 ビット AIX バージョンのインストール・エラー |4.26.1 SMIT の使用 4.27 移行中のエラー |4.28 IBM(R) DB2(R) コネクト ライセンスの活動化 |4.28.1 ライセンス・センターを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 |4.28.2 db2licm コマンドを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 |4.28.3 分散インストールの場合のライセンスの考慮事項 4.29 ウェアハウス・コントロール・データベースへのアクセス 4.30 エンタープライズ・エディション UNIX CD-ROM の試用製品 4.31 DB2 コネクト エンタープライズ・エディション UNIX CD-ROM の試用製品 |4.32 Web の Information Catalog Center のインストール前に必要な追加の構成 |4.33 コード・ページおよび言語サポート情報 - 訂正 データ・リンク・マネージャー 概説およびインストール |5.1 AIX 5.1 でのサポート 5.2 Dlfm 開始の失敗のメッセージ :「接頭部の afsfid を取得中にエラー」 5.3 アーカイブ・ファイルへの Tivoli Storage Manager クラスの設定 5.4 DFS クライアント・イネーブラーのディスク・スペース要件 5.5 AIX におけるデータ・リンク・ファイル・マネージャー・バックエンド・プロセスのモニター 5.6 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: DCE-DFS 環境における追加のインストールの注意点 5.7 "dlfm add_prefix" コマンドの失敗 5.8 dlfm 停止時にコピー・デーモンが停止しないなど、まれな現象が発生した場合 5.9 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: db2setup ユーティリティーを使用して DB2 データ・リンク・マネージャーをインストール 5.10 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: DCE-DFS インストール後の作業 5.11 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: smit を使用して DB2 データ・リンク・マネージャーを手動でインストール 5.12 DB2 データ・リンク DFS クライアント・イネーブラー 5.13 DB2 データ・リンク・マネージャー (Solaris 版) のインストールおよび構成 |5.14 Windows NT のデータ・リンクでのアドミニストレーター・グループ権限 5.15 データ・リンク・ファイル・システム・フィルター (DLFF) インストールのロギングの最小化 5.15.1 インストール後のメッセージのロギング |5.15.2 Sun Solaris システム上でのログオンの最小化 5.16 DATALINK リストア 5.17 データ・リンク・マネージャーの削除 5.18 SMIT を使用して DLFM コンポーネントをアンインストールすると他のファイル・セットも除去される可能性があります 5.19 開始する前のホスト名の判別 5.20 データ・リンク・ファイル・マネージャーの操作: DB2 データベースから DB2 データ・リンク・マネージャーをドロップした後のクリーンアップ 5.21 dlfm Client_conf が失敗した場合のユーザー処置 5.22 DLFM1001E (新規エラー・メッセージ) 5.23 DLFM セットアップ構成ファイル・オプション |5.24 ファイルのリストア中に起こりうる問題 5.25 AIX 上でのデータ・リンク/DFS スクリプト dmapp_prestart 実行時エラー |5.26 Tivoli Space Manager とデータ・リンクとの統合 |5.26.1 制約事項と制限 5.27 第 4 章 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成 5.27.1 一般的なインストールの注意点 5.27.1.1 DB2 ファイル・マネージャー・バージョン 5.2 から DB2 データ・リンク・マネージャー・バージョン 7 への移行 |5.28 第 6 章 AIX でのインストールの検査 |5.28.1 NFS 環境での回避策 インストールおよび構成補足 6.1 第 5 章 UNIX オペレーティング・システムへの DB2 クライアントのインストール |6.1.1 HP-UX カーネル構成パラメーター 6.2 第 12 章 お持ちのアプリケーションの実行 6.2.1 ランタイム・クライアントを使用するデータベース・ユーティリティーのバインド 6.2.2 ODBC を使用しての DB2 への UNIX クライアント・アクセス |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 リレーショナル・コネクトのインストール |6.3.4 第 24 章 複数データ・ソース・アクセス用の統合システムのセットアップ |6.3.4.1 ニックネームで使用されるスキーマの理解 |6.3.4.2 統合データベースを別の統合サーバーへリストアする場合の問題点 |6.4 第 26 章 Oracle データ・ソースへのアクセス |6.4.1 記述の誤り |6.5 リモート LOB での作業時の問題回避 |6.6 Sybase データ・ソースへのアクセス |6.6.1 統合サーバーへの Sybase データ・ソースの追加 |6.6.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 (AIX および Solaris の場合のみ) |6.6.1.2 ステップ 2: Sybase クライアント・ソフトウェアへの DB2 のリンク (AIX および Solaris の場合のみ) |6.6.1.3 ステップ 3: DB2 インスタンスの再生 (AIX および Solaris の場合のみ) |6.6.1.4 ステップ 4: interfaces ファイルの作成およびセットアップ |6.6.1.5 ステップ 5: ラッパーの作成 |6.6.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の設定 |6.6.1.7 ステップ 7: サーバーの作成 |6.6.1.8 ステップ 8: オプション: CONNECTSTRING サーバー・オプションの設定 |6.6.1.9 ステップ 9: ユーザー・マッピングの作成 |6.6.1.10 ステップ 10: 表および視点のニックネームの作成 |6.6.2 Sybase コード・ページの指定 |6.7 ODBC による Microsoft SQL Server データ・ソースへのアクセス (新しい章) |6.7.1 統合サーバーへの Microsoft SQL Server データ・ソースの追加 |6.7.1.1 ステップ 1: 環境変数の設定 (AIX の場合のみ) |6.7.1.2 ステップ 2: シェル・スクリプトの実行 (AIX の場合のみ) |6.7.1.3 ステップ 3: オプション: DB2_DJ_COMM 環境変数の設定 (AIX の場合のみ) |6.7.1.4 ステップ 4: DB2 インスタンスの再生 (AIX の場合のみ) |6.7.1.5 ステップ 5: ラッパーの作成 |6.7.1.6 ステップ 6: サーバーの作成 |6.7.1.7 ステップ 7: ユーザー・マッピングの作成 |6.7.1.8 ステップ 8: 表および視点のニックネームの作成 |6.7.1.9 ステップ 9: オプション: ODBC トレースの取得 |6.7.2 Microsoft SQL Server コード・ページの検討 (Windows NT の場合のみ) 6.8 Informix データ・ソースへのアクセス (新しい章) 6.8.1 統合サーバーへの Informix データ・ソースの追加 6.8.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 6.8.1.2 ステップ 2: Informix クライアント・ソフトウェアへの DB2 のリンク 6.8.1.3 ステップ 3: DB2 インスタンスの再生 |6.8.1.4 ステップ 4: Informix sqlhosts ファイルの作成 6.8.1.5 ステップ 5: ラッパーの作成 6.8.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の設定 6.8.1.7 ステップ 7: サーバーの作成 6.8.1.8 ステップ 8: ユーザー・マッピングの作成 6.8.1.9 ステップ 9: 表、視点、および Informix 同義語のニックネームの作成 管理 管理の手引き |7.1 入手可能な更新 管理の手引き: 計画 |8.1 第 8 章 物理データベース設計 |8.1.1 表スペース設計上の考慮事項 |8.1.1.1 データが RAID 上に配置されている場合の表スペース・パフォーマンスの最適化 |8.1.2 キーの分割化 8.2 付録 D. リリース間の非互換性 |8.2.1 接続喪失検出時に SQL30081N エラーが戻されない 8.3 付録 E. 各国語サポート (NLS) |8.3.1 国別 / 地域別コードおよびコード・ページのサポート |8.3.2 インポート / エクスポート / ロードに関する 考慮事項 -- コード・ページ 1394 および 5488 の制約 |8.3.3 日時の値 |8.3.3.1 日時の値のストリング表記 |8.3.3.2 日付ストリング |8.3.3.3 タイム・ストリング |8.3.3.4 タイム・スタンプ・ストリング |8.3.3.5 文字セットに関する考慮事項 |8.3.3.6 日付および時刻フォーマット |管理の手引き : インプリメンテーション |9.1 第 8 章 データベースの回復 |9.1.1 中断入出力の使用法 |9.2 Windows 2000 以降のシステムにおける DMS コンテナーの新しい指定方式 |9.3 コントロール・センターの拡張例 |管理の手引き : パフォーマンス |10.1 システム一時表スキーマ |10.2 第 8 章 操作パフォーマンス |10.2.1 ブロック・ベースのバッファー・プール |10.2.1.1 ブロック・ベースのバッファー・プールの例 |10.3 第 10 章 プロセッサーの追加による構成の拡大縮小 |10.3.1 分割したデータベースにノードを追加する際の問題 |10.4 第 13 章 DB2 の構成 |10.4.1 ログ・アーカイブ完了チェックの頻度の増加 |10.5 DB2 レジストリーと環境変数 |10.5.1 パフォーマンス変数への修正 |10.5.2 各種レジストリー変数への修正および追加 |10.5.3 汎用レジストリー変数の修正および追加 |サテライト管理 手引きおよび解説書 |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 コントロール・センター および サテライト管理センター のアップグレード |コマンド解説書 |12.1 入手可能な更新 |12.2 db2updv7 - データベースをバージョン 7 現行修正レベルに更新 |12.3 REBIND |Missing value |12.4 db2inidb - ミラーリングされたデータベースの初期化 |12.4.1 使用法情報 |12.5 GET ROUTINE コマンドの追加オプション |GET ROUTINE |12.6 CREATE DATABASE |データ回復と高可用性の手引きと解説書 |13.1 データ回復と高可用性の手引きと解説書がオンラインで使用可能 |13.2 LOGRETAIN=CAPTURE の場合の新たなバックアップおよびリストア動作 |13.3 NEWLOGPATH2 は、DB2_NEWLOGPATH2 と呼ばれるようになりました |13.4 DB2 データ・リンク・マネージャー (AIX または Solaris 版) のバックアップ方式の選択 |13.5 Tivoli Storage Manager -- LAN フリー・データ転送 データ移動ユーティリティー 手引きおよび解説書 |14.1 エクスポート、インポート、およびロードの LOB ファイル・ハンドルの変更 |14.1.1 IXF 考慮事項 |14.2 インポート、エクスポート、およびロード・ユーティリティーに対するコード・ページ・サポート |14.3 db2relocatedb (新規コマンド) |db2relocatedb - データベースの再配置 |14.4 db2move -- 使用可能な新規オプション |db2move ツールを使用したデータの移動 14.5 第 2 章 インポート 14.5.1 バッファー挿入を行うインポートを使用 14.6 第 3 章 ロード 14.6.1 ロード操作後の保留状態 14.6.2 ロード制約事項と制限 14.6.3 totalfreespace ファイル・タイプ修飾子 14.7 第 4 章 オートローダー 14.7.1 rexecd - 認証を YES に設定している場合はオートローダーの実行に必須 14.8 fork 中にオートローダーが停止する場合があります 14.9 付録 C. エクスポート/インポート/ロード・ユーティリティー・ファイル形式 DB2 レプリケーションの手引きおよび解説書 15.1 レプリケーションおよび非 IBM サーバー 15.2 Windows 2000 上のレプリケーション |15.3 SQL ファイルの保管時に知られているエラー |15.4 DB2 保守 |15.5 Web 上の Data Difference Utility 15.6 第 3 章 データ・レプリケーション・シナリオ 15.6.1 レプリケーションのシナリオ 15.7 第 5 章 レプリケーションの計画 15.7.1 表および列名 15.7.2 DATALINK レプリケーション 15.7.3 LOB の制約事項 15.7.4 レプリケーションの計画 15.8 第 6 章 レプリケーション環境のセットアップ 15.8.1 任意の場所で更新 (Update-anywhere) の前提条件 15.8.2 レプリケーション環境のセットアップ 15.9 第 8 章 問題判別 15.10 第 9 章 キャプチャー・プログラムおよびアプライ・プログラム (AS/400 版) 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 エンコード・スキームの設定 15.12 第 11 章 キャプチャー・プログラムおよびアプライ・プログラム (UNIX 版) |15.12.1 UNIX および Windows でのキャプチャー・プログラムとアプライ・プログラムの環境変数の設定 15.13 第 14 章 表の構造 15.14 第 15 章 キャプチャー・プログラムとアプライ・プログラムのメッセージ 15.15 付録 A キャプチャー・プログラムおよびアプライ・プログラムをアプリケーション内で開始する システム・モニター 手引きおよび解説書 16.1 db2ConvMonStream 問題判別の手引き 17.1 ユーザーがログオンしていないときに DB2 を Windows 95、Windows 98、 または Windows ME で開始 |17.2 第 1 章 効果的なトラブルシューティングの手段 |17.2.1 問題分析および環境データ収集用のツール |17.2.1.1 収集データ出力 |17.2.1.2 detailed_system_info.html の表示 |17.2.1.3 DB2 サポート・ツールの構文を一時に 1 ページに表示 |17.3 第 2 章 DB2 ユニバーサル・データベース・サーバーの障害追及 |17.4 第 8 章 DB2 データ・リンク・マネージャーのトラブルシューティング 64 ビット・プラットフォームで DB2 ユニバーサル・データベースを使用する 18.1 第 5 章 構成 18.1.1 LOCKLIST 18.1.2 shmsys:shminfo_shmmax 18.2 第 6 章 制約事項 XML エクステンダー 管理およびプログラミング |MQSeries |20.1 DB2 MQSeries 関数のインストールと構成 |20.1.1 MQSeries のインストール |20.1.2 MQSeries AMI のインストール |20.1.3 DB2 MQSeries 関数を使用可能にする |20.2 MQSeries メッセージ・スタイル |20.3 メッセージ構造 |20.4 MQSeries 関数の概説 |20.4.1 制約事項 |20.4.2 エラー・コード |20.5 使用のシナリオ |20.5.1 基本メッセージング |20.5.2 メッセージの送信 |20.5.3 メッセージの取り出し |20.5.4 アプリケーション間接続 |20.5.4.1 要求/応答通信 |20.5.4.2 発行/サブスクリプション |20.6 enable_MQFunctions |enable_MQFunctions |20.7 disable_MQFunctions |disable_MQFunctions 管理ツール |ツールを実行前の追加のセットアップ |21.1 Linux 上の浮動小数点スタックを使用不可にする |21.2 日本語版 Linux 環境で必要な特定の Java レベル コントロール・センター 22.1 DB2 サーバー (VSE および VM 版) の管理化 22.2 コントロール・センターの Java 1.2 サポート 22.3 Windows オペレーティング・システムでオンライン・ヘルプを使用時の 「無効なショートカット」エラー 22.4 キーボード・ショートカットの不作動 22.5 OS/2 版 Java コントロール・センター 22.6 Windows オペレーティング・システム上のジャーナルで完了したジョブを表示する際の 「ファイル・アクセスが拒否されました」エラー 22.7 複数サイト更新テスト接続 22.8 DB2 (OS/390 版) のコントロール・センター 22.9 DB2 (OS/390 版) コントロール・センターの修正 22.10 「地理情報層の作成」ダイアログへの変更点 22.11 DB2 コントロール・センターの障害追及情報 22.12 UNIX ベース・システム上でのコントロール・センターの障害追及 22.13 OS/2 上での infopop の問題 22.14 jdk11_path 構成パラメーターのヘルプ 22.15 スクリプト・センターまたはジャーナルを使用中の Solaris システム・エラー (SQL10012N) 22.16 DPREPL.DFT ファイルのヘルプ 22.17 複数のコントロール・センター・アプレットの立ち上げ 22.18 アプレットとして実行中のコントロール・センターのオンライン・ヘルプ 22.19 コントロール・センターをアプレット・モードで実行 (Windows 95) |22.20 大きな照会結果の操作 コマンド・センター |23.1 コマンド・センターの対話式ページでステートメント終止符を認識 インフォメーション・センター |24.1 Java サンプル・ドキュメントに対する修正 24.2 Windows オペレーティング・システムでの「無効なショートカット」エラー 24.3 Netscape がすでにオープンしているときに、Netscape Navigator の外部 Web リンクをオープンする (UNIX ベース・システム) 24.4 インフォメーション・センター開始時の問題 ウィザード 25.1 データベース作成ウィザードの拡張サイズの設定 |25.2 MQSeries 補助ウィザード |25.3 OLE DB 補助ウィザード |25.4 ストアード・プロシージャー・ビルダーを使用した OS/390 用の Java ストアード・プロシージャーの作成 ビジネス・インテリジェンス ビジネス・インテリジェンス・チュートリアル 26.1 改訂されたビジネス・インテリジェンス・チュートリアル DB2 ユニバーサル・データベース クイック・ツアー |データウェアハウスセンター 管理の手引き |28.1 入手可能な更新 |28.2 ウェアハウス・サーバーの機能強化 |28.3 OS/390 エージェントを使用して Trillium バッチ・システム JCL を実行 |28.4 データウェアハウスセンターの 2 つの新規サンプル・プログラム |28.5 更新された DB2 ウェアハウス・マネージャーによる ETI.Extract(R) 移行プログラム の管理 |28.6 共通ウェアハウス・メタデータ交換 (CWMI) を使用したインポートおよびエクスポート |28.6.1 入門 |28.6.2 メタデータのインポート |28.6.3 インポート・ユーティリティー実行後のメタデータの更新 |28.6.4 メタデータのエクスポート |28.7 タグ言語メタデータ・インポート / エクスポート・ユーティリティー |28.7.1 キー定義 |28.7.2 ステップおよび処理のスケジュール |28.8 SAP ステップ情報 |28.8.1 論理的に矛盾する表が作成される可能がある |28.9 SAP コネクター情報 |28.9.1 SAP コネクター・インストール上の制約事項 |28.9.2 GetDetail BAPI のパフォーマンス DB2 OLAP スターター・キット |29.1 OLAP Server Web サイト |29.2 サポートされるオペレーティング・システム・サービス・レベル 29.3 UNIX での DB2 OLAP スターター・キットを完了する |29.4 Solaris 操作環境用の追加構成 |29.5 すべてのオペレーティング・システム用の追加構成 |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 データ・ソースを構成したら 29.7 OLAP スターター・キット・デスクトップからのログイン 29.7.1 スターター・キットのログインの例 29.8 OLAP スターター・キットのサンプル・データベースを手動で 作成および構成する |29.9 アプリケーションを OLAP スターター・キット・バージョン 7.2 に移行 |29.10 既知の問題および制限事項 29.11 OLAP スプレッドシート・アドイン EQD ファイルの欠落 情報カタログ・マネージャー管理の手引き 30.1 情報カタログ・マネージャー初期設定ユーティリティー 30.1.1 30.1.2 ライセンス交付の問題 30.1.3 インストールの問題 |30.2 情報カタログ・マネージャーの機能強化 |30.3 情報カタログ・マネージャー と Sybase の Windows 環境での非互換性 30.4 DB2 バージョン 7 情報カタログ・マネージャーによる DB2 バージョン 5 情報カタログへのアクセス 30.5 情報カタログのセットアップ 30.6 別の製品とのメタデータの交換 30.7 flgnxoln コマンドでのメタデータの交換 30.8 MDISDGC コマンドでのメタデータの交換 30.9 プログラムの呼び出し 情報カタログ・マネージャー・プログラミングの手引きおよび解説書 31.1 情報カタログ・マネージャー理由コード 情報カタログ・マネージャー 使用者の手引き 情報カタログ・マネージャー: オンライン・メッセージ 33.1 FLG メッセージへの修正 33.1.1 メッセージ FLG0260E 33.1.2 メッセージ FLG0051E 33.1.3 メッセージ FLG0003E 33.1.4 メッセージ FLG0372E 33.1.5 メッセージ FLG0615E 情報カタログ・マネージャー: オンライン・ヘルプ 34.1 Web 用情報カタログ・マネージャー DB2 ウェアハウス・マネージャー インストールの手引き |35.1 入手できる「DB2 ウェアハウス・マネージャー・インストールの手引き」の更新 |35.2 ウェアハウス・トランスフォーマーのソフトウェア要件 |35.3 iSeries エージェントのポストインストールの考慮事項 |35.4 iSeries ウェアハウス・エージェントでトランスフォーマーを使用する前に クエリー・パトローラー管理の手引き 36.1 DB2 クエリー・パトローラー・クライアントの分離コンポーネント |36.2 ノード状況の変更 36.3 dqpmigrate を使用した DB2 クエリー・パトローラーのバージョン 6 からの移行 36.4 照会管理の使用可能化 |36.5 制御表の表スペースのロケーション |36.6 dqpstart コマンドの新しいパラメーター |36.7 iwm_cmd コマンドの新しいパラメーター |36.8 新しいレジストリー変数: DQP_RECOVERY_INTERVAL 36.9 Query Administrator の開始 36.10 ユーザー管理 |36.11 データ・ソース管理 36.12 ジョブ・キューの作成 |36.13 ジョブ・アカウンティング表 36.14 コマンド行インターフェースの使用 36.15 クエリー・イネーブラー注意事項 36.16 ブランク列ページを返すことができる DB2 クエリー・パトローラー・トラッカー |36.17 DB2 クエリー・パトローラー・トラッカー GUI ツールの追加情報 |36.18 クエリー・パトローラーおよびレプリケーション・ツール |36.19 クエリー・パトローラーのパフォーマンス改善 36.20 バージョン 6 で作成されたクエリー・パトローラー・ユーザー用の EXECUTE 特権の消失 36.21 クエリー・パトローラーの制約事項 36.22 付録 B. DB2 クエリー・パトローラー・クライアントのトラブルシューティング アプリケーション開発 管理 API 解説書 37.1 db2ArchiveLog (新規 API) db2ArchiveLog 37.2 db2ConvMonStream 37.3 db2DatabasePing (新規 API) db2DatabasePing - データベースの Ping 37.4 db2HistData 37.5 db2HistoryOpenScan 37.6 db2XaGetInfo (新規 API) db2XaGetInfo - リソース・マネージャー用情報の取得 37.7 db2XaListIndTrans (sqlxphqr を 入れ替える新規 API) db2XaListIndTrans - 未確定トランザクションをリストする 37.8 db2GetSnapshot - スナップショットの取得 |37.9 ログ・レコードの喪失 37.10 sqlaintp - エラー・メッセージの取得 37.11 sqlbctcq - 表スペース・コンテナー照会のクローズ |37.12 sqleseti - クライアント情報の設定 37.13 sqlubkp - データベースのバックアップ 37.14 sqlureot - 表の再編成 37.15 sqlurestore - データベースのリストア 37.16 AIX 拡張共有メモリー・サポートに関するドキュメンテーション・エラー (EXTSHM) 37.17 SQLFUPD 37.17.1 locklist 37.18 SQLEDBDESC DB2 アプリケーション構築の手引き |38.1 入手可能な更新 |38.2 コンパイルされた SQL プロシージャーの配布についての追加情報 |アプリケーション開発の手引き |39.1 入手可能な更新 |39.2 executeQuery および executeUpdate に対する新しい要件 |39.3 追加されたメソッドに対する JDBC ドライバーのサポート |39.4 |39.5 IBM OLE DB Provider (DB2 UDB 版) CLI の手引きおよび解説書 40.1 ランタイム・クライアントを使用するデータベース・ユーティリティーのバインド 40.2 CLI アプリケーションで静的 SQL の使用 40.3 JDBC/ODBC/CLI 静的プロファイル の制限 40.4 ADT トランスフォーム |40.5 第 1 章 CLI の概要 |40.5.1 DB2 CLI と組み込み SQL の相違 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 SQL および Java ストアード・プロシージャーの作成特権およびデバッグ特権 40.6.6.2 CLI でのストアード・プロシージャーの記述 40.6.6.3 CLI ストアード・プロシージャーおよび自動バインド 40.7 第 4 章 CLI/ODBC の構成とサンプル・アプリケーションの実行 |40.7.1 構成キーワード |40.7.1.1 CURRENTFUNCTIONPATH |40.7.1.2 SKIPTRACE 40.8 第 5 章 DB2 CLI 関数 40.8.1 SQLBindFileToParam - LOB ファイル参照を LOB パラメーターにバインド |40.8.2 SQLColAttribute -- 列属性を戻す |40.8.3 SQLGetData - 列からのデータの入手 |40.8.4 SQLGetInfo - 一般情報の取得 |40.8.5 SQLGetLength - ストリング値の長さの検索 40.8.6 SQLNextResult - 次の結果セットを別のステートメント・ハンドルに関連付ける 40.8.6.1 目的 40.8.6.2 構文 40.8.6.3 関数の引き数 40.8.6.4 使用法 40.8.6.5 戻りコード 40.8.6.6 診断 40.8.6.7 制約事項 40.8.6.8 参照 |40.8.7 SQLSetEnvAttr - 環境属性の設定 |40.8.8 SQLSetStmtAttr -- ステートメント関連のオプションの設定 |40.9 付録 C. DB2 CLI および ODBC |40.9.1 ODBC ユニコード・アプリケーション |40.9.1.1 ODBC ユニコードと非ユニコード・アプリケーション 40.10 付録 D 拡張スカラー関数 40.10.1 日時関数 40.11 付録 K DB2 CLI/ODBC/JDBC トレース機能の使用 |メッセージ解説書 |41.1 入手可能な更新 |41.2 メッセージの更新 |41.3 オンラインでのメッセージ・テキストの読み取り SQL 解説書 |42.1 入手可能な SQL 解説書 の更新 |42.2 新しい関数とプロシージャーの使用可能化 |42.3 SET SERVER OPTION - 資料のエラー |42.4 GRANT (表、視点、またはニックネーム特権) - 資料のエラー 42.5 MQSeries 情報 42.5.1 スカラー関数 |42.5.1.1 MQPUBLISH |42.5.1.2 MQREADCLOB |42.5.1.3 MQRECEIVECLOB |42.5.1.4 MQSEND 42.5.2 表関数 |42.5.2.1 MQREADALLCLOB |42.5.2.2 MQRECEIVEALLCLOB |42.5.3 MQSeries 関数でサポートされるようになった CLOB データ 42.6 データ・タイプ情報 42.6.1 データ・タイプのプロモーション 42.6.2 データ・タイプ間のキャスト 42.6.3 割り当てと比較 42.6.3.1 ストリング割り当て 42.6.3.2 ストリング比較 42.6.4 結果データ・タイプの規則 42.6.4.1 ユニコード・データベースの文字および漢字ストリング 42.6.5 ストリング変換の規則 42.6.6 式 42.6.6.1 連結演算子 42.6.7 述部 |42.7 ユニコード情報 |42.7.1 スカラー関数およびユニコード |42.8 GRAPHIC タイプと DATE/TIME/TIMESTAMP の互換性 |42.8.1 日時値のストリング表記 |42.8.1.1 日付ストリング、時刻ストリング、および日時ストリング |42.8.2 データ・タイプ間のキャスト |42.8.3 割り当てと比較 |42.8.4 日時の割り当て |42.8.5 DATE |42.8.6 GRAPHIC |42.8.7 TIME |42.8.8 TIMESTAMP |42.8.9 VARGRAPHIC 42.9 ユニコード・データベースのより大きな索引キー 42.9.1 ALTER TABLE 42.9.2 CREATE INDEX 42.9.3 CREATE TABLE |42.10 ALLOCATE CURSOR ステートメントの注の誤り |42.11 GET DIAGNOSTICS ステートメントの追加オプション |GET DIAGNOSTICS ステートメント |42.12 副選択内の ORDER BY |42.12.1 全選択 |42.12.2 副選択 |42.12.3 order-by-clause |42.12.4 select-statement |SELECT INTO ステートメント |42.12.5 OLAP 関数 (window-order-clause) |GET_ROUTINE_SAR プロシージャー用の新規入力引き数 |SET INTEGRITY ステートメントに必要な許可 |付録 N. 例外表 ユニコード更新 46.1 入門 46.1.1 DB2 ユニコード・データベースおよびアプリケーション 46.1.2 資料の更新 ホスト・システムへの接続 |DB2 コネクト 使用者の手引き |47.1 増加する DB2 コネクト・データ転送速度 |47.1.1 エクストラ照会ブロック |47.1.2 RFC-1323 ウィンドウ・スケーリング |47.2 疎結合トランザクションに対する DB2 コネクト・サポート |47.3 Kerberos サポート コネクティビティー補足 48.1 VM 環境でのアプリケーション・サーバーのセットアップ 48.2 CLI/ODBC/JDBC 構成 PATCH1 および PATCH2 の設定 追加の情報 追加の情報 49.1 DB2 Everywhere は DB2 Everyplace に変更されました 49.2 DB2 UDB バージョン 7 のユーザー補助機能 49.2.1 キーボードによる入力および操作 49.2.1.1 キーボード入力 49.2.1.2 キーボード・フォーカス 49.2.2 ディスプレイを見やすくする機能 49.2.2.1 高コントラスト・モード 49.2.2.2 フォント設定 49.2.2.3 色の非依存 49.2.3 選べる警告キュー 49.2.4 補助技術の互換性 49.2.5 利用しやすい資料 49.3 マウスが必要 49.4 「バインド・ファイルが見つかりません」のエラーで DB2 ランタイム・クライアント結果からバインドを試みる 49.5 サーチ・ディスカバリー 49.6 HP-UX 11 のメモリー・ウィンドウ 49.7 DB2 DFS クライアント・イネーブラーのアンインストール 49.8 Windows NT 上でのクライアントの認証 49.9 統合システムの制約 |49.10 MPP 区分表を用いた統合制限 49.11 DataJoiner 制約 49.12 DB2 の SNA SPM が Windows ブート後に失敗します 49.13 Windows NT および Windows 2000 での DB2 に対するサービス・アカウント要件 49.14 データウェアハウスセンター (DWC) で使用される すべてのユーザー定義プログラムをコミットする 49.15 Windows NT 上でのクライアント・サイド・キャッシング |49.16 ライフ・サイエンス データ・コネクト |49.16.1 新規ラッパー |49.16.2 特記事項- 49.17 SQL Assist の機能強化 |49.18 バックアップおよびリストア・コマンドのヘルプ 49.19 「ウェアハウス・マネージャー」は「DB2 ウェアハウス・マネージャー」 付録および後付け 付録 A. 特記事項 A.1 商標 索引 まえがき |DB2 ユニバーサル・データベース バージョン 7 フィックスパック 6 へようこそ! 注: テキストとして表示する場合は、このリリース情報はモノスペースのフォントでご覧ください。 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 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 からオンラインでダウンロードできます。 |管理の手引き |DB2 アプリケーション構築の手引き |アプリケーション開発の手引き |コマンド解説書 |データ回復と高可用性の手引きと解説書 |データウェアハウスセンター 管理の手引き |メッセージ解説書 |SQL 解説書 |DB2 ウェアハウス・マネージャー インストールの手引き |これらの資料には、更新済みの解説書への追加情報が記載されています。 |すべての更新済み資料は CD でも入手可能です。 |この CD は、DB2 サービス経由で PTF 番号 U478862 を使用してご注文いただけます。 |DB2 サービスへの連絡方法 |は、http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/help.d2w/report で |ご覧になれます。 新機能には、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.5, Windows ME、Windows XP および Windows 2000 Datacenter エディション・プラットフォームのサポート にリストされている製品のコンテキストでは、特に断り書きがないかぎり、Windows XP も含まれます。 |注: |ページの左方にあるリビジョン・バー (|) は、リリース情報の |初版発行以降にその行が追加または変更されたことを示します。 | 最初にお読みください フィックスパック 6 の特長 以下の新規情報が、このフィックスパックで追加されました。ここではすべてを網羅せずに、資料の主な変更点に焦点を当てます。作業環境に関連するリリース情報の該当セクションを参照し、あらゆる関連アップデートを見逃さないよう注意してください。 2.3, PTX での日本語の制限 2.11, AIX V4 の Java アプリケーションに必要な修正 4.3, AIX での DB2 エンタープライズ拡張エディションのインストール 4.6, Windows 95 に DB2 をインストール 4.32, Web の Information Catalog Center のインストール前に必要な追加の構成 6.3.4, 第 24 章 複数データ・ソース・アクセス用の統合システムのセットアップ 6.5, リモート LOB での作業時の問題回避 8.1.2, キーの分割化 8.2.1, 接続喪失検出時に SQL30081N エラーが戻されない 8.3.3, 日時の値 10.4.1, ログ・アーカイブ完了チェックの頻度の増加 9.2, Windows 2000 以降のシステムにおける DMS コンテナーの新しい指定方式 9.3, コントロール・センターの拡張例 25.4, ストアード・プロシージャー・ビルダーを使用した OS/390 用の Java ストアード・プロシージャーの作成 28.8.1, 論理的に矛盾する表が作成される可能がある 35.3, iSeries エージェントのポストインストールの考慮事項 36.11, データ・ソース管理 36.13, ジョブ・アカウンティング表 36.17, DB2 クエリー・パトローラー・トラッカー GUI ツールの追加情報 38.2, コンパイルされた SQL プロシージャーの配布についての追加情報 39.2, executeQuery および executeUpdate に対する新しい要件 39.3, 追加されたメソッドに対する JDBC ドライバーのサポート 40.6.6.1, SQL および Java ストアード・プロシージャーの作成特権およびデバッグ特権 42.3, SET SERVER OPTION - 資料のエラー 42.4, GRANT (表、視点、またはニックネーム特権) - 資料のエラー 42.8, GRAPHIC タイプと DATE/TIME/TIMESTAMP の互換性 42.10, ALLOCATE CURSOR ステートメントの注の誤り 付録 N. 例外表 47.2, 疎結合トランザクションに対する DB2 コネクト・サポート 47.3, Kerberos サポート 40.8.3, SQLGetData - 列からのデータの入手 製品情報 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 PTX での日本語の制限 | | |PTX システム上で DB2 UDB を日本語で稼働している場合は、 |DB2 が使用する一部のプロセスが正しい地域情報を継承しない場合があります。 |これを防ぐためには、DB2CODEPAGE および DB2COUNTRY 登録変数を |ご使用の地域に対応する値に手動で設定してください。 2.4 Microsoft Internet Explorer 上でのコントロール・センターの問題 Internet Explorer (IE) セキュリティー・オプション設定によって起きる問題があります。コントロール・センターは無符号の jar を使用するため、システム情報へのアクセスは、セキュリティー・マネージャーによって使用不可となります。 この問題をなくすには、IE のセキュリティー・オプションを次のように再構成してください。 「表示」メニュー (IE4) または「ツール」メニュー (IE5) で「インターネット・オプション」を選択する。 「セキュリティー」ページで「信頼済みサイト・ゾーン」を選択する。 サイトの追加...をクリックする。 |コントロール・センターの Web サーバーを信頼済みサイト・リストに追加する。 |コントロール・センター Web サーバーが同じドメインにある場合は、 |(ドメイン名を指定しないで) Web サーバー名のみを追加すればよい場合があります。 |例: | http://ccWebServer.ccWebServerDomain | http://ccWebServer | |注: この URL を入力する際には、接頭部 https:// を |使用するか、またはオプション「このゾーンのサイトにはすべてサーバーの |確認 (https:) を必要とする」を選択解除してこのサイトを追加できるようにする必要があります。 |「OK」をクリックする。 |「設定...」(IE4) また |は「レベルのカスタマイズ...」(IE5) をクリックする。 「Java --> Java の許可」へスクロールダウンし、「カスタム」を選択する。 「Java カスタム設定...」をクリックする。 「権限の編集」ページを選択する。 「未署名のコンテンツ --> 未署名のコンテンツの実行 --> 追加の未署名の権限 --> システム情報」までスクロールダウンし、「有効にする」を選択する。 開いているウィンドウのそれぞれで「OK」をクリックする。 | |2.5 コントロール・センター機能の喪失 |DB2 バージョン 7.2 では、フィックスパック 6 より前のバージョン 6 コントロール・センター・クライアントと、 |フィックスパック 7 より前のバージョン 7 クライアントは、DB2 バージョン 7.2 で使用した場合、ほぼすべての機能を |失います。これを修正するために、バージョン 6 クライアントはフィックスパック 6 またはそれ以降に、 |バージョン 7 クライアントはフィックスパック 2 またはそれ以降にそれぞれアップグレードしてください。 |フィックスパック 2 を DB2 サーバーに適用しても、下位レベルの |コントロール・センター・クライアントには問題は発生しません。 |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 |2.11 AIX V4 の Java アプリケーションに必要な修正 |AIX 4.3.3 で稼働する Java アプリケーションは、 |カーネル・ファイル・セット bos.mp または bos.up が 4.3.3.77 の場合は、突然、終了する場合があります。 |コマンド lslpp -l bos.ip bos.mp を実行して、カーネル修正レベルを |判別します。 |AIX 4.3.3 で Java をご使用のお客様はすべて、4.3.3.78 にアップグレードすることを |お勧めします。カーネルを推奨のレベルに更新する修正が提供されています。 |Authorized Problem Analysis Report (APAR) IY25282 用の修正を入手する必要があります。 |IY25282 用の修正をインストールすると、Java 終了状態を訂正できます。 |次回の修正は、APAR 番号 IY26149 で 2002 年の第 1 四半期に |リリースされる予定です。 |AIX 5.1C は IY25377 と一緒に出荷され、これには同じ修正内容が入っています。 |詳しい情報、アドバイスについては、AIX サポートにお尋ねください。 オンライン資料 (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 上でこの問題を解決するには、次のステップを実行してください。 「スタート」メニューから、「プログラム」-->「Windows エクスプローラ」を選びます。Windows エクスプローラが開きます。 Windows エクスプローラから、「表示」-->「オプション」を選びます。「オプション」ウィンドウが開きます。 「ファイル・タイプ」タブをクリックします。ファイル・タイプのページが開きます。 「登録されているファイル・タイプ」フィールドの Netscape Hypertext Document を反転表示させ、「編集」をクリックします。「ファイル・タイプの編集」ウィンドウが開きます。 「アクション」フィールドで "Open" を反転表示させます。 「編集」ボタンをクリックします。「アクションの編集」ウィンドウが開きます。 「DDE を使う」チェック・ボックスのチェックをはずします。 「アクションを実行するアプリケーション」フィールドで、 "%1" が、ストリング (引用符、始めの引用符の前のブランク・スペースを含む) の最後になっていることを確認してください。 Windows 2000 でこのメッセージが出た場合は、次のステップを実行してください。 「スタート」メニューから、「Windows エクスプローラ」を選択します。Windows エクスプローラが開きます。 Windows エクスプローラから「ツール --> フォルダ・オプション」を選択します。「フォルダ・オプション」ノートブックが開きます。 「ファイル・タイプ」タブをクリックします。 「ファイル・タイプ」ページの「登録されているファイル・タイプ」フィールドで、 HTM Netscape Hypertext Document を反転表示させ、「詳細設定」をクリックします。「ファイル・タイプの編集」ウィンドウが開きます。 「アクション」フィールドで "open" をクリックします。 「編集」ボタンをクリックします。「アクションの編集」ウィンドウが開きます。 「DDE を使う」チェック・ボックスのチェックをはずします。 「アクションを実行するアプリケーション」フィールドで、 "%1" が、ストリング (引用符、始めの引用符の前のブランク・スペースを含む) の最後になっていることを確認してください。 「OK」をクリックします。 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 です。 インストールおよび構成 部分目次 一般インストール、移行、および構成情報 4.1 すべてのサポートされる DB2 クライアントのインストール・パッケージをダウンロード 4.2 追加が必要な Solaris パッチ・レベル |4.3 AIX での DB2 エンタープライズ拡張エディションのインストール |4.4 Netscape LDAP ディレクトリー・サポート |4.4.1 Netscape LDAP スキーマの拡張 |4.5 Windows ME、Windows XP および Windows 2000 Datacenter エディション・プラットフォームのサポート |4.5.1 Windows XP |4.5.1.1 制約事項 |4.5.2 Windows ME |4.5.2.1 制約事項 |4.5.3 Windows 2000 Datacenter Server |4.6 Windows 95 に DB2 をインストール 4.7 Windows 2000 に DB2 をインストール |4.8 Windows 2000 Terminal Server の管理モードでの DB2 の実行 4.9 Microsoft SNA サーバー および SNA マルチ・サイト・アップデート (2 フェーズ・コミット) のサポート 4.10 IBM Communications Server for Windows NT (CS/NT) にユーザー ID とパスワードを 定義 4.10.1 ノード定義 4.11 取りはずし可能ドライブが接続されていない場合に DB2 インストーラーが停止することがあります 4.12 Windows 2000 で CLP を使用したときのエラー SQL1035N 4.13 特別レジスターで定義した視点による移行の実行 4.14 IPX/SPX プロトコル・サポート (Windows 2000 版) 4.15 前バージョンの DB2 をアップグレードする前に DB2 の処理を停止 4.16 別の DB2 製品がすでにインストールされている場合はインストール後に db2iupdt を実行 4.17 DB2 コントロール・センターを実行するために Linux 環境を設定 4.18 Linux (S/390 版) 用の DB2 ユニバーサル・データベース・エンタープライズ・エディションおよび DB2 コネクト エンタープライズ・エディション |4.19 Linux (S/390 版) でのデータ損失の可能性 |4.20 DB2 Linux の Gnome および KDE Desktop Integration |4.21 Solaris カーネル構成パラメーター (推奨値) |4.22 DB2 ユニバーサル・データベース・エンタープライズ - 拡張エディション (UNIX 版) 概説およびインストール 4.23 shmseg カーネル・パラメーター (HP-UX) 4.24 IBM Visual Warehouse コントロール・データベースの移行 |4.25 db2uiddl コマンドを用いた固有索引の移行 |4.26 64 ビット AIX バージョンのインストール・エラー |4.26.1 SMIT の使用 4.27 移行中のエラー |4.28 IBM(R) DB2(R) コネクト ライセンスの活動化 |4.28.1 ライセンス・センターを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 |4.28.2 db2licm コマンドを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 |4.28.3 分散インストールの場合のライセンスの考慮事項 4.29 ウェアハウス・コントロール・データベースへのアクセス 4.30 エンタープライズ・エディション UNIX CD-ROM の試用製品 4.31 DB2 コネクト エンタープライズ・エディション UNIX CD-ROM の試用製品 |4.32 Web の Information Catalog Center のインストール前に必要な追加の構成 |4.33 コード・ページおよび言語サポート情報 - 訂正 データ・リンク・マネージャー 概説およびインストール |5.1 AIX 5.1 でのサポート 5.2 Dlfm 開始の失敗のメッセージ :「接頭部の afsfid を取得中にエラー」 5.3 アーカイブ・ファイルへの Tivoli Storage Manager クラスの設定 5.4 DFS クライアント・イネーブラーのディスク・スペース要件 5.5 AIX におけるデータ・リンク・ファイル・マネージャー・バックエンド・プロセスのモニター 5.6 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: DCE-DFS 環境における追加のインストールの注意点 5.7 "dlfm add_prefix" コマンドの失敗 5.8 dlfm 停止時にコピー・デーモンが停止しないなど、まれな現象が発生した場合 5.9 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: db2setup ユーティリティーを使用して DB2 データ・リンク・マネージャーをインストール 5.10 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: DCE-DFS インストール後の作業 5.11 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成: smit を使用して DB2 データ・リンク・マネージャーを手動でインストール 5.12 DB2 データ・リンク DFS クライアント・イネーブラー 5.13 DB2 データ・リンク・マネージャー (Solaris 版) のインストールおよび構成 |5.14 Windows NT のデータ・リンクでのアドミニストレーター・グループ権限 5.15 データ・リンク・ファイル・システム・フィルター (DLFF) インストールのロギングの最小化 5.15.1 インストール後のメッセージのロギング |5.15.2 Sun Solaris システム上でのログオンの最小化 5.16 DATALINK リストア 5.17 データ・リンク・マネージャーの削除 5.18 SMIT を使用して DLFM コンポーネントをアンインストールすると他のファイル・セットも除去される可能性があります 5.19 開始する前のホスト名の判別 5.20 データ・リンク・ファイル・マネージャーの操作: DB2 データベースから DB2 データ・リンク・マネージャーをドロップした後のクリーンアップ 5.21 dlfm Client_conf が失敗した場合のユーザー処置 5.22 DLFM1001E (新規エラー・メッセージ) 5.23 DLFM セットアップ構成ファイル・オプション |5.24 ファイルのリストア中に起こりうる問題 5.25 AIX 上でのデータ・リンク/DFS スクリプト dmapp_prestart 実行時エラー |5.26 Tivoli Space Manager とデータ・リンクとの統合 |5.26.1 制約事項と制限 5.27 第 4 章 DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成 5.27.1 一般的なインストールの注意点 5.27.1.1 DB2 ファイル・マネージャー・バージョン 5.2 から DB2 データ・リンク・マネージャー・バージョン 7 への移行 |5.28 第 6 章 AIX でのインストールの検査 |5.28.1 NFS 環境での回避策 インストールおよび構成補足 6.1 第 5 章 UNIX オペレーティング・システムへの DB2 クライアントのインストール |6.1.1 HP-UX カーネル構成パラメーター 6.2 第 12 章 お持ちのアプリケーションの実行 6.2.1 ランタイム・クライアントを使用するデータベース・ユーティリティーのバインド 6.2.2 ODBC を使用しての DB2 への UNIX クライアント・アクセス |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 リレーショナル・コネクトのインストール |6.3.4 第 24 章 複数データ・ソース・アクセス用の統合システムのセットアップ |6.3.4.1 ニックネームで使用されるスキーマの理解 |6.3.4.2 統合データベースを別の統合サーバーへリストアする場合の問題点 |6.4 第 26 章 Oracle データ・ソースへのアクセス |6.4.1 記述の誤り |6.5 リモート LOB での作業時の問題回避 |6.6 Sybase データ・ソースへのアクセス |6.6.1 統合サーバーへの Sybase データ・ソースの追加 |6.6.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 (AIX および Solaris の場合のみ) |6.6.1.2 ステップ 2: Sybase クライアント・ソフトウェアへの DB2 のリンク (AIX および Solaris の場合のみ) |6.6.1.3 ステップ 3: DB2 インスタンスの再生 (AIX および Solaris の場合のみ) |6.6.1.4 ステップ 4: interfaces ファイルの作成およびセットアップ |6.6.1.5 ステップ 5: ラッパーの作成 |6.6.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の設定 |6.6.1.7 ステップ 7: サーバーの作成 |6.6.1.8 ステップ 8: オプション: CONNECTSTRING サーバー・オプションの設定 |6.6.1.9 ステップ 9: ユーザー・マッピングの作成 |6.6.1.10 ステップ 10: 表および視点のニックネームの作成 |6.6.2 Sybase コード・ページの指定 |6.7 ODBC による Microsoft SQL Server データ・ソースへのアクセス (新しい章) |6.7.1 統合サーバーへの Microsoft SQL Server データ・ソースの追加 |6.7.1.1 ステップ 1: 環境変数の設定 (AIX の場合のみ) |6.7.1.2 ステップ 2: シェル・スクリプトの実行 (AIX の場合のみ) |6.7.1.3 ステップ 3: オプション: DB2_DJ_COMM 環境変数の設定 (AIX の場合のみ) |6.7.1.4 ステップ 4: DB2 インスタンスの再生 (AIX の場合のみ) |6.7.1.5 ステップ 5: ラッパーの作成 |6.7.1.6 ステップ 6: サーバーの作成 |6.7.1.7 ステップ 7: ユーザー・マッピングの作成 |6.7.1.8 ステップ 8: 表および視点のニックネームの作成 |6.7.1.9 ステップ 9: オプション: ODBC トレースの取得 |6.7.2 Microsoft SQL Server コード・ページの検討 (Windows NT の場合のみ) 6.8 Informix データ・ソースへのアクセス (新しい章) 6.8.1 統合サーバーへの Informix データ・ソースの追加 6.8.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 6.8.1.2 ステップ 2: Informix クライアント・ソフトウェアへの DB2 のリンク 6.8.1.3 ステップ 3: DB2 インスタンスの再生 |6.8.1.4 ステップ 4: Informix sqlhosts ファイルの作成 6.8.1.5 ステップ 5: ラッパーの作成 6.8.1.6 ステップ 6: オプション: DB2_DJ_COMM 環境変数の設定 6.8.1.7 ステップ 7: サーバーの作成 6.8.1.8 ステップ 8: ユーザー・マッピングの作成 6.8.1.9 ステップ 9: 表、視点、および Informix 同義語のニックネームの作成 一般インストール、移行、および構成情報 4.1 すべてのサポートされる DB2 クライアントのインストール・パッケージをダウンロード |プレバージョン 7 の全クライアントを含む、サポートされるすべての DB2 クライアントのインストール・ |パッケージをダウンロードするには、IBM DB2 フィックスパックおよびクライアント Web サイト |(http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/download.d2w/report) に接続してください。 4.2 追加が必要な Solaris パッチ・レベル DB2 for UNIX 概説およびインストール マニュアルにリストされたパッチに加えて、 DB2 ユニバーサル・データベース (Solaris バージョン 2.6 版) バージョン 7 にはパッチ 106285-02 またはそれ以降のバージョンが必要です。 |4.3 AIX での DB2 エンタープライズ拡張エディションのインストール | | |「DB2 エンタープライズ拡張エディション (UNIX 版) 概説およびインストール」マニュアルの「インストールの実行」セクションのステップ 4 に、以下のコマンドを入力して CD-ROM ファイル・システムを割り振る |ように記述されています。 | crfs -v cdrfs -p ro -d cd0 | |このコマンドを完全に正常に完了させるには、--m コマンドを使用してマウント・ポイントも |指定する必要があります。 | crfs -v cdrfs -p ro -d cd0 -m /cdrom |また、「インストールの実行」セクションには、欠落しているステップがあります。 |ステップ 5 で制御ワークステーションに CD-ROM ファイル・システムをマウントした後、 |区分データベース・システムに関与する各ノードごとに、リモートで CD-ROM ファイル・システムを |マウントする必要があります。/cdrom がまだ関連ノードに無い |場合には、以下のコマンドを使用して、/cdrom ファイル・システムを制御ワークステーションに |エクスポートし、リモートでマウントします。 | exportfs -i -o ro /cdrom | dsh mkdir /cdrom | dsh mount cws_hostname: /cdrom /cdrom |cws_hostname は、制御ワークステーションのホスト名です。 |4.4 Netscape LDAP ディレクトリー・サポート |DB2 は、データベースおよびノード・ディレクトリーの集中管理および統合のための LDAP ディレクトリー |の使用をサポートします。DB2 の以前のリリースでは、Microsoft Active Directory および |IBM SecureWay Directory しかサポートされていませんでした。 |DB2 は、Netscape Directory Server v4.12 以降および iPlanet(TM) Directory Server 5.0 以降 |の LDAP サーバーもサポートするようになりました。 |4.4.1 Netscape LDAP スキーマの拡張 |以下の説明は、Netscape Directory Server 4.1 に関するものです。 |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.5 Windows ME、Windows XP および Windows 2000 Datacenter エディション・プラットフォームのサポート |DB2 は、Microsoft Windows ME、Windows XP、および Windows 2000 Datacenter |エディション・プラットフォームをサポートするようになりました。以下は、 |追加のプラットフォーム固有の情報です。 |4.5.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.5.1.1 制約事項 |インストール中にユーザー ID とパスワードを入力する際に、有効なユーザー・アカウントであるにもかかわらず、 |「インストール・パネルに入力したユーザー・アカウントが無効」というメッセージを受信する場合があります。 |これは、ユーザー ID がマシンに存在している場合にのみ起こります。 まだ存在しないユーザー名を入力した場合は、この問題は起こりません。 |db2admin 以外のユーザー・アカウントの下で DB2 をインストールするよう選択した場合、 |アカウント名が DB2 命名規則にしたがっていることを確認してください。最も重要なこととして、名前にスペースを含むことはできません。 |たとえば、my_name は使用できますが、 |my name は使用できません。 |製品のインストール中にエラー 1052 を受信した場合は、以下を行ってください。 |エラー・ウィンドウを開いたままにします。 |コマンド・ウィンドウを開きます。 |コマンド db2start.exe を実行します。 |エラー・ウィンドウで指定されたコマンドを、コマンド行で表示されているユーザーのパスワードを使用して実行します。 |エラー・ウィンドウに戻り、「了解」をクリックします。 |これで、インストールを続行できます。 ||中国語 (簡体字) を使用している場合で、コントロール・センターで正しく表示されないフォントがある場合、sqllib\java\java12\jdk\jre\lib\font.properties.zh を変更してください。つまり、filename.\u5b8b\u4f53=simsun.ttf の項目を filename.\u5b8b\u4f53=simsun.ttc と置き換えます。 |4.5.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.5.2.1 制約事項 |HTML 検索サーバー機能は、現時点では Window ME ではサポートされません。 |DB2 をアンインストールする場合、「MFC42U.DLL ファイルが見つからない」というエラー・メッセージを受信する場合があります。DB2 を完全にアンインストールするには、アンインストール処理が完了した後に、 |手動で sqllib ディレクトリーを削除してください。 |4.5.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.6 Windows 95 に DB2 をインストール |DB2 を英語以外の Windows 95 システムにインストールする場合には、DB2 UDB をインストールする |前に、Winsock のバージョンを Winsock 2 にアップデートする |必要があります。Winsock 2 のアップグレード・ユーティリティーは、Microsoft 社から提供されています。 4.7 Windows 2000 に DB2 をインストール Windows 2000 では、前のバージョンの DB2 に上書きインストールする場合や、現行バージョンを再インストールする場合には、DB2 のすべてのサービスに対して、回復オプションが「Take No Action」に設定されていることを確認してください。 |4.8 Windows 2000 Terminal Server の管理モードでの DB2 の実行 |DB2 UDB バージョン 7.1、フィックスパック 3 またはそれ以降の場合、DB2 は |Windows 2000 Terminal Server、管理モードで実行できます。実行しないと、 |Windows 2000 Terminal Server、管理モードの クライアント・セッションでは DB2 を |実行できません。 4.9 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.10 IBM Communications Server for Windows NT (CS/NT) にユーザー ID とパスワードを 定義 お使いの DB2 サーバーと DB2 クライアントとのリモート接続の通信プロトコルとして APPC をご使用になっている場合、また SNA 製品として CS/NT をご使用になっている場合は、以下のキーワードが CS/NT 構成ファイルに正しく設定されていることを確認しておきます。このファイルは通常以下のディレクトリーにあります。x:\ibmcs\private ディレクトリー 4.10.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 およびパスワードを定義するには、以下のステップを実行します。 スタート --> プログラム --> IBM Communications Server --> SNA ノード構成 を選択します。「Communications Server 構成ウィンドウへようこそ」が開きます。 変更したい構成ファイルを選択する。「次へ」ボタンをクリックします。「構成シナリオの選択」ウィンドウが開きます。 CPI-C、APPC または 5250 エミュレーションを反転表示する。「終了」ボタンをクリックする。 Communications Server SNA ノード・ウィンドウが開きます。 CPI-C と APPC のそばの [+] をクリックする。 LU6.2 Security のそばの [+] をクリックする。 ユーザー・パスワード上で右クリックし、「作成」を選択する。「ユーザー ID パスワードの定義」ウィンドウが開きます。 ユーザー ID と パスワードを入力する。「了解」をクリックする。 変更を有効にするため「終了」をクリックします。 4.11 取りはずし可能ドライブが接続されていない場合に DB2 インストーラーが停止することがあります 接続されていない、取りはずし可能なドライブを持つコンピューターを使用している場合、インストール中、インストール・タイプを選択後にインストーラーが停止することがあります。この問題を解決するには、-a オプションを指定してセットアップを実行します。 setup.exe -a 4.12 Windows 2000 で CLP を使用したときのエラー SQL1035N 一部のユーザー (たとえば管理者) しか書き込みアクセスを持っていないディレクトリーに DB2 をインストールした場合、通常のユーザーは、DB2 コマンド行プロセッサーを使用しようとしたときにエラー SQL1035N を受け取る可能性があります。 この問題を解決するには、すべてのユーザーが書き込みアクセスを持つディレクトリーに DB2 をインストールしてください。 4.13 特別レジスターで定義した視点による移行の実行 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.14 IPX/SPX プロトコル・サポート (Windows 2000 版) この情報は、「概説およびインストール」マニュアルの「インストールの計画」の章にある「クライアント・サーバー間の接続に関するシナリオ」というセクションを参照しています。 この公開プロトコル・サポート図は、完全に正しいものではありません。 IPX/SPX を使用する OS/2 もしくは UNIX ベースのサーバーに接続する Windows 2000 クライアントはサポートしていません。同様に、IPX/SPX を使用する Windows 2000 サーバーに接続する OS/2 もしくは UNIX ベースのクライアントはサポートしていません。 4.15 前バージョンの 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.16 別の DB2 製品がすでにインストールされている場合はインストール後に db2iupdt を実行 以下の情報は、「概説およびインストール」というインストールに関するマニュアルから入手できます。 UNIX ベースのシステムに、DB2 UDB バージョン 7 をインストールする場合で、DB2 製品がすでにインストールされている場合、本製品の新機能を使用できるようにそれらのインスタンスを db2iupdt コマンドで更新する必要があります。いくつかの機能はこのコマンドが実行されるまで使用可能になりません。 4.17 DB2 コントロール・センターを実行するために Linux 環境を設定 この情報は、「概説およびインストール」マニュアルの「DB2 コントロール・センターのインストール」の章に含まれています。 DB2 インストーラー (Linux 版) が終了し、ターミナル・ウィンドウに戻った後、 DB2 コントロール・センターを実行するための正しい環境を設定するために、以下のコマンドを入力してください。 su -l export JAVA_HOME=/usr/jdk118 export DISPLAY=:0 それから、別のターミナル・ウィンドウを開き、以下のように入力します。 su root xhost + ターミナル・ウィンドウを閉じ、インスタンスの所有者 ID でログインしているターミナルに戻り、以下のコマンドを入力します。 db2cc コントロール・センターを開始します。 4.18 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 サイトにアクセスしてください。 注: 32 ビット Intel ベースの Linux と、Linux S/390 版のみがサポートされています。 以下は DB2 バージョン 7 の Linux/390 では使用できません。 |DB2 UDB エンタープライズ - 拡張エディション |DB2 エクステンダー |データ・リンク・マネージャー |DB2 管理クライアント |パスワード変更サポート |LDAP サポート |TSM |ロー・デバイスの使用 |4.19 Linux (S/390 版) でのデータ損失の可能性 |2.2 シリーズのカーネルの Linux (S/390 版) で DB2 を使用するときは、Linux マシン上の |有効な RAM は 1 GB 未満に制限してください。RAM を 1 GB に制限することで、Linux カーネルのバグによる |DB2 でのデータ損失を避けることができます。 |このことは、 Linux (S/390 版) 上の DB2 に影響しますが、Intel 上の Linux には影響しません。 |カーネル・パッチは、IBM 開発者用サイト で入手でき、 |これによって 1 GB 超の RAM の使用が可能となります。 |4.20 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.21 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,676,1 966,367,641 - 3,865,470,566 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 |注: |shmsys:shminfo_shmmax パラメーターの制限は、32 ビット・システムの場合で 4 GB です。 |msgsys:msginfo_msgmnb および msgsys:msginfo_msgmax パラメーターは |65,535 以上に設定しなければなりません。 |msgsys:msginfo_msgseg パラメーターは 32,767 以下に設定しなければなりません。 |shmsys:shminfo_shmmax パラメーターは、上記の表の推奨値か、または物理メモリーの 90% (バイト) のいずれか高い方に設定します。たとえば、システムに物理メモリーが 196 MB ある場合、 |shmsys:shminfo_shmmax パラメーターを 184,968,806 (196*1024*1024*0.9) に設定します。 | |4.22 DB2 ユニバーサル・データベース・エンタープライズ - 拡張エディション (UNIX 版) 概説およびインストール |「第 5 章 Linux での DB2 ユニバーサル・データベースのインストールおよび構成」には、 |Linux EEE クラスター内の物理ノードがそれぞれ同じカーネル、glibc、および libstdc++ の |レベルを持っていなければならないと記されています。 |Linux 版 DB2 EEE のお試し版は、 |Web サイト http://www6.software.ibm.com/dl/db2udbdl/db2udbdl-pからダウンロードできます。 4.23 shmseg カーネル・パラメーター (HP-UX) 「概説およびインストール」マニュアルにある HP-UX カーネル構成パラメーターの更新に関する情報は、誤っています。HP-UX の shmseg カーネル・パラメーターの推奨値は無視してください。 代わりに、デフォルトの HP-UX 値 (120) を使用してください。 4.24 IBM Visual Warehouse コントロール・データベースの移行 「DB2 ユニバーサル・データベース 概説およびインストール (Windows 版)」は、 Windows NT および Windows 2000 に DB2 ユニバーサル・データベース バージョン 7 の通常インストール中、活動ウェアハウス・コントロール・データベースがどのように移行されるかについての情報を提供します。移行するウェアハウス・コントロール・データベースが複数ある場合、「ウェアハウス・コントロール・データベース管理」ウィンドウを使用して、追加のデータベースを移行する必要があります。一度に 1 つのウェアハウス・コントロール・データベースしか活動化できません。移行する最後のデータベースが、データウェアハウスセンターへの次回のログオン時に使用する予定のデータベースでない場合、「ウェアハウス・コントロール・データベース管理」ウィンドウを使用して、使用する予定のデータベースを登録する必要があります。 |4.25 db2uiddl コマンドを用いた固有索引の移行 |DB2 概説およびインストールの資料の DB2 インストール後移行作業の章、オプションのインストール後 |移行作業の項には、db2uiddl コマンドを使用して、DB2 バージョ |ン 5.x および DB2 バージョン 6 から固有索引を移行すべきであると説明されていますが、 |これは誤りです。 db2uiddl コマンドによる固有索引の移行は、 |プレバージョン 5 の DB2 バージョンから移行する場合にのみ必要です。 |4.26 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.26.1 SMIT の使用 |SMIT を使用する場合、AIX バージョン 4 DB2 が AIX バージョン 5 DB2 に置き換えられると、 |エラーが表示されますが、逆は発生しません。したがって、64 ビット AIX バージョン 5 のユーザーは、 |正しいバージョンをインストール中であることを確認する必要があります。 エラー・メッセージが表示 |されることなく、db2setup を立ち上げることができた場合は、AIX バージョンの互換性のチェックが成功しました。 |注: この非互換性エラーは、32 ビット AIX バージョンには |当てはまりません。 | 4.27 移行中のエラー 移行中に、移行が成功したにもかかわらず db2diag.log ファイルのエラー項目 (データベースが移行されませんでした) が表示される場合は、それを無視してもかまいません。 |ウェアハウス・コントロールを使用している場合、データベース管理のエラーは SQLLIB\LOGGING ディレクトリーに書き込まれます。IWH2RGn.LOG ファイルには、すべてのエラー情報が入れられます。修正を要するエラーがある場合には、 |制御データベースを削除してから、再始動してください。 |制御データベースがすでに存在している場合は、バックアップ・コピーを使用する必要があることを意味します。 |4.28 IBM(R) DB2(R) コネクト ライセンスの活動化 |DB2 コネクト エンタープライズ・エディション、DB2 コネクト アンリミテッド・エディション、 |および DB2 コネクト Web スターター・キット用のインストール・プログラムは、製品ライセンス |をインストールしません。インストール後にこれらの製品は 90 日間、 |試用モードで作動します。これはライセンス・ファイルがないからです。 90 日の期間が過ぎると、 |インストールされた製品は、適切なライセンスを活動化しない限り、 |機能を停止します。 |製品のライセンスを活動化するためには、DB2 ライセンス・センター |または db2licm コマンドのいずれかを使用できます。 |4.28.1 ライセンス・センターを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 ||DB2 コントロール・センターを始動して、「ツール」メニューから |「ライセンス・センター」を選択する。 |ライセンスをインストール中のシステムを選択する。「インストール |済み製品」フィールドには、インストールした製品の名前が表示されます。 |「ライセンス」メニューから |「追加」を選択する。 |「ライセンスを追加」ウィンドウで「ファイル |から」ラジオ・ボタンを選択する。 ||Windows サーバーの場合: x:\db2\license\connect\license_filename ただし、x: は、DB2 コネクト製品 CD が |挿入される CD-ROM ドライブを表す。 |UNIX サーバーの場合: /db2/license/connect/license_filename ||ただし、license_filename は、DB2 コネクト エンタープライズ・エディションおよび DB2 コ |ネクト アンリミテッド・エディションの場合は、db2conee.lic、DB2 コネク |ト Web スターター・キットの場合は、db2consk.lic です。 |「適用」をクリックして、ライセンス・キーを追加する。 |ライセンス・タイプを設定する。 ||DB2 コネクト アンリミテッド・エディションおよび DB2 コネクト Web スターター・キットの場合: |ライセンス・センターで「ライセンス」メニューから |「変更」を選択する。 「ライセンスを変更」ウィンドウで、 |「測定された使用量」チェック・ボックスを選択する。「了解」をクリックして、「ライセンスを変更」ウィンドウをクローズし、ライセンス・センターに戻る。 | |注: DB2 コネクト Web スターター・キットの場合、有効期限日付が製品のインストール日 |から 270 日後にセットされていることを確認してください。 ||DB2 コネクト エンタープライズ・エディションの場合: |ライセンス・センターで「ライセンス」メニューから |「変更」を選択する。 「ライセンスを変更」ウィンドウで、 |購入したライセンスのタイプを選択する。 |同時ユーザー・ライセンスを購入した場合は、「同時 DB2 コネクト・ユーザー」を選択して、購入したユーザー・ライセンスの数を入力する。 |注: DB2 コネクト エンタープライズ・エディションは、1 ユーザー |に 1 ライセンスを提供します。 追加の DB2 コネクト・ユーザー・ライセンスは、 |別途購入する必要があります。 ||||登録済みユーザー・ライセンスを購入した場合は、「登録 |済み DB2 コネクト・ユーザー」を選択し、「了解」をクリックして、 |「ライセンスを変更」ウィンドウをクローズし、ライセンス・センターに戻る。 「ユー |ザー」タブをクリックして、 |ライセンスを購入したユーザー ID をすべて追加する。 ||||4.28.2 db2licm コマンドを使用したライセンス・キーのインストールおよび ライセンス・タイプの設定 |ライセンス・センターではなく、db2licm コマンドを使用して、 |ライセンス・キーを追加できます。db2licm コマンドを使用して |ライセンス・キーを追加するには、 ||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 日後に設定されていることを確認してください。 ||ライセンス・タイプを設定する。 ||DB2 コネクト アンリミテッド・エディションおよび DB2 コネクト Web スターター・キットの場合: |次のコマンドを入力してください。 | db2licm -p db2conee measured |DB2 コネクト エンタープライズ・エディションの場合: |同時ユーザー・ライセンスを購入した場合は、 |次のコマンドを入力する。 | db2licm -p db2conee concurrent | db2licm -u N |ただし、N は、購入した同時ユーザー・ライセンスの |数を表します。 |登録済みユーザー・ライセンスを購入した場合は、 |次のコマンドを入力する。 | db2licm -p db2conee registered |||4.28.3 分散インストールの場合のライセンスの考慮事項 |分散インストールのイメージを作成中の場合は、インストール後にライセンスをインストールするため、 |特別の調整が必要です。 前述の db2licm コマンドを |分散インストール・スクリプトに追加します。 4.29 ウェアハウス・コントロール・データベースへのアクセス Windows NT 上での DB2 バージョン 7 の通常インストールでは、 DB2 バージョン 7 ウェアハウス・コントロール・データベースはウェアハウス・サーバー付きで作成されます。 Visual Warehouse ウェアハウス・コントロール・データベースを持っている場合、ウェアハウス・コントロール・データベースのメタデータが DB2 バージョン 7 データウェアハウスセンターによって使用を移行される前に、ウェアハウス・コントロール・データベースを含む DB2 サーバーを DB2 バージョン 7 へアップグレードする必要があります。使用を続けたいウェアハウス・コントロール・データベースはすべてバージョン 7 に移行する必要があります。活動ウェアハウス・コントロール・データベースのメタデータは DB2 バージョン 7 のインストール処理中にバージョン 7 に移行されます。ウェアハウス・コントロール・データベースのどんな追加でもメタデータを移行するには、ウェアハウス・コントロール・データベース移行ユーティリティーを使用します。それは Windows NT のスタート -->プログラム --> IBM DB2 -->ウェアハウス・コントロール・データベース管理を選択して開始します。ウェアハウス・コントロール・データベースの移行についての情報に関しては、DB2 ユニバーサル・データベースの概説およびインストール を参照してください。 4.30 エンタープライズ・エディション 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.31 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.32 Web の Information Catalog Center のインストール前に必要な追加の構成 |Web の Information Catalog Center をインストールする前に、インストールする言語の dg_strings.hti ファイルを /sqllib/icuweb/macro ディレクトリー |にコピーする必要があります。 |dg_strings.hti ファイルは、ご使用のシステムの該当する言語ディレクトリー |にあります。言語コードのリストは、「概説およびインストール」ガイドおよびその他のほとんどの |DB2 の 資料の NLS に関する付録に記載されています。 |4.33 コード・ページおよび言語サポート情報 - 訂正 |概説およびインストールの資料の付録、各国語サポート (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 for 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 (バックアップの失敗) で失敗する可能性があります。これが起きた場合は、以下のステップを実行します。 dlfm stop コマンドを実行して、データ・リンク・マネージャー・デーモン・プロセスを停止する。 dlfm stopdbm コマンドを実行して、DB2 プロセスを停止する。 dce_login root コマンドを実行して、dce root 認証を取得する。 dlfm startdbm コマンドを実行して、DB2 プロセスを開始する。 dlfm add_prefix コマンドを実行して、ファイル・セットをデータ・リンク・マネージャーと一緒に登録する。 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 インストール後の作業 「データ・リンク・マネージャーのインストール」という新規セクションが追加されます。 データ・リンク・マネージャー・サーバーで、インストールを完了するために以下のステップを実行する必要があります。 「DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成」章の「DCE-DFS 環境における追加のインストールの注意点」セクションの 「Keytab ファイル」に記されている方法で、Keytab ファイルを作成する。 root で、以下のコマンドを入力して DMAPP を開始する。 stop.dfs all start.dfs all 以下のように dce root 認証を使用して "dlfm setup" を実行する。 データ・リンク・マネージャー管理者: DLMADMIN でログインする。 root で、dce_login を実行する。 次のコマンドを入力する: dlfm setup データ・リンク・マネージャー・クライアントで、インストールを完了するために以下のステップを実行する必要があります。 「DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成」章の「DCE-DFS 環境における追加のインストールの注意点」セクションの 「Keytab ファイル」に記されている方法で、Keytab ファイルを作成する。 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) も除去してください。インストールを完了するには、以下のステップを実行します。 「DB2 データ・リンク・マネージャー (AIX 版) のインストールおよび構成」章の「DCE-DFS 環境における追加のインストールの注意点」セクションの 「Keytab ファイル」に記されている方法で、Keytab ファイルを作成する。 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 版) のインストール後に、次のアクションを実行する必要があります。 以下の 3 行を /etc/system ファイルに追加する。 set dlfsdrv:glob_mod_pri=0x100800 set dlfsdrv:glob_mesg_pri=0xff set dlfsdrv:ConfigDlfsUid=UID UID は id dlfm のユーザー ID を表します。 変更を有効にするために、マシンをリブートする。 |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 マシンからアンインストールする前に、以下を行ってください。 root ユーザーで次のコマンドを使用して、/etc/vfs のコピーを作成する。 cp -p /etc/vfs /etc/vfs.bak DB2 をアンインストールする。 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 サーバーが内部的に送信するホスト名と正確に一致していなければなりません。 以下の方法で入手した正確なホスト名を使用してください。 DB2 サーバーでホスト名コマンドを入力する。たとえば、このコマンドは db2server を返します。 プラットフォームに応じて、以下のいずれかを行う。 AIX の場合、host db2server コマンドを入力する。db2server は直前のステップで入手した名前です。このコマンドは次のような出力を返します。 db2server.services.com is 9.11.302.341, Aliases: db2server Windows NT の場合、nslookup db2server コマンドを入力する。 db2server は直前のステップで入手した名前です。このコマンドは次のような出力を返します。 Server: dnsserv.services.com Address: 9.21.14.135 Name: db2server.services.com Address: 9.21.51.178 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 データ・リンク・マネージャーに関する重要な情報が失われ、回復できなくなります。 特定のデータベースに対して、リンク解除処理とバックアップ情報のガーベッジ・コレクションを開始するには、以下を行います。 DB2 データ・リンク・マネージャー管理者としてシステムにログオンする。 次のコマンドを実行する。 dlfm drop_dlm database instance hostname 説明: database はリモート DB2 UDB データベースの名前。 instance はデータベースが存在するインスタンス。 hostname はデータベースが常駐する DB2 UDB サーバーのホスト名。 ログオフする。 このコマンドを使用すべきコンテキストを示す完全な使用シナリオについては、「コマンド解説書」を参照してください。 このコマンド用に新しいエラー・コードが作成されました (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 処理でエラーが発生しました。 原因: データ・リンク・マネージャーが指定のデータベースのリンク解除処理とガーベッジ・コレクション処理を開始できませんでした。これは、以下のいずれかの理由で起きたことが考えられます。 データ・リンク・マネージャーが実行されていない。 データベース、インスタンス、およびホスト名の無効な組み合わせがコマンドに指定された。 データ・リンク・マネージャーのコンポーネント・サービスのいずれかに障害がある。 処置: 以下のステップを実行してください。 データ・リンク・マネージャーが実行中であることを確認する。まだ実行されていなければ、データ・リンク・マネージャーを始動する。 登録されているデータベースが、データベース、インスタンス、およびホスト名の組み合わせによって識別されることを確認する。これを行うには、データ・リンク・マネージャーで "dlfm list registered databases" コマンドを使用してください。 引き続きエラーが発生する場合、db2diag.log ファイルの情報を参照して、コンポーネント・サービス (たとえば、接続管理サービス、トランザクション管理サービスなど) が失敗したかどうかを確認する。 db2diag.log のエラー・コードを書き留め、そのエラー・コードに対して推奨される適切な処置を行ってください。 5.23 DLFM セットアップ構成ファイル・オプション dlfm セットアップ dlfm.cfg オプションが除去されました。文書内のこのオプションへの参照は無視されます。 |5.24 ファイルのリストア中に起こりうる問題 | | |問題: 同じファイルの別のバージョンが、異なるときにデータベースにリンクされると、 |データ・リンク・ファイル・マネージャー (DLFM) 検索デーモンは、データベースがリストアされるときに |アーカイブから正しいバージョンのファイルを検索できません。 |背景: データベースがバックアップ・イメージからリストアされるときに、 |バックアップ・イメージにリンクされたファイルもまた、アーカイブからデータ・リンク・ファイル・システム (DLFS) にリストアされます。データ・リンク・マネージャーの検索およびリストアのプロセスがどのように機能するかを次に説明します。 ||ディスク上のファイルの現行バージョンの最終変更時刻とサイズ属性が、 |アーカイブからリストアされたファイルの属性と異なる 場合、 |ディスク上の現行ファイルはファイルの異なるバージョンとして扱われます。 |ディスク上の現行ファイルは filename.MOD として保管され、 |DLFM アーカイブからのオリジナル・バージョンのファイルがリストアされます。 |たとえば、現行ファイル名がabc である場合、abc は abc.MOD にコピーされます。 |ディスク上の現行ファイルの最終変更時刻とサイズ属性が、アーカイブからリストアされたファイルの属性と同じ である場合、 データ・リンク検索デーモンはファイルが変更されていないものと想定し、 |アーカイブからのファイルのバージョンをリストアしません。 ||重要: ファイルを変更するのは可能ですが、 |最終変更時刻とサイズ属性を変更することはできません。 |ファイル・サイズに影響しない変更により「隠れた変更」がなされ、 |最終変更時刻属性を元のファイルと同じ属性にリセットします。 |例: DBTEST というデータベースがあり、 |DATALINK 列を持つ表を含むとします。以下の作業をリストされている順に実行します。 ||DLFS マウント・ボリュームの fileA というファイルを作成する。これがファイルの最初のバージョンです。 |fileA の参照 (URL) を DBTEST データベースに挿入する。 |DBTEST データベースのバックアップを取る。 |fileA 参照を DBTEST データベースから削除する。 |DLFS マウント・ボリュームから fileA を削除する。 |DLFS マウント・ボリュームの fileA という別のファイルを作成する。 |これがファイルの 2 番目のバージョンです。 |fileA の参照 (URL) を DBTEST データベースに挿入する。 |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 で登録してから、データ・リンク・ファイル・マネージャーで |登録してください。 |HSM で、コマンド "dsmmigfs add /fs" を使って登録する。 |DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 ||ファイル・システムのデータ・リンク・サポートは、以下を入力すると |HSM ファイル・システムのスタンザ /etc/filesystems に反映されます。 | vfs = dlfs | mount = false | options = rw,Basefs=fsm | nodename = - |既存の HSM ファイル・システムにデータ・リンク・サポートを追加する |DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 |既存のデータ・リンク・ファイル・システムに HSM サポートを追加する ||HSM で、コマンド "dsmmigfs add /fs" を使って登録する。 |DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 ||データ・リンク HSM ファイル・システムからデータ・リンク・サポートを除去する |コマンド "dlfmfsmd -j /fs" を使ってデータ・リンク・サポートを除去する。 |データ・リンク HSM ファイル・システムから HSM サポートを除去する ||コマンド "dsmmigfs remove /fs" を使って HSM サポートを |除去する。 |データ・リンク・サポート、"dlfmfsmd -j /fs" を除去する。 |DLM に、コマンド "dlfmfsmd /fs" を使って登録する。 ||データ・リンク HSM ファイル・システムからデータ・リンクと HSM サポートを |除去する ||コマンド "dsmmigfs remove /fs" を使って HSM サポートを |除去する。 |コマンド "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 ファイルがリンクされる前にそのマシンに接続した場合には、 |アクセス制御トークンなしでもこのファイルにアクセスできることがあります。 |無許可のファイル・アクセスが行われる可能性を少なくするために、以下の方法のいずれかを |使用してください。 ||SQL INSERT ステートメントを実行してリンクを設定する前に、 |このファイルに対して touch コマンドを使用する。 |このファイルを含んでいるディレクトリーに対して touch コマンドを |使用する。 |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 リレーショナル・コネクトのインストール ||DB2 ユニバーサル・データベースのインストールを実行するために作成したユーザー・アカウントで |統合サーバーにログオンします。 |セットアップ・プログラムが必要に応じてファイルを更新できるよう、 |実行中のプログラムをすべて終了します。 |セットアップ・プログラムを呼び出します。 |セットアップ・プログラムは自動的に、または手操作で呼び出すことができます。 |セットアップ・プログラムを自動的に開始できない場合、または別の言語でセットアップを |実行する場合、手操作でセットアップ・プログラムを呼び出してください。 |セットアップ・プログラムを自動的に呼び出すには : |DB2 リレーショナル・コネクト CD をドライブに挿入します。 |自動実行機能により、セットアップ・プログラムが自動的に開始されます。 |システム言語が判別され、その言語用のセットアップ・プログラムが立ち上がります。 ||セットアップ・プログラムを手操作で呼び出すには: |「スタート」をクリックし、 |「ファイル名を指定して実行」オプションを選択します。 |「名前」フィールドに次のコマンドを入力します。 |x:\setup /i language |説明: |x |CD-ROM ドライブです。 |language |使用する言語の国別 / 地域コード (英語であれば EN) です。 ||「OK」をクリックします。 |||インストール・ランチパッドが開きます。 |「インストール」をクリックして、インストール処理を開始します。 |セットアップ・プログラムの指示にしたがってください。 |インストールが完了すると、他の DB2 製品が入っているディレクトリーに |DB2 リレーショナル・コネクトがインストールされます。たとえば、Oracle NET8 client ソフトウェア (net8.dll) のラッパー・ライブラリーは、 |c:\Program Files\SQLLIB\bin ディレクトリーにインストールされます。 ||6.3.3.2 UNIX サーバーへの DB2 リレーショナル・コネクトのインストール |DB2 リレーショナル・コネクトを UNIX 統合サーバーにインストールするに |は、db2setup ユーティリティーを使用します。 |注 : db2setup ユーティリティーの使用時に表示される画面は、 |その統合サーバーに何がインストール済みであるかによって異なります。 |以下のステップは、リレーショナル・コネクトがまだインストールされていないことを前提としています。 ||root 権限を持つユーザーでログインします。 |DB2 製品 CD-ROM を挿入し、マウントします。 |CD-ROM をマウントする方法 |は、「DB2 for UNIX Quick Beginnings 」を |参照してください。 |cd /cdrom コマンドを入力して、 |CD-ROM がマウントされているディレクトリーに移動します (cdrom は、 |使用している製品 CD-ROM のマウント・ポイントです)。 |./db2setup コマンドを入力します。 |少しして |「DB2 V7 のインストール」ウィンドウが開きます。このウィンドウには、現在インストール済みの項目と |インストール可能な項目がリストされます。 |インストールする分散結合 (たとえ |ば、分散結合 (Informix データ・ソース用) など) をナビゲートし、 |スペース・バーを押して選択します。選択されると、そのオプションの横にアスタリスクが表示されます。 |「了解」を選択します。「DB2 サービスの作成」ウィンドウが開きます。 |統合サーバーにはすでに DB2 インスタンスが含まれているので、 |「DB2 インスタンスを作成しない」オプションを選択して |「了解」を選択します。 |管理サーバーを作成しないようにしてあると、警告が表示されます。 |「了解」を選択します。「DB2 セットアップ・ユーティリティー」 |ウィンドウに、何がインストールされるのかについてのサマリー報告書が表示されます。 |リレーショナル・コネクトはまだインストールしていないので、以下の 2 つの項目がリストされます。 ||DB2 リレーショナル・コネクト用の製品シグニチャー |選択したデータ・ソース用の分散結合 ||「継続」を選択します。リレーショナル・コネクト・セットアップの開始を確認するウィンドウが表示されます。「了解」を |選択してセットアップを継続します。セットアップが完了するのに数分かかることがあります。 |「DB2 セットアップ・ユーティリティー」ウィンドウに、どのコンポーネントが正常にインストールされたか |についての状況報告書が表示されます。「了解」を選択します。 |「DB2 セットアップ・ユーティリティー」ウィンドウが開きます。 |「クローズ」を選択し、次に「了解」を |選択してユーティリティーを終了します。 |インストールが完了すると、他の DB2 製品が入っているディレクトリー |に DB2 リレーショナル・コネクトがインストールされます。 |DB2 (AIX サーバー版) では、ディレクトリー |は /usr/lpp/db2_07_01 です。 |DB2 (Solaris 操作環境サーバー版) では、ディレクトリー |は /opt/IBMdb2/V7.1 です。 |DB2 (HP-UX サーバー版) では、ディレクトリー |は /opt/IBMdb2/V7.1 です。 |DB2 (Linux サーバー版) では、ディレクトリー |は /usr/IBMdb2/V7.1 です。 |||6.3.4 第 24 章 複数データ・ソース・アクセス用の統合システムのセットアップ |6.3.4.1 ニックネームで使用されるスキーマの理解 |CREATE NICKNAME ステートメントの中のニックネーム・パラメーターは、スキーマと |ニックネームの 2 つの部分で構成される名前です。ニックネームを作成する時にスキーマを |省略すると、ニックネームのスキーマはニックネームを作成するユーザーの許可 ID となります。 |ニックネームが作成されると、ニックネームに関する情報はカタログ視点の SYSCAT.TABLES、SYSCAT.TABOPTIONS、SYSCAT.COLUMNS、 |SYSCAT.COLOPTIONS、および SYSCAT.INDEXES に |保管されます。 |6.3.4.2 統合データベースを別の統合サーバーへリストアする場合の問題点 |統合データベースのバックアップを別の統合サーバーにリストアする場合、 |データベース・イメージには新規データベース、および DB2 ファミリー・データ・ソースの |アクセスに必要な、ノード・ディレクトリー情報が入っていません。リストアを実行するときは、情報を |カタログする必要があります。 |6.4 第 26 章 Oracle データ・ソースへのアクセス | | | |AIX および Windows NT でのラッパーのサポートに加 |え、DB2 ユニバーサル・データベースは Linux、Solaris 操作環境、および HP-UX で Oracle ラッパーを |サポートするようになりました。このサポートは Oracle バージョン 8 に限定されています。 |これらのプラットフォーム用のラッパーにアクセスするには、V7.2 DB2 リレーショナル・コネクト CD を |挿入して「分散結合 (Oracle データ・ソース用)」を選択する必要があります。 |DB2 リレーショナル・コネクトをインストールすると、Oracle データ・ソースを |統合サーバーに追加することができます。 ||Oracle クライアント・ソフトウェアを DB2 統合サーバーにインストールし、構成します。 |UNIX プラットフォーム上の DB2 統合サーバーの場合、djxlink スクリプトを実行して、 |Oracle SQL*Net または Net8 ライブラリーを DB2 統合サーバーにリンク・エディットし、 |Oracle と併用するための DB2 統合ラッパー・ライブラリーを作成します。 |db2dj.ini ファイルを作成または更新し、Oracle 用に環境変数を追加します。 |このファイルに、ORACLE_HOME 環境変数の定義を含める必要があります。 |(オプション) DB2_DJ_INI および DB2_DJ_COMM プロファイル・レジストリー変数を設定します。 |DB2 統合サーバー上の Oracle tnsnames.ora ファイルの場所と内容を確認し、 |Oracle sqlplus を使用して Oracle サーバーへの接続をテストします。 |DB2 インスタンスを再生します。 |ラッパーを作成します。 |サーバー定義を作成します。 |ユーザー・マッピングを作成します。 |Set Passthru を使用して構成をテストします。 |表および視点のニックネームを作成します。 |環境変数の設定を含め、上記のステップについての詳しい説明は、第 26 章 |「DB2 インストールおよび構成補足」の |「Oracle データ・ソース・アクセス用の統合システム・セットアップ」にあります。 |この情報は、|http://www.ibm.com/software/data/db2/relconnect/ から |オンラインでの入手も可能です。 |6.4.1 記述の誤り |セクション「Oracle データ・ソースの統合システムへの追加」に以下の |誤りがあります。 ||ブックのステップ 2 とステップ 3 の間に追加のステップが 1 つ必要です。 |最初の 3 つのステップは、正しくは次の通りです。 ||Oracle クライアント・ソフトウェアを Oracle で提供された資料を使用して DB2 統合システムに |インストールおよび構成します。 |ORACLE_HOME 環境変数を設定します。 |export ORACLE_HOME=. |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 統合サーバーにインストール |した後にのみ実行してください。 |データ・ソース環境変数を、db2dj.ini ファイルを変更し、 |db2set コマンドを発行することで設定します。 |db2set コマンドは、DB2 プロファイル・レジストリーを |ユーザーの設定で更新します。 |環境変数の設定についての詳しい説明は、第 26 章の |「DB2 インストールおよび構成補足」の |「Oracle データ・ソース・アクセス用の統合システム・セットアップ」にあります。 |ここからは、ブックに書かれている通りにステップ 3 から続きを行ってください。 ||資料では次のように設定するように指示されています。 |DB2_DJ_INI = sqllib/cfg/db2dj.ini |これは誤りで、正しくは次のように設定します。 |DB2_DJ_INI = $INSTHOME/sqllib/cfg/db2dj.ini |6.5 リモート LOB での作業時の問題回避 |リモート LOB 列を操作する場合は、メモリー不足の問題が発生する |場合があります。たとえば、Oracle 列から LONG データを選択し、 |そのデータを DB2 表に CLOB として挿入する照会を実行するとします。データベース・アプリケーションの |ヒープ・サイズを増やしていない場合は、「メモリー不足」を示す SQL エラーを |受け取ります。このエラーを解決するには、次のようにします。 ||すべてのアプリケーションを DB2 インスタンスから切断します。 |アプリケーション・ヒープ・サイズを次のコマンドを使って更新します。 |db2 udpate db cfg for dbname using APPLHEAPSZ 1024 |ここで dbname は統合データベースの名前で、1024 は推奨される |ヒープ・サイズです。 |データベースを再初期設定します。 ||この問題が発生させないためには、データベース・アプリケーションのヒープ・サイズを |増やしてください。この変更を有効にするために、データベースを再初期設定します。 |例: ||アプリケーション・ヒープ・サイズを次のコマンドを使って更新します。 |db2 udpate db cfg for dbname using APPLHEAPSZ 1024 |ここで dbname は統合データベースの名前で、1024 は推奨される |ヒープ・サイズです。 |すべてのアプリケーションを DB2 インスタンスから切断します。 |データベースを再初期設定します。 | |6.6 Sybase データ・ソースへのアクセス | | ||Sybase データ・ソースを統合サーバーに追加する前に、Sybase Open Client ソフトウェアを DB2 統合サーバーに |インストールし、構成しておく必要があります。 |Sybase Open Client ソフトウェアのインストール方法については、Sybase データベース・ソフトウェアに |付属の資料に記述されているインストール手順を参照してください。 |インストール手順の一部として、Sybase カタログ・ストアード・プロシージャーが Sybase サーバー |にインストールされていて、Sybase Open Client ライブラリーが DB2 統合サーバーに |インストールされていることを確認してください。 |クライアント・ソフトウェアから Sybase サーバーへの接続の構成の後に、 |Sybase ツールのいずれかを使用して接続のテストを行います。UNIX の場合は isql ツールを、 |Windows の場合は SQL Advantage ツールを使用します。 |統合サーバーをセットアップして、Sybase データ・ソースに保管されているデータにアクセスするには: |DB2 リレーショナル・コネクト バージョン 7.2 をインストールします。 |6.3.3, DB2 リレーショナル・コネクトのインストールを参照してください。 |Sybase データ・ソースを統合サーバーに追加します。 |Sybase コード・ページを指定します。 ||この章では、ステップ 2 および 3 が説明されています。 |この章での説明は、Windows NT、AIX、および Solaris 操作環境に適用されます。 |プラットフォーム固有の違いは、その都度示されています。 |6.6.1 統合サーバーへの Sybase データ・ソースの追加 | |Sybase データ・ソースを統合サーバーに追加するには: |環境変数を設定し、プロファイル・レジストリーを更新します (AIX および Solaris の場合のみ)。 |DB2 を Sybase クライアント・ソフトウェアにリンクします (AIX および Solaris の場合のみ)。 |DB2 インスタンスを再生します (AIX および Solaris の場合のみ)。 |interfaces ファイルを作成し、セットアップします。 |ラッパーを作成します。 |オプション: DB2_DJ_COMM 環境変数を設定します。 |サーバーを作成します。 |オプション: CONNECTSTRING サーバー・オプションを設定します。 |ユーザー・マッピングを作成します。 |表および視点のニックネームを作成します。 |上記のステップは、このセクションで詳しく説明されています。 |6.6.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 (AIX および Solaris の場合のみ) |データ・ソース環境変数を、db2dj.ini ファイルを変更し、 |db2set コマンドを実行することで設定します。 |db2dj.ini ファイルには、 |統合サーバーにインストールされている Sybase クライアント・ソフトウェアについての構成情報があります。db2set コマンドは、DB2 プロファイル・レジストリーを |あなたの設定で更新します。 |区分データベース・システムでは、特定インスタンスのすべてのノードに対して |単一の db2dj.ini ファイルを使用、または |特定インスタンスの 1 つ以上のノードに対して固有の db2dj.ini ファイルを |使用することができます。 |非区分データベース・システムでは、 |保持できる db2dj.ini ファイルはインスタンスごとに 1 つです。 |環境変数を設定するには: |sqllib/cfg にある db2dj.ini ファイルを |編集し、次の環境変数を設定します。 | SYBASE="" | |ここで、 は Sybase クライアントがインストールされている |ディレクトリーです。 |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.6.1.2 ステップ 2: Sybase クライアント・ソフトウェアへの DB2 のリンク (AIX および Solaris の場合のみ) | |Sybase データ・ソースにアクセスできるようにするには、DB2 統合サーバーが |クライアント・ライブラリーにリンク・エディットされていなければなりません。 |リンク・エディット処理は、統合サーバーが通信するデータ・ソースごとに |ラッパーを作成します。 |djxlink スクリプトを実行すると、ラッパー・ライブラリーが |作成されます。 |djxlink スクリプトを実行するには: |djxlink |6.6.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.6.1.4 ステップ 4: interfaces ファイルの作成およびセットアップ |interfaces ファイルを作成およびセットアップするには、そのファイルを |作成し、アクセス可能にしなければなりません。 ||Sybase 提供のユーティリティーを使用して、アクセスしたいすべての Sybase Open Server の |データを含む interfaces ファイルを作成します。 |このユーティリティーの使用法については、Sybase のインストール資料を参照してください。 |Windows NT では通常、このファイルの名前は sql.ini になります。 |すべてのプラットフォームに共通の名前にするには、 |作成したファイルの名前を sql.ini から interfaces に |変更してください。 |名前を sql.ini から interfaces に |変更しない場合、IFILE パラメーター、またはステップ 8 で説明されている CONNECTSTRING オプションを |使用しなければなりません。 |AIX および Solaris システムの場合、このファイルの名前は /sqllib/interfaces になります。 |この 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.6.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.6.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.6.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.6.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.6.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.6.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.6.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.7 ODBC による Microsoft SQL Server データ・ソースへのアクセス (新しい章) | | |Microsoft SQL Server データ・ソースを DB2 統合サーバーに追加する前に、 |ODBC ドライバーを統合サーバーにインストールし、構成しておく必要があります。 |ODBC ドライバーのインストール方法については、ODBC ドライバーに |付属の資料に記述されているインストール手順を参照してください。 |統合サーバーをセットアップして、Microsoft SQL Server データ・ソースに保管されている |データにアクセスするには: |ODBC ドライバーを統合サーバーにインストールし、構成します。 |ODBC ドライバーのインストール方法については、ODBC ドライバーに |付属の資料に記述されているインストール手順を参照してください。 |DB2 (Windows NT サーバー版) の場合: |ODBC デバイス・マネージャーでシステム DSN を構成します。 |「ODBC データ・アドミニストレーター」ウィンドウで、SQL サーバー・ドライバーを指定し、 |そのダイアログを進めて新規システム DSN を追加します。「ユーザー提供のログイン ID |およびパスワードを使用した SQL サーバー認証」を指定します。 |DB2(AIX サーバー版)の場合 : |MERANT によって提供されているライブラリーのスレッド化バージョンをインストールし、 |LIBPATH の最初の項目として MERANT ライブラリー・ディレクトリーを指定し、 |.odbc.ini ファイルをセットアップします。 ||DB2 リレーショナル・コネクト バージョン 7.2 をインストールします。 |6.3.3, DB2 リレーショナル・コネクトのインストールを参照してください。 |Microsoft SQL Server データ・ソースを統合サーバーに追加します。 |Microsoft SQL Server コード・ページを指定します。(Windows NT の場合のみ) ||この章では、ステップ 3 および 4 が説明されています。 |この章での説明は、Windows NT および AIX プラットフォームに適用されます。 |プラットフォーム固有の違いは、その都度示されています。 |6.7.1 統合サーバーへの Microsoft SQL Server データ・ソースの追加 |ODBC ドライバーと DB2 リレーショナル・コネクトをインストールした後、 |以下のステップにしたがって Microsoft SQL Server データ・ソースを統合サーバーに |追加します。 |環境変数を設定します。(AIX の場合のみ) |シェル・スクリプトを実行します。(AIX の場合のみ) |オプション: DB2_DJ_COMM 環境変数を設定します。(AIX の場合のみ) |DB2 インスタンスを再生します。(AIX の場合のみ) |ラッパーを作成します。 |サーバーを作成します。 |ユーザー・マッピングを作成します。 |表および視点のニックネームを作成します。 |オプション: ODBC トレースを取得します。 ||上記のステップは、以下のセクションで詳しく説明されています。 |6.7.1.1 ステップ 1: 環境変数の設定 (AIX の場合のみ) | |データ・ソース環境変数を、db2dj.ini ファイルを変更し、 |db2set コマンドを実行することで設定します。 |db2dj.ini ファイルには、 |Microsoft SQL Server データ・ソースに接続するための構成情報が含まれています。 |db2set コマンドは、DB2 プロファイル・レジストリーを |あなたの設定で更新します。 |区分データベース・システムでは、特定インスタンスのすべてのノードに対して |単一の db2dj.ini ファイルを使用、または |特定インスタンスの 1 つ以上のノードに対して固有の db2dj.ini ファイルを |使用することができます。 |非区分データベース・システムでは、 |保持できる db2dj.ini ファイルはインスタンスごとに 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.7.1.2 ステップ 2: シェル・スクリプトの実行 (AIX の場合のみ) | |djxlink.sh シェル・スクリプトは、クライアント・ライブラリーを |ラッパー・ライブラリーにリンクします。 |シェル・スクリプトを実行するには: |djxlink |6.7.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.7.1.4 ステップ 4: DB2 インスタンスの再生 (AIX の場合のみ) |環境変数がプログラムに設定されていることを確実にするには、DB2 インスタンスを再生してください。 |インスタンスを再生すると、変更を受け入れられるよう DB2 インスタンスはリフレッシュされます。 |DB2 インスタンスを再生するには、次のコマンドを実行してください。 |db2stop |db2start |6.7.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.7.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.7.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.7.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.7.1.9 ステップ 9: オプション: ODBC トレースの取得 | |データ・ソースへのアクセス時に問題が発生する場合、その問題の分析と解決のため、 |ODBC トレース情報を取得することができます。 |ODBC トレースが正しく機能していることを確認するには、 |ODBC データ・ソース・アドミニストレーターにより提供されているトレース・ツールを使用します。 |トレースの活動化はシステム・パフォーマンスに影響するため、 |問題が解決したらトレースをオフにしてください。 |6.7.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.8 Informix データ・ソースへのアクセス (新しい章) Informix データ・ソースを DB2 統合サーバーに追加する前に、Informix クライアント SDK ソフトウェアを統合サーバーにインストールして構成しておく必要があります。クライアント SDK ソフトウェアのインストール方法に関する特定の事柄の詳細は、Informix データベース・ソフトウェアに付属の資料に記載されているインストール手順を参照してください。インストール手順の一部として、Informix クライアント SDK ライブラリーを組み込むことを忘れないでください。 Informix データ・ソースに保管されているデータにアクセスできるように統合サーバーをセットアップするには : DB2 リレーショナル・コネクトをインストールします。6.3.3, DB2 リレーショナル・コネクトのインストールを参照してください。 最新の DB2 フィックスパックを適用します。 Informix データ・ソースを統合サーバーに追加します。 この章では、ステップ 3 について説明しています。 この章での説明は、AIX、Solaris 操作環境、および HP-UX オペレーティング・システムに適用されます。オペレーティング・システム固有の違いは、そのつど示されています。 6.8.1 統合サーバーへの Informix データ・ソースの追加 Informix データ・ソースを統合サーバーに追加するには : 環境変数を設定し、プロファイル・レジストリーを更新します。 DB2 を Informix クライアント・ソフトウェアにリンクします。 DB2 インスタンスを再生します。 Informix sqlhosts ファイルを作成します。 ラッパーを作成します。 オプション: DB2_DJ_COMM 環境変数を設定します。 サーバーを作成します。 ユーザー・マッピングを作成します。 表、視点、および Informix 同義語のニックネームを作成します。 上記のステップは、このセクションで詳しく説明されています。 6.8.1.1 ステップ 1: 環境変数の設定およびプロファイル・レジストリーの更新 データ・ソース環境変数を、db2dj.ini ファイルを変更し、 db2set コマンドを実行することで設定します。 db2dj.ini ファイルには、統合サーバーにインストールされている Informix クライアント・ソフトウェアについての構成情報が含まれています。db2set コマンドは、DB2 プロファイル・レジストリーをあなたの設定で更新します。 区分データベース・システムでは、特定インスタンスのすべてのノードに対して単一の db2dj.ini ファイルを使用、または特定インスタンスの 1 つ以上のノードに対して固有の db2dj.ini ファイルを使用することができます。非区分データベース・システムでは、保持できる db2dj.ini ファイルはインスタンスごとに 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 | Informix 環境変数を使用して、DB2 インスタンスの .profile ファイルを更新します。これを行うには、次のコマンドを発行し、各変数を設定してエクスポートします。 PATH=$INFORMIXDIR/bin:$PATH export PATH INFORMIXDIR= export INFORMIXDIR ここで informix_client_path は、統合サーバー上で Informix クライアントがインストールされているディレクトリーのパスです。パス内にブランクを含んでいる名前がある場合は、パスを二重引用符 (") で囲んでください。 次のコマンドを入力して、DB2 インスタンス .profile を実行します。 . .profile db2set コマンドを実行して、DB2 プロファイル・レジストリーに変更を適用します。このコマンド db2set の構文は、使用しているデータベース・システムによって異なります。このステップは、以下のデータベース・システム構造のいずれかで db2dj.ini ファイルを使用している場合のみ必要です。 非区分データベース・システムで db2dj.ini ファイルを使用しているか、db2dj.ini ファイルを現行ノードにだけ適用する場合、次のコマンドを発行します。 db2set DB2_DJ_INI=sqllib/cfg/db2dj.ini 注: |このセクションのパス名は完全修飾名で |なければなりません。たとえば、my_home/my_instance/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.8.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.8.1.3 ステップ 3: DB2 インスタンスの再生 環境変数がプログラムに設定されていることを確実にするには、DB2 インスタンスを再生してください。インスタンスを再生すると、変更を受け入れられるよう DB2 インスタンスはリフレッシュされます。 DB2 インスタンスを再生するには、以下のコマンドを実行します。 DB2 (AIX、Solaris 操作環境、および HP-UX サーバー版) の場合 : db2stop db2start |6.8.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.8.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.8.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.8.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.8.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.8.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 です。 server_name は、CREATE SERVER ステートメントで Informix データベース・サーバーに割り当てた名前です。 remote_schema_name は、表、視点、または同義語が属するリモート・スキーマの名前です。 remote_table_name は、アクセスしたいリモートの表、視点、または同義語の名前です。 CREATE NICKNAME ステートメントの例: CREATE NICKNAME salesjapan FOR asia."salesdata"."japan" ニックネームを作成したい表または視点ごとに、このステップを繰り返してください。ニックネームが作成されると、DB2 は接続を使用してデータ・ソース・カタログを照会します。この照会によって、データ・ソースへの接続がテストされます。接続が失敗した場合、エラー・メッセージが表示されます。 CREATE NICKNAME ステートメントの詳細については、「DB2 SQL 解説書」を参照してください。一般的なニックネームの詳細、およびデータ・タイプ・マッピングの検証については、「DB2 管理の手引き」を参照してください。 管理 部分目次 管理の手引き |7.1 入手可能な更新 管理の手引き: 計画 |8.1 第 8 章 物理データベース設計 |8.1.1 表スペース設計上の考慮事項 |8.1.1.1 データが RAID 上に配置されている場合の表スペース・パフォーマンスの最適化 |8.1.2 キーの分割化 8.2 付録 D. リリース間の非互換性 |8.2.1 接続喪失検出時に SQL30081N エラーが戻されない 8.3 付録 E. 各国語サポート (NLS) |8.3.1 国別 / 地域別コードおよびコード・ページのサポート |8.3.2 インポート / エクスポート / ロードに関する 考慮事項 -- コード・ページ 1394 および 5488 の制約 |8.3.3 日時の値 |8.3.3.1 日時の値のストリング表記 |8.3.3.2 日付ストリング |8.3.3.3 タイム・ストリング |8.3.3.4 タイム・スタンプ・ストリング |8.3.3.5 文字セットに関する考慮事項 |8.3.3.6 日付および時刻フォーマット |管理の手引き : インプリメンテーション |9.1 第 8 章 データベースの回復 |9.1.1 中断入出力の使用法 |9.2 Windows 2000 以降のシステムにおける DMS コンテナーの新しい指定方式 |9.3 コントロール・センターの拡張例 |管理の手引き : パフォーマンス |10.1 システム一時表スキーマ |10.2 第 8 章 操作パフォーマンス |10.2.1 ブロック・ベースのバッファー・プール |10.2.1.1 ブロック・ベースのバッファー・プールの例 |10.3 第 10 章 プロセッサーの追加による構成の拡大縮小 |10.3.1 分割したデータベースにノードを追加する際の問題 |10.4 第 13 章 DB2 の構成 |10.4.1 ログ・アーカイブ完了チェックの頻度の増加 |10.5 DB2 レジストリーと環境変数 |10.5.1 パフォーマンス変数への修正 |10.5.2 各種レジストリー変数への修正および追加 |10.5.3 汎用レジストリー変数の修正および追加 |サテライト管理 手引きおよび解説書 |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 コントロール・センター および サテライト管理センター のアップグレード |コマンド解説書 |12.1 入手可能な更新 |12.2 db2updv7 - データベースをバージョン 7 現行修正レベルに更新 |12.3 REBIND |Missing value |12.4 db2inidb - ミラーリングされたデータベースの初期化 |12.4.1 使用法情報 |12.5 GET ROUTINE コマンドの追加オプション |GET ROUTINE |12.6 CREATE DATABASE |データ回復と高可用性の手引きと解説書 |13.1 データ回復と高可用性の手引きと解説書がオンラインで使用可能 |13.2 LOGRETAIN=CAPTURE の場合の新たなバックアップおよびリストア動作 |13.3 NEWLOGPATH2 は、DB2_NEWLOGPATH2 と呼ばれるようになりました |13.4 DB2 データ・リンク・マネージャー (AIX または Solaris 版) のバックアップ方式の選択 |13.5 Tivoli Storage Manager -- LAN フリー・データ転送 データ移動ユーティリティー 手引きおよび解説書 |14.1 エクスポート、インポート、およびロードの LOB ファイル・ハンドルの変更 |14.1.1 IXF 考慮事項 |14.2 インポート、エクスポート、およびロード・ユーティリティーに対するコード・ページ・サポート |14.3 db2relocatedb (新規コマンド) |db2relocatedb - データベースの再配置 |14.4 db2move -- 使用可能な新規オプション |db2move ツールを使用したデータの移動 14.5 第 2 章 インポート 14.5.1 バッファー挿入を行うインポートを使用 14.6 第 3 章 ロード 14.6.1 ロード操作後の保留状態 14.6.2 ロード制約事項と制限 14.6.3 totalfreespace ファイル・タイプ修飾子 14.7 第 4 章 オートローダー 14.7.1 rexecd - 認証を YES に設定している場合はオートローダーの実行に必須 14.8 fork 中にオートローダーが停止する場合があります 14.9 付録 C. エクスポート/インポート/ロード・ユーティリティー・ファイル形式 DB2 レプリケーションの手引きおよび解説書 15.1 レプリケーションおよび非 IBM サーバー 15.2 Windows 2000 上のレプリケーション |15.3 SQL ファイルの保管時に知られているエラー |15.4 DB2 保守 |15.5 Web 上の Data Difference Utility 15.6 第 3 章 データ・レプリケーション・シナリオ 15.6.1 レプリケーションのシナリオ 15.7 第 5 章 レプリケーションの計画 15.7.1 表および列名 15.7.2 DATALINK レプリケーション 15.7.3 LOB の制約事項 15.7.4 レプリケーションの計画 15.8 第 6 章 レプリケーション環境のセットアップ 15.8.1 任意の場所で更新 (Update-anywhere) の前提条件 15.8.2 レプリケーション環境のセットアップ 15.9 第 8 章 問題判別 15.10 第 9 章 キャプチャー・プログラムおよびアプライ・プログラム (AS/400 版) 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 エンコード・スキームの設定 15.12 第 11 章 キャプチャー・プログラムおよびアプライ・プログラム (UNIX 版) |15.12.1 UNIX および Windows でのキャプチャー・プログラムとアプライ・プログラムの環境変数の設定 15.13 第 14 章 表の構造 15.14 第 15 章 キャプチャー・プログラムとアプライ・プログラムのメッセージ 15.15 付録 A キャプチャー・プログラムおよびアプライ・プログラムをアプリケーション内で開始する システム・モニター 手引きおよび解説書 16.1 db2ConvMonStream 問題判別の手引き 17.1 ユーザーがログオンしていないときに DB2 を Windows 95、Windows 98、 または Windows ME で開始 |17.2 第 1 章 効果的なトラブルシューティングの手段 |17.2.1 問題分析および環境データ収集用のツール |17.2.1.1 収集データ出力 |17.2.1.2 detailed_system_info.html の表示 |17.2.1.3 DB2 サポート・ツールの構文を一時に 1 ページに表示 |17.3 第 2 章 DB2 ユニバーサル・データベース・サーバーの障害追及 |17.4 第 8 章 DB2 データ・リンク・マネージャーのトラブルシューティング 64 ビット・プラットフォームで DB2 ユニバーサル・データベースを使用する 18.1 第 5 章 構成 18.1.1 LOCKLIST 18.1.2 shmsys:shminfo_shmmax 18.2 第 6 章 制約事項 XML エクステンダー 管理およびプログラミング |MQSeries |20.1 DB2 MQSeries 関数のインストールと構成 |20.1.1 MQSeries のインストール |20.1.2 MQSeries AMI のインストール |20.1.3 DB2 MQSeries 関数を使用可能にする |20.2 MQSeries メッセージ・スタイル |20.3 メッセージ構造 |20.4 MQSeries 関数の概説 |20.4.1 制約事項 |20.4.2 エラー・コード |20.5 使用のシナリオ |20.5.1 基本メッセージング |20.5.2 メッセージの送信 |20.5.3 メッセージの取り出し |20.5.4 アプリケーション間接続 |20.5.4.1 要求/応答通信 |20.5.4.2 発行/サブスクリプション |20.6 enable_MQFunctions |enable_MQFunctions |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.1.2 キーの分割化 |「ノード・グループの設計」セクションの「ノード・グループ設計上の考慮事項」サブセクションで、 |キーの分割を定義する際の考慮点が記載されている「キーの分割化」という項目内の以下のテキストは、DB2_UPDATE_PART_KEY=ON: の場合は、削除してください。 |注: DB2_UPDATE_PART_KEY=OFF の場合には、制約事項が適用されます。 ||注: フィックスパック 3 以降では、デフォルト値は OFF になります。 |||表の中の行に対する分割化キー列の値を更新することはできません。 |分割化キー列の値は、削除または挿入することしかできません。 | 8.2 付録 D. リリース間の非互換性 |8.2.1 接続喪失検出時に SQL30081N エラーが戻されない |従来、アプリケーションでは SQL30081N エラーを検査して、データベース・サーバーへの接続 |の喪失を検出していましたが、DB2 ユニバーサル・データベースのバージョン 6 以降への移行後は、 |アプリケーションは接続の喪失を検出しません。 8.3 付録 E. 各国語サポート (NLS) |8.3.1 国別 / 地域別コードおよびコード・ページのサポート |「サポートされている言語およびコード・セット」の表において、 |コード・ページ 5488 は GB 18030 とも呼ばれ、 |コード・ページ 1394 は ShiftJIS X0213 とも呼ばれています。 |8.3.2 インポート / エクスポート / ロードに関する 考慮事項 -- コード・ページ 1394 および 5488 の制約 |コード・ページ 1394 (ShiftJIS X0213) および 5488 (GB 18030) のデータは、ロードまたは |インポート・ユーティリティーを用いてユニコード・データベースに移動できます。エクスポート・ |ユーティリティーを使用すれば、データをユニコード・データベースからコード・ページ 1394 およ |び 5488 のデータ・ファイルに移動できます。 |ユニコード・クライアントとユニコード・サーバーとの間の接続だけがサポートされているので、 |ロード、インポート、またはエクスポート・ユーティリティーを使用する前に、ユニコード・ |クライアントを使用するか、DB2 レジストリー変数を DB2CODEPAGE を 1208 に設定する必要が |あります。 |コード・ページ 1394 または 5488 からユニコードに変換すると、拡張されます。 |たとえば、2 バイト文字は 2 つの 16 ビットユニコード文字 |として GRAPHIC 列に保管されます。ユニコード・データベースのターゲット列が、 |いかなる拡張ユニコード・バイトでも収容できるだけの幅を持っていることを確認する必要があります。 |8.3.3 日時の値 |8.3.3.1 日時の値のストリング表記 | |データ・タイプが DATE、TIME、TIMESTAMP の値は、SQL ユーザーに透過的な内部形式で表されます。 |ただし、日付、時刻、およびタイム・スタンプは、ストリングでも表すことができます。 |データ・タイプが DATE、TIME、TIMESTAMP のものには定数や変数が無いので、 |これらの表記は直接 SQL ユーザーにかかわってきます。そのため、検索の際には、日時の値を |ストリング変数に割り当てなければなりません。プログラムがプリコンパイルされたりデータベース |に結合される際に DATETIME フォーマット・オプションを指定してオーバーライドされない限り、 |ストリング表記は通常、クライアントの国別 / 地域別コードに関連した日時の値の |デフォルト・フォーマットです。 |内部的な日時の値を伴う操作において、日時の値に、一般に有効なストリング表記が使用されると、 |ストリング表記は、操作が行われる前に、日付、時刻、タイム・スタンプの内部形式に変換されます。 |日時の値の有効なストリング表記の定義については、この後のセクションで説明します。 |注: 日時の値の漢字ストリング表記は、ユニコード・データベースにおいてのみサポートされています。 ||8.3.3.2 日付ストリング | |日付のストリング表記は、数字で始まって、少なくとも 8 文字の長さです。 |末尾ブランクがあっても構いません。 |日付の月および日の部分の先行ゼロは省略できます。 |「日付のストリング表記のフォーマット」の表は変更されていません。 |8.3.3.3 タイム・ストリング | |時刻のストリング表記は、数字で始まって、少なくとも 4 文字の長さです。末尾ブランクが |あっても構いません。時刻の時間部分の先行ゼロは省略できます。また、秒全体を省略する |こともできます。秒を省略すると、暗黙指定の 0 秒が想定されます。したがって、13:30 は、 |13:30:00 と同じになります。 |「時刻のストリング表記のフォーマット」の表は変更されていません。 |8.3.3.4 タイム・スタンプ・ストリング | |タイム・スタンプのストリング表記は、数字で始まって、少なくとも 16 文字の長さです。タイム・スタンプ |の完全なストリング表記は、yyyy-mm-dd-hh.mm.ss.nnnnnn というフォームです。 |末尾ブランクがあっても構いません。タイム・スタンプの月、日、時間部分の先行ゼロは |省略できます。また、マイクロ秒は、切り捨てるかまたは全体を省略することができます。マイクロ秒部分の |数字を省略すると、暗黙指定の 0 が想定されます。したがって、1991-3-2-8.30.00 は、 |1991-03-02-08.30.00.000000 と同じになります。 |8.3.3.5 文字セットに関する考慮事項 |日付およびタイム・スタンプのストリングには、文字と数字しか指定できません。 |8.3.3.6 日付および時刻フォーマット |日付および時刻フォーマットのストリング表記は、アプリケーションの国別 / 地域別コードに関連した |日時の値のデフォルト・フォーマットです。 |このデフォルト・フォーマットは、プログラムがプリコンパイルされたりデータベース |に結合される際に DATETIME フォーマット・オプションを指定してオーバーライドすることができます。 |管理の手引き : インプリメンテーション |9.1 第 8 章 データベースの回復 |9.1.1 中断入出力の使用法 | | | | | |第 8 章「データベース・リカバリー」に、中断入出力関数の使用法に関するセクションを追加、更新します。 |注: db2inidb ユーティリティーに関する下記の情報を、「バージョン 7.2 新着情報」に |記載されている情報と置き換えてください。 ||db2inidb は DB2 に添付された新しいツールで、クラッシュ・リカバリーを実行でき、また |データベースをロールフォワード保留状態にすることができます。 |中断入出力は、連続的なシステム使用可能性を、オンライン分割ミラー・ハンドリングの |フル・インプリメンテーション (つまりデータベースをシャットダウンせずにミラーを |分割) を提供することでサポートします。大きなデータベースでバックアップをオンラインまたは |オフラインにすることが難しい場合は、中断入出力と分割ミラーを使用してミラー・イメージから |バックアップまたはシステム・コピーを行うことができます。 |中断入出力は、データベースの分割ミラー・イメージが整合性のあるものであることを |確認するためにディスク書き込みを防止します。データベースが使用停止の間、 |オンライン・バックアップおよびリストア以外のすべてのデータベース操作は |通常どおり機能します。ただし、バッファー・プールまたはログ・バッファーから |ログにダーティー・ページをフラッシュしようとしてハングする操作もいくつかあります。 |通常、データベース入出力が再開してから、これらの操作を再開する必要があります。 |データベース入出力が、元々中断されていた接続と同じ接続で再開されることが重要です。 |同じ接続でないと、バッファー・プールからディスクにダーティー・ページを |フラッシュする要求を行った場合に、ハングする可能性があります。 |データベースのミラーリングは主として、データベース・ディレクトリーの |内容をすべてコピーすることです。ログ・ディレクトリーおよび表スペース・コンテナーが |データベース・ディレクトリーにない場合は、それらをコピーすることもまた必要です。 |分割ミラーリングされたデータベースはこれらのディレクトリー・パスに従属しているため、 |これらのディレクトリーのコピー先のパスは、1 次システムのディレクトリーと同じにする |必要があります。つまり、インスタンスは同じでなければなりません。 |この従属関係のため、db2inidb ツールの新規 "relocate" オプションが |使用されているのでなければ、同じシステム上のデータベースを 1 次システムとして |ミラーリングすることはできません。 |"relocate" オプションの目的は、指定された構成ファイルを使用して、 |指定のシステム上のデータベースを再配置することです。これには、内部データベース・ディレクトリー、 |コンテナー・ディレクトリー名、ログ・ディレクトリーの変更、 |インスタンス名の変更、およびデータベース名の変更が関係します。 |データベース・ディレクトリー、コンテナー・ディレクトリー、および |ログ・ディレクトリーが、同じシステム上の異なるディレクトリー・パスに |1 次データベースとして正常にミラーリングされたと想定すると、 |db2inidb ツールを "relocate" オプションと一緒に使用して、 |ミラーリングされたデータベースの内部パスを変更することができます。 |このオプションの使用法は以下の通りです。 |ストレージ装置のミラーリングの度合いによって、db2inidb の使用法は変わります。 |以下の使用法では、データベース全体がストレージ・システムを通じて一貫してミラーリングされていることを |想定しています。 |マルチノード環境で、いずれかの区分から分割イメージを使用できるようにするには、 |db2inidb ツールを区分それぞれで実行する必要があります。 |db2inidb ツールは、すべての区分で同時に実行することができます。 | ||レプリケーション・データベースを作成する |この目的は、1 次データベースの |レプリケーションを読み取りに使用することです。 |レプリケーション・データベースの作成手順は以下の通りです。 |次のコマンドを入力して、1 次データベースで入出力書き込みを中断します。 | db2 set write suspend for database |オペレーティング・システム・レベル・コマンドを使用して、1 次データベースからミラーを分割します。 |次のコマンドを入力して、1 次データベースで入出力書き込みを再開します。 | db2 set write resume for database |コマンドの実行後、1 次データベースは正常な状態に戻るはずです。 |データベースの分割ミラーを別のシステムからマウントします。 |次のコマンドを入力して、データベース・インスタンスを開始します。 | db2start |次のコマンドを入力して、DB2 クラッシュ・リカバリーを開始します。 |db2inidb database_name AS SNAPSHOT | |注: このコマンドは、中断書き込み状態を除去し、 |分割時に未了であったトランザクションによる変更をロールバックします。 |||この処理はオフライン・バックアップにも使用することができますが、 |1 次データベースにリストアする場合、ログ・チェーンが一致しないために、このバックアップを |ロールフォワードに使用することはできません。 | |分割ミラーをスタンバイ・データベースとして使用する |ミラーリングされた (スタンバイ・) データベースは |ログを通じて絶えずロールフォワードするため、1 次データベースで作成される新しいログは、 |1 次システムから絶えずフェッチされます。分割ミラーをスタンバイ・データベースとして使用する |方法は以下の通りです。 |1 次データベース上での入出力書き込みを中断します。 | db2 set write suspend for database |オペレーティング・システム・レベル・コマンドを使用して、1 次データベースからミラーを分割します。 |1 次データベースで入出力書き込みを再開し、1 次データベースが正常処理に戻るようにします。 | db2 set write resume for database |データベースの分割ミラーを別のシステムにマウントします。 |ミラーをロールフォワード保留状態にして、ミラーをロールフォワードします。 | db2inidb database_name AS STANDBY | |注: このコマンドは、中断書き込み状態を除去し、ミラーリングされたデータベースをロールフォワード保留状態にします。 ||ユーザー出口プログラムをセットアップしてログをコピーし、1 次システムから |ログ・ファイルを検索します。これにより、このミラーリングされたデータベースで |最新ログを使用できるようにします。 |データベースをログの終わりまでロールフォワードします。 |ステップ f に戻り、1 次データベースがダウンするまでこのプロセスを繰り返します。 || |分割ミラーをバックアップ・イメージとして使用する |ミラーリングされたデータベースを 1 次データベースに対して |リストアするためのバックアップ・イメージとして使用する方法は、以下の通りです。 ||オペレーティング・システム・コマンドを使用してミラーリングされたデータとログを |1 次データベースの最上部にコピーします。 |次のコマンドを入力して、データベース・インスタンスを開始します。 | db2start |次のコマンドを実行して、ミラーリングされたデータベースをロールフォワード保留状態にし、 |書き込み中断状態を除去します。 |db2inidb database_name AS MIRROR |データベースをログの終わりまでロールフォワードします。 || |ミラーを同じシステムに 1 次データベースとして分割する |db2inidb ツールの "relocate" オプションを使用して、データベースを |同じシステムに 1 次データベースとしてミラーリングする方法は、以下の通りです。 |この例では、データベースが新規インスタンスの下で使用されることを想定しています。 ||新規インスタンスを現行システムに作成します。 |1 次データベース上での入出力書き込みを中断します。 | db2 set write suspend for database |オペレーティング・システム・レベル・コマンドを使用して、1 次データベースからミラーを分割します。 |注: データベース・ディレクトリー、コンテナー・ディレクトリー、および |ログ・ディレクトリーが、別々のディレクトリーにコピーされるはずです。 |コンテナー・ディレクトリーまたはログ・ディレクトリーがデータベース・ディレクトリーの下に |存在する場合は、データベース・ディレクトリーのみがコピーされます。 ||1 次データベースで入出力書き込みを再開し、1 次データベースが正常処理に戻るようにします。 | db2 set write resume for database |以下の情報より、構成ファイルを作成します。 | DB_NAME=, | DB_PATH=, | INSTANCE=, | LOG_DIR=, | CONT_PATH=, | ... | CONT_PATH=, | | NODENUM= | |注: LOG_DIR および CONT_PATH フィールドは、ログ・ディレクトリーまたは |コンテナー・ディレクトリーがデータベース・ディレクトリーの外に存在する場合にのみ必要です。 |指定されない場合のデフォルトがゼロである NODENUM の除いて、 |その他のフィールドはすべて必須です。 ||新規に作成したインスタンスからデータベースを開始します。 | db2start |ミラーリングされたデータベースを再配置し、中断状況を除去し、 |ロールフォワード保留状態のミラーを配置します。 | db2inidb database_name as STANDBY relocate using config_file |ユーザー出口プログラムをセットアップしてログをコピーし、1 次データベースから |ログ・ファイルを検索します。これにより、このミラーリングされたデータベースで |最新ログを使用できるようにします。 |データベースをログの終わりまでロールフォワードします。 |ステップ h に戻り、1 次データベースがダウンするまでこのプロセスを繰り返します。 || |9.2 Windows 2000 以降のシステムにおける DMS コンテナーの新しい指定方式 |DB2 は、Windows 2000 以降のシステムでは、DMS ロー表スペース・コンテナーを指定する際に |新しいメソッドを使用するようになりました。各基本ディスク区画またはダイナミック・ボリュームには、 |作成時にグローバル固有 ID (GUID) が割り当てられます。 |この GUID は、表スペース定義でコンテナーを指定する際に、装置 IDとして使用することができます。 |GUID はシステムを通して固有であるため、ディスク区画定義が同じであっても、マルチノード構成で |各ノードごとに固有の GUID をもっています。 |Windows システムで定義されているすべてのディスク・ボリュームの GUID を表示する際に |役立つ、db2listvolumes.exe というツールが提供されています。 |このツールは、ツールが実行されている現行ディレクトリーに 2 つのファイルを作成します。 |一方のファイル、volumes.xml には、各ディスク・ボリューム |に関する情報が含まれています。これは、XML が使用可能なブラウザーで容易に見えるように |設計されています。もう一方のファイル、tablespace.ddl には、 |表スペース・コンテナーの指定に必要な構文が含まれています。 |tablespace.ddl を使用する前に、表スペース定義に必要な |残りの情報も反映されるように、このファイルを更新する必要があります。 |db2listvolumes ツールでは、コマンド行引き数は必要ありません。 |9.3 コントロール・センターの拡張例 |付録「コントロール・センターの拡張」に記載されている例は正しくなく、役に立ちません。 |Java の例を使用する場合は、代わりに以下の情報を使用してください。 |サンプル・プログラム PluginEx.java は samples/java サブディレクトリーにあります。PluginEx.java は、DB2アプリケーション開発 |クライアントと共にインストールされます。PluginEx.java をコンパイルする場合には、 |classpath に以下の指定が必要です。 ||Windows プラットフォームを使用している場合: ||DRIVE: \sqllib\java\swingall.jar |DRIVE: \sqllib\cc ||DRIVE は、DB2 がインストールされているドライブを表します。 |UNIX プラットフォームを使用している場合: ||/u/db2inst1/sqllib/java/swingall.jar |/u/db2inst1/sqllib/cc/com.jar |/u/db2inst1/sqllib/cc ||/u/db2inst1 は、DB2 がインストールされているディレクトリーを表します。 ||PluginEx.java のコンパイルで生成されたすべてのクラスが組み込まれるように、db2plug.zip を |作成します。ファイルを圧縮してはなりません。たとえば、以下のようなコマンドを実行します。 | zip -r0 db2plug.zip PluginEx*.class |このコマンドは、すべてのクラス・ファイルを db2plug.zip ファイルに入れ、相対パス情報を |維持します。 |PluginEx.java ファイルの説明に従って例をコンパイルし、実行します。 |CCObject インターフェースには、管理の手引きの付録「コントロール・センターの拡張」にリスト |されているものよりも多くの静的定数が組み込まれています。 |以下に、コントロール・センターを拡張するための Java インターフェース (CCExtension、 |CCObject、CCM enuAction、CCToolBarAction) を示します。これらのインターフェースは、 |単に参照用としてここにリストされています。 |CCExtension: |// Licensed Materials -- Property of IBM |// |// (c) Copyright International Business Machines Corporation, 1999. |// All Rights Reserved. |// |// US Government Users Restricted Rights - |// Use, duplication or disclosure restricted by |// GSA ADP Schedule Contract with IBM Corp. |// | |package com.ibm.db2.tools.cc.navigator; | |/** | * The CCExtension interface allows users to extend the Control Center user | * interface by adding new toolbar buttons, new menu items and | * remove some predefined set of existing menu actions. | * | * To do so, create a java file which imports the | * com.ibm.db2.tools.cc.navigator package and implements this interface. | * The new file provides the implementation of the getObjects() and | * getToolbarActions() function. | * | * The getObjects() function returns an array of CCObjects which defines | * the existing | * objects which the user would like to add new menu actions or remove | * the alter or configure menu actions. | * | * The getToolbarActions() function returns an array of CCToolbarActions | * which is added to the Control Center main toolbar. | * | * A single CCExtension subclass file or multiple CCExtension subclass | * files can be used to define the Control Center extensions. In order | * for the Control Center to make use of these extensions, use the | * following setup procedures: | * (1) Create a "db2plug.zip" file which contains all the CCExtension | * subclass files. The files should not be compressed. For example, | * if the CCExtension files are in the plugin package and they are | * located in the plugin directory, issue | * zip -r0 db2plug.zip plugin\*.class | * This command will put all the plugin package class files into the | * db2plug.zip file and preserve their relative path information. | * (2) To run WEBCC as an applet, put the db2plug.zip file in where the | * tag points to in the WEBCC html file. | * To run the Control Center as an application, put | * the db2plug.zip in a directory pointed to by the CLASSPATH | * envirnoment variable and where the Control Center is run. | * | * For browsers that support multiple archives, just add "db2plug.zip" | * to the archive list of the WEBCC html page. Otherwise, all the | * CCExtension, CCObject, CCToolbarAction, CCMenuAction subclass files | * will have to be in their relative path depending on which package | * they belong to. | */ | |public interface CCExtension |{ | /** | * Get an array of CCObject subclass objects which define | * a list of objects to be overrided in the | * Control Center | * @return CCObject[] CCObject subclass objects array | */ | public CCObject[] getObjects(); | | /** | * Get an array of CCToolbarAction subclass objects which represent | * a list of buttons to be added to the Control Center | * main toolbar. | * @return CCToolbarAction[] CCToolbarAction subclass objects array | */ | public CCToolbarAction[] getToolbarActions(); |} | | |CCObject |CCObject: |// |// Licensed Materials -- Property of IBM |// |// (c) Copyright International Business Machines Corporation, 1999. |// All Rights Reserved. |// |// US Government Users Restricted Rights - |// Use, duplication or disclosure restricted by |// GSA ADP Schedule Contract with IBM Corp. |// | |package com.ibm.db2.tools.cc.navigator; | |/** | * The CCObject interface allows users to define a new object to be | * inserted into the Control Center tree or changing the behavior of the | * menu actions of an existing object. | */ |public interface CCObject |{ | /** | * The following static constants defines a list of object type | * available to be added to the Control Center tree. | */ | public static final int UDB_SYSTEMS_FOLDER = 0; | public static final int UDB_SYSTEM = 1; | public static final int UDB_INSTANCES_FOLDER = 2; | public static final int UDB_INSTANCE = 3; | public static final int UDB_DATABASES_FOLDER = 4; | public static final int UDB_DATABASE = 5; | public static final int UDB_TABLES_FOLDER = 6; | public static final int UDB_TABLE = 7; | public static final int UDB_TABLESPACES_FOLDER = 8; | public static final int UDB_TABLESPACE = 9; | public static final int UDB_VIEWS_FOLDER = 10; | public static final int UDB_VIEW = 11; | public static final int UDB_ALIASES_FOLDER = 12; | public static final int UDB_ALIAS = 13; | public static final int UDB_TRIGGERS_FOLDER = 14; | public static final int UDB_TRIGGER = 15; | public static final int UDB_SCHEMAS_FOLDER = 16; | public static final int UDB_SCHEMA = 17; | public static final int UDB_INDEXES_FOLDER = 18; | public static final int UDB_INDEX = 19; | public static final int UDB_CONNECTIONS_FOLDER = 20; | public static final int UDB_CONNECTION = 21; | public static final int UDB_REPLICATION_SOURCES_FOLDER = 22; | public static final int UDB_REPLICATION_SOURCE = 23; | public static final int UDB_REPLICATION_SUBSCRIPTIONS_FOLDER = 24; | public static final int UDB_REPLICATION_SUBSCRIPTION = 25; | public static final int UDB_BUFFERPOOLS_FOLDER = 26; | public static final int UDB_BUFFERPOOL = 27; | public static final int UDB_APPLICATION_OBJECTS_FOLDER = 28; | public static final int UDB_USER_DEFINED_DISTINCT_DATATYPES_FOLDER = 29; | public static final int UDB_USER_DEFINED_DISTINCT_DATATYPE = 30; | public static final int UDB_USER_DEFINED_DISTINCT_FUNCTIONS_FOLDER = 31; | public static final int UDB_USER_DEFINED_DISTINCT_FUNCTION = 32; | public static final int UDB_PACKAGES_FOLDER = 33; | public static final int UDB_PACKAGE = 34; | public static final int UDB_STORE_PROCEDURES_FOLDER = 35; | public static final int UDB_STORE_PROCEDURE = 36; | public static final int UDB_USER_AND_GROUP_OBJECTS_FOLDER = 37; | public static final int UDB_DB_USERS_FOLDER = 38; | public static final int UDB_DB_USER = 39; | public static final int UDB_DB_GROUPS_FOLDER = 40; | public static final int UDB_DB_GROUP = 41; | public static final int UDB_DRDA_TABLES_FOLDER = 42; | public static final int UDB_DRDA_TABLE = 43; | public static final int UDB_NODEGROUPS_FOLDER = 44; | public static final int UDB_NODEGROUP = 45; | | public static final int S390_SUBSYSTEMS_FOLDER = 46; | public static final int S390_SUBSYSTEM = 47; | public static final int S390_BUFFERPOOLS_FOLDER = 48; | public static final int S390_BUFFERPOOL = 49; | public static final int S390_VIEWS_FOLDER = 50; | public static final int S390_VIEW = 51; | public static final int S390_DATABASES_FOLDER = 52; | public static final int S390_DATABASE = 53; | public static final int S390_TABLESPACES_FOLDER = 54; | public static final int S390_TABLESPACE = 55; | public static final int S390_TABLES_FOLDER = 56; | public static final int S390_TABLE = 57; | public static final int S390_INDEXS_FOLDER = 58; | public static final int S390_INDEX = 59; | public static final int S390_STORAGE_GROUPS_FOLDER = 60; | public static final int S390_STORAGE_GROUP = 61; | public static final int S390_ALIASES_FOLDER = 62; | public static final int S390_ALIAS = 63; | public static final int S390_SYNONYMS_FOLDER = 64; | public static final int S390_SYNONYM = 65; | public static final int S390_APPLICATION_OBJECTS_FOLDER = 66; | public static final int S390_COLLECTIONS_FOLDER = 67; | public static final int S390_COLLECTION = 68; | public static final int S390_PACKAGES_FOLDER = 69; | public static final int S390_PACKAGE = 70; | public static final int S390_PLANS_FOLDER = 71; | public static final int S390_PLAN = 72; | public static final int S390_PROCEDURES_FOLDER = 73; | public static final int S390_PROCEDURE = 74; | public static final int S390_DB_USERS_FOLDER = 75; | public static final int S390_DB_USER = 76; | public static final int S390_LOCATIONS_FOLDER = 77; | public static final int S390_LOCATION = 78; | public static final int S390_DISTINCT_TYPES_FOLDER = 79; | public static final int S390_DISTINCT_TYPE = 80; | public static final int S390_USER_DEFINED_FUNCTIONS_FOLDER = 81; | public static final int S390_USER_DEFINED_FUNCTION = 82; | public static final int S390_TRIGGERS_FOLDER = 83; | public static final int S390_TRIGGER = 84; | public static final int S390_SCHEMAS_FOLDER = 85; | public static final int S390_SCHEMA = 86; | public static final int S390_CATALOG_TABLES_FOLDER = 87; | public static final int S390_CATALOG_TABLE = 88; | public static final int DCS_GATEWAY_CONNECTIONS_FOLDER = 89; | public static final int DCS_GATEWAY_CONNECTION = 90; | public static final int S390_UTILITY_OBJECTS_FOLDER = 91; | public static final int S390_DATASET_TEMPLATES_FOLDER = 92; | public static final int S390_DATASET_TEMPLATE = 93; | public static final int S390_UTILITY_LISTS_FOLDER = 94; | public static final int S390_UTILITY_LIST = 95; | public static final int S390_UTILITY_PROCEDURES_FOLDER = 96; | public static final int S390_UTILITY_PROCEDURE = 97; | /** | * Total number of object types | */ | public static final int NUM_OBJECT_TYPES = 98; | | /** | * Get the name of these object | * | * The function returns the name of this object. This name | * can be of three types: | * (1) Fully qualified name | * Syntax: xxxxx-yyyyy-zzzzz | * where xxxxx-yyyyy is the fully quality name of the parent | * object and zzzzz is the name of the new object. | * Note: Parent and child object name is separated by '-' character. | * If a schema name is required to identify object, the fully | * qualified name is represented by xxxxx-yyyyy-wwwww.zzzzz | * where wwwww is the schema name. | * Only the behavior of the object that match this fully | * quality name will be affected. | * (2) Parent fully qualified name | * Syntax: xxxxx-yyyyy | * where xxxxx-yyyyy is the fully qualified name of the | * parent object. | * When the object type is folder (ie. DATABASES_FOLDER), the | * getName() should only return the fully qualified name of the | * folder's parent. | * Only the behavior of the object that match this name | * and the specific type return by the getType() function will be | * affected. | * (3) null | * Syntax: null | * If null is return, the CCMenuActions returns by the | * getMenuActions() call will be applied to all objects of type | * returns by the getType() call. | * @return String object name | */ | public String getName(); | | /** | * Get the type of this object | * @return int return one of the static type constants defined in this | * interface | */ | public int getType(); | | /** | * Get the CCMenu Action array which defines the list of menu actions | * to be created for object | * return CCMenuAction[] CCMenuAction array | */ | public CCMenuAction[] getMenuActions(); | | /** | * Check if this object is editable. If not, the Alter related menu | * items will be removed from the object's popup menu | * return boolean If false, the Alter menu item will be remove from the | * object's popup menu. | * Return true if you do not wish to modify current Alter menu item | * behaviour. | */ | public boolean isEditable(); | | /** | * Check if this object is configurable. If not, the configuration | * related menu items will be removed from the object's popup menu | * return boolean If false, the Configuration related menu item will be | * removed from the object's popup menu. | * Return true if you do not wish to modify current Configuration | * behaviour. | */ | public boolean isConfigurable(); |} | | | |CCMenuAction: |// |// Licensed Materials -- Property of IBM |// |// (c) Copyright International Business Machines Corporation, 1999. |// All Rights Reserved. |// |// US Government Users Restricted Rights - |// Use, duplication or disclosure restricted by |// GSA ADP Schedule Contract with IBM Corp. |// | |package com.ibm.db2.tools.cc.navigator; |import java.awt.event.*; |import javax.swing.*; | |/** | * The CCMenuAction class allows users to define a new menu item to be added | * to a Control Center object. The new menu item will be added at the end of | * an object's popup menu. | * | * Note: If the object has a Control Center Refresh and/or | * Filter menu item, the new menu item will be inserted before the Refresh | * and Filter menu. The Control Center Refresh and Filter menu items are | * always at the end of the popup menu. | */ |public interface CCMenuAction |{ | /** | * Get the name of this action | * @return String Name text on the menu item | */ | public String getMenuText(); | | /** | * Invoked when an action occurs. | * @param e Action event | */ | public void actionPerformed(ActionEvent e); |} | | | |CCToolBarAction |// Licensed Materials -- Property of IBM |// |// (c) Copyright International Business Machines Corporation, 1999. |// All Rights Reserved. |// |// US Government Users Restricted Rights - |// Use, duplication or disclosure restricted by |// GSA ADP Schedule Contract with IBM Corp. |// | |package com.ibm.db2.tools.cc.navigator; |import java.awt.event.*; |import javax.swing.*; | |/** | * The CCToolbarAction interface class allows users to define a new action | * to be added to the Control Center toolbar. | */ |public interface CCToolbarAction |{ | /** | * Get the name of this action | * @return String Name text on the menu item, or toolbar button hover help | */ | public String getHoverHelpText(); | | /** | * Get the icon for the toolbar button | * Any toolbar CCAction should override this function and return | * a valid ImageIcon object. Otherwise, the button will have no icon. | * @return ImageIcon Icon to be displayed | */ | public ImageIcon getIcon(); | | /** | * Invoked when an action occurs. | * @param e Action event | */ | public void actionPerformed(ActionEvent e); |} | |管理の手引き : パフォーマンス |10.1 システム一時表スキーマ |システム一時表のスキーマは、それを作成したアプリケーションおよび |許可 ID によって決定されます。このデータが使用可能な場合、表が作成された |スキーマは、 です。場合によっては、 |スキーマを決定するためにこれらの ID の一方だけを使用して表が作成されることもあり、 |時にはまったく使用しない場合もあります。これによって、AUTHID.TEMPTABLENAME また |は .TEMPTABLENAME のような表が作成されます。GET SNAPSHOT コマンドを使用すれば、 |これらの表のスキーマ情報を表示できます。このコマンドの詳細に関しては コマンド解説書 を |参照してください。 |10.2 第 8 章 操作パフォーマンス |10.2.1 ブロック・ベースのバッファー・プール | | | | | |このフィーチャーは、Sun Solaris 操作環境でのみサポートされています。 |入出力のオーバーヘッドのために、ページをディスクからプリフェッチすることは、 |費用のかかる操作です。DB2 のプリフェッチは、処理を入出力とオーバーラップできる場合に、 |スループットを大幅に改善します。大半のプラットフォームは、 |連続するページをディスクから不連続なメモリーの部分に読み取るための高性能なプリミティブを |備えています。これらのプリミティブは通常、"分散読み取り"または"ベクトル I/O"と呼ばれます。プラットフォームによっては、これらのプリミティブのパフォーマンスは、 |大きなブロック・サイズでの入出力とは比較にならない場合があります。 |デフォルトでは、バッファー・プールは、ページ・ベースです。つまり、ディスク上の連続するページは、メモリー内の |不連続のページにプリフェッチされます。ページをディスクからバッファー・プールの連続する |ページに読み取ることができれば、プリフェッチのパフォーマンスは、これらのプラットフォーム上で |さらに改善します。レジストリー変数 DB2_BLOCK_BASED_BP を使用すれば、 |一連の連続するページを保持するバッファー・プールにセクションを作成できます。 |これらの一連の連続するページは、"ブロック"と呼ばれます。このレジストリー変数を |設定すれば、順次プリフェッチは、各ページを個別に読み込むのではなく、 |ページをディスクから直接、これらのブロックに読み込みます。これによって入出力のパフォーマンス |が改善されます。このレジストリー変数について詳しくは 管理の手引き の「レジストリーおよび環境変数」 |のセクションを参照してください。 | |エクステント・サイズの異なる複数の表スペースをブロック・サイズが同じバッファー・プールに |結合することができます。エクステント・サイズとブロック・サイズは、別個の概念を扱うにも |かかわらず、両者の間には密接な関係があります。 エクステントとは、表スペースが複数のコンテナー |にわたってストライプされる細分度です。 |ブロックとは、順次プリフェッチ要求を実行する入出力サーバーが、ブロック・ベースの入出力 |の実行を考慮する唯一の細分度です。 |個々の順次プリフェッチ要求は、エクステント・サイズ・ページを使用します。そのような |プリフェッチ要求を受け取ると、入出力サーバーは、各要求を分散読み取り方式を用いたページ・ |ベースの入出力ではなく、ブロック・ベースの入出力として実行する場合のコストおよび利点を判別 |します (バッファー・プールにブロック・ベースの領域がある場合)。 |あらゆる入出力をブロック・ベースの入出力として実行する利点は、 |連続するディスクから連続するメモリーに読み込む |ことによるパフォーマンス上の利点にあります。 |コストは、この方式の使用により無駄になる |バッファー・プール・メモリーの量です。 |ブロック・ベースの入出力を実行する場合は、次の 2 つの理由により、 |バッファー・プール・メモリーが無駄になる可能性があります。 ||プリフェッチ要求に含まれるページ数は、ブロック内のページ数より少ない。つまり、エクステント・サイズがブロック・サイズより小さい。 |プリフェッチ要求の一部として要求されるページの一部は、 |すでにバッファー・プールのページ域にある。 ||注: バッファー・プールのブロック・ベースの領域における各ブロックを |さらに分割することはできません。ブロック内のページは、すべて隣接している必要があります。その結果、 |スペースが無駄になる可能性があります。 ||入出力サーバーは、ブロック・ベースの入出力を実行する利点を得るために、各ブロック内に多少の |無駄なページを見越しています。しかし、あまりに多くのブロックが無駄になる場合は、 |入出力サーバーは、バッファー・プールのページ域にページ・ベースでプリフェッチする方式に |戻ります。その結果、プリフェッチ中に行われた入出力の一部は、 |ブロック・ベースではありません。これは最適な状態ではありません。 |最適なパフォーマンスのためには、エクステント・サイズが同じ表スペースを |ブロック・サイズが同じバッファー・プールに結合する必要があります。良いパフォーマンスは、 |一部の表スペースのエクステント・サイズが結合先のバッファー・プールのブロック・サイズより大き |い場合でも、達成できます。エクステント・サイズがブロック・サイズより小さい場合は、 |表スペースのバインドはお勧めしません。 |注: バッファー・プールのブロック域は、順次プリフェッチにのみ |使用されます。 使用中のシステム上に関係する順次プリフェッチがほとんど、またはまったく |存在しない場合は、ブロック域は、バッファー・プールの無駄な部分になります。 |AWE とブロック・ベースのサポートの両方を同時にバッファー・プールのセットアップとすることは |できません。DB2_AWE および DB2_BLOCK_BASED_BP レジストリー変数の両方が同じバッファー・プールを |参照する場合は、AWE に優先順位が与えられます。ブロック・ベースのサポートは、この場合、 |使用不可になり、AWE が使用不可になった場合にのみ再び使用できるようになります。 |拡張記憶域を使用するバッファー・プールは、ブロック・ベースの入出力を |サポートしていません。 ||10.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 |10.3 第 10 章 プロセッサーの追加による構成の拡大縮小 |10.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 ステートメントなどを実行する前に実行します。 |10.4 第 13 章 DB2 の構成 |10.4.1 ログ・アーカイブ完了チェックの頻度の増加 |不要なログ・アーカイブ要求を回避することによってリカバリー時間を短縮するために、 |新規ログ・ファイルの作成時と最初のアクティブ・ログの変更時に、 |データベース・サーバーがログ・アーカイブの完了をチェックするようになりました。 |10.5 DB2 レジストリーと環境変数 |10.5.1 パフォーマンス変数への修正 | |表 5. パフォーマンス変数 変数名 オペレーティング・システム 値 説明 DB2_BINSORT すべて デフォルト=NO 値: YES または NO ソートの CPU 時間および経過時間を短縮する新しいソート・アルゴリズムを使用可能にします。この新しいアルゴリズムは、DB2 UDB の非常に効率的なソート技法を、BIGINT、CHAR、VARCHAR、 FLOAT、および DECIMAL などのすべてのソート・データ・タイプおよびこれらのデータ・タイプの組み合わせにも使用できるように拡張します。この新しいアルゴリズムを使用可能にするには、以下のコマンドを使用します。 db2set DB2_BINSORT = yes 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 の倍数でない場合は、最も近いブロック・サイズ境界に削減されます。ブロック・ベースの入出力について詳しくは 10.2.1, ブロック・ベースのバッファー・プール を参照してください。 DB2_NO_FORK_CHECK UNIX デフォルト=OFF 値: ON または OFF この変数が "ON" の場合、クライアント・プロセスは、アプリケーションが実行プロセスをコピーする (fork する) のを防止しません。fork が行われると、結果は予測できません。結果に影響がない場合もあれば、悪い結果を導いたり、エラー・コードが戻されたり、アプリケーションでトラップが生じたりする可能性もあります。アプリケーションが fork しないと確信しており、パフォーマンスをより向上させたい場合に、この変数を "ON" に変更するようにしてください。 DB2_MINIMIZE_LIST_PREFETCH すべて デフォルト=NO 値: YES または NO List Prefetch は、該当する RID を索引から検索し、それをページ番号によってソートし、そしてデータ・ページをプリフェッチする、特殊な表アクセス方式です。 最適化プログラムは、List Prefetch が適切なアクセス方式であるかどうか判別するための正確な情報を持っていないことがあります。これは、述部の選択性に、最適化プログラムが選択性を判断するためにカタログ統計を使用することを妨げる、パラメーター・マーカーやホスト変数が含まれている場合に起こる可能性があります。 このレジストリー変数は、最適化プログラムがこのような状態で List Prefetch を考慮しないようにします。 DB2_INLIST_TO_NLJN すべて デフォルト=NO 値: YES または NO SQL コンパイラーが IN リスト述部を結合 (join) に書き換えることができる場合があります。たとえば、以下のような照会があるとします。 SELECT * FROM EMPLOYEE WHERE DEPTNO IN ('D11', 'D21', 'E21') これを、以下のように書くことができます。 SELECT * FROM EMPLOYEE, (VALUES 'D11', 'D21', 'E21) AS V(DNO) WHERE DEPTNO = V.DNO この改訂は、DEPTNO に索引がある場合に、パフォーマンスが向上します。値のリストが最初にアクセスされ、索引を使用してネスト・ループ結合 (join) で EMPLOYEE に結合 (join) されて、結合 (join) 述部に適用されます。 最適化プログラムは、書き換えられたバージョンの照会に最適な結合 (join) 方式を判別するための正確な情報を持っていないことがあります。これは、IN リストに、最適化プログラムが選択性を判断するためにカタログ統計を使用することを妨げる、パラメーター・マーカーやホスト変数が含まれている場合に起こる可能性があります。このレジストリー変数によって、最適化プログラムは、IN リストに役立つ表を結合 (join) の内部表として使用して、値のリストを結合 (join) する際にネスト・ループ結合 (join) を使用するようになります。 |10.5.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 に設定し、不良アプリケーションにより作成されたログ・レコードによってバックアップ・システムが壊されないようにします。 |10.5.3 汎用レジストリー変数の修正および追加 | | |新規変数、DB2_REDUCED_OPTIMIZATION が導入されました。 | |表 7. 汎用レジストリー変数 変数名 オペレーティング・システム 値 説明 DB2_REDUCED_OPTIMIZATION すべて デフォルト=NO 値: YES、NO、または整数 レジストリー変数により、特定の最適化レベルで使用される最適化手法をいくつか使用不可にします。使用する最適化手法の数を減らすと、最適化を行うのに使用する時間とリソースも削減されます。 注: 最適化にかかる時間とリソースの使用が削減されても、最適化とは言えないデータ・アクセス・プランを生み出すリスクは増します。 「NO」に設定した場合 最適化プログラムは最適化手法を変更しません。 「YES」に設定した場合 最適化レベルがデフォルトの 5 またはそれ以下の場合、最適化プログラムは、かなりの準備時間とリソースを消費する可能性のある最適化手法をいくつか使用不可にしますが、通常はより優れたアクセス・プランを生成することはありません。 最適化レベルを正確に 5 にすると、最適化プログラムは、いくつかの追加の手法を削減したり使用不可にしたりし、最適化にかかる時間とリソースの使用をさらに削減しますが、一方、最適化とは言えないデータ・アクセス・プランを生み出すリスクは増します。 5 より低い最適化レベルの場合、これらの手法のいくつかは、効果がなくなる可能性があります。その場合でも、実施されます。 任意の整数に設定した場合 値を「YES」に設定した場合と影響は同じです。最適化レベル 5 に動的に準備された照会動作に、次に述べる動作が追加されます。照会ブロック内の結合の合計数が設定値を超えると、最適化プログラムは、上記の最適化レベル 5 で説明したように追加の最適化手法を使用不可にする代わりに、貪欲型結合列挙に切り替えます。つまり、照会は、最適化レベル 2 と同様の最適化となります。 貪欲型結合列挙および動的結合列挙に関する情報については、 管理の手引き: Performance の「最適結合を選択するための検索方式」を参照してください。 最適化レベル 5 の動的最適化縮小は、管理者の手引き: パフォーマンスの「最適化クラス」に説明があるように、 DB2_REDUCED_OPTIMIZATION が整数に設定された場合の動作と同様に、「YES」に設定され、最適化レベル 5 の場合の動作よりも優先順位が高くなります。 |サテライト管理 手引きおよび解説書 |11.1 バージョン 7.2 DB2 パーソナル・エディションおよび DB2 ワークグループ・エディションを サテライトとしてセットアップ | | | | | | |以下のセクションでは、Windows ベースのバージョン 7.2 DB2 パーソナル・エディション |および DB2 ワークグループ・エディション・システムを、サテライト環境で |完全機能サテライトとして使用できるようにセットアップする方法について説明します。 |以下の情報の中で使用されている用語と概念については、サテライト管理 手引きおよび解説書 を |参照してください。このブックは、下記の URL にあります。 |http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/v6pubs.d2w/en_main |サテライト管理 手引きおよび解説書 の情報を補足する Technotes は、 |URL: http://www.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/ を参照してください。 |11.1.1 前提条件 | | | | |DB2 パーソナル・エディションまたは DB2 ワークグループ・エディションを |サテライトとしてセットアップするには、次のものが必要です。 |DB2 制御サーバー |DB2 制御サーバーとは、Windows NT または AIX 上で |実行される DB2 エンタープライズ・エディション・システムのことで、 |制御サーバー・コンポーネントがインストールされています。 |使用する DB2 エンタープライズ・エディション・システムは、フィックスパック 2 以上 |付きバージョン 6、またはバージョン 7 (フィックスパック・レベルは任意) です。 |DB2 制御サーバーとして使用したいバージョン 6 エンタープライズ・エディション・ |システムがある場合は、11.1.3, エンタープライズ・エディション・システムでのフィックスパック 2 以上の インストール を参照してください。 |バージョン 7 を持っているが、制御サーバー・コンポーネントをインストールして |いない場合は、このコンポーネントをインストールし、すでにインストールされている |フィックスパックを再インストールして、DB2 制御サーバー・インスタンスと |サテライト制御データベースを作成します。これらのオブジェクトの作成手順については、 |サテライト管理 手引きおよび解説書 を参照してください。 || | | |注: バージョン 7.2 のエンタープライズ・エディション・システムを DB2 制御サーバーとして |使用するために Windows NT にインストールする場合、応答ファイル・インストールを |実行したいときは、応答ファイルに指定するキーワードについて、 |「DB2 制御サーバーの応答ファイルのキーワード」 |という Technote を参照してください。 ||DB2 制御サーバー・インスタンスとサテライト制御データベース |DB2 制御サーバー・インスタンスは一般に DB2CTLSV という名前で、サテライト制御 |データベースは SATCTLDB という名前です。DB2 制御サーバー・インスタンスと |サテライト制御データベースは、エンタープライズ・エディション・システム上にあり、 |Windows NT に制御サーバー・コンポーネントとともに DB2 をインストールすると自動的に |作成されます。AIX 上に DB2 をインストールする場合は、DB2 制御サーバー・インスタンスと |サテライト制御データベースの作成方法について、サテライト管理 手引きおよび解説書 を参照してください。 |サテライト管理センター |サテライト管理センター は、サテライト環境をセットアップおよび管理するために |使用する GUI ツールのセットです。このツールのセットには コントロール・センター からアクセス |します。サテライト管理センター とサテライト環境の詳細について詳しくは、サテライト管理 手引きおよび解説書、 |および サテライト管理センター から入手できるオンライン・ヘルプを参照してください。 |バージョン 6 の コントロール・センター を実行する場合は、11.1.4, バージョン 6 コントロール・センター および サテライト管理センター のアップグレード を参照して |ください。 |サテライト管理センター を使用してサテライト環境をまだセットアップしておらず、 |サテライト管理センター で新しいサテライトを表すオブジェクトを作成していない場合は、 |サテライトをインストールする前にまずこれらを終えておきます。詳しくは、 |サテライト管理 手引きおよび解説書 にあるサテライト環境のセットアップとテストの方法に関する |説明を参照してください。 |サテライトとして使用したいバージョン 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 コマンドを |実行して、サテライト上で指定された値が正しいこと、およびサテライトが |サテライト制御データベースに接続できることを検査します。 |応答ファイルのインストール実行の詳細については、サテライト管理 手引きおよび解説書 を |参照してください。 注: |バージョン 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 の |値を指定しないと、上記のデフォルト設定ルールが適用されます。 |バージョン 6 では、応答ファイル・インストールを使用して DB2 サテライト・ |エディションをインストールするときに、データベースを作成できます。サテライトとして |使用する予定のバージョン 7.2 パーソナル・エディションまたはワークグループ・ |エディション・システム上に応答ファイルをインストールしているときは、 |データベースを作成できません。以下のキーワード (説明については サテライト管理 手引きおよび解説書 を |参照) はサポートされていません。 |db2.userdb_name |db2.userdb_recoverable |db2.userdb_rep_src |||11.1.2 同期化のためのバージョン 7.2 システムの構成 | | |バージョン 7.2 システムを対話式にインストールする場合、DB2 のインストール後、 |システムの同期化前に、DB2 パーソナル・エディションまたは DB2 ワークグループ・エディションでいくつかの値を設定する必要があります。 |注: サテライトが |サテライト制御データベースとの接続に使用するユーザー ID とパスワードを除き、サテライトでの |すべての値を設定するために、システムでオペレーティング・システム・スクリプトを |実行することができます (ステップ 4 を参照してください)。 |||db2set コマンドを使用してサテライト ID を設定します。 |DB2 パーソナル・エディションまたは DB2 ワークグループ・エディションを対話式に |インストールする場合、サテライト ID は、DB2 をインストールするために使用された |ユーザー ID に自動的に設定されます。このユーザー ID をサテライト ID として |使用したい場合は、このステップを実行する必要はありません。サテライト ID の設定に |ついては、サテライト管理 手引きおよび解説書 を参照してください。 |db2sync -s コマンドを使用して、サテライト上の |アプリケーション・バージョンを設定します。 |DB2 パーソナル・エディション |または DB2 ワークグループ・エディションを対話式にインストールする場合、 |サテライト上のアプリケーション・バージョンは、自動的に V1R0M00 に設定されます。 |この値をアプリケーションのバージョンとして使用したい場合は、このステップを |実行する必要はありません。 |サテライトで db2sync -g コマンドを |使用して、アプリケーション・バージョンの現在の設定を表示することができます。この値を |変更したい場合は、db2sync -s コマンドを実行してください。 |アプリケーション・バージョンの新しい値を指定するようにプロンプトが出されます。 |アプリケーション・バージョンの設定について詳しくは、サテライト管理 手引きおよび解説書 を |参照してください。 |catalog node および catalog database コマンドを使用して、DB2 制御データベース・インスタンスと |サテライト制御データベース SATCTLDB をサテライトでカタログします。 |また、サテライトで db2sync -t コマンドを使用して、 |DB2 シンクロナイザー・アプリケーションをテスト・モードでオープンすることが |できます。コマンドを実行したときに SATCTLDB データベースがサテライトで |カタログされていない場合は、「制御データベースのカタログ」ウィンドウが |オープンします。「制御データベースのカタログ」ウィンドウから使用できる DB2 ディスカバリー機能を |使用して DB2 制御サーバーと SATCTLDB データベースをカタログするか、または |このウィンドウでホスト名とサーバー名を入力することができます。また、 |ステップ 4 に記されているように、サテライトがサテライト制御 |データベースとの接続に使用するユーザー ID とパスワードの入力のプロンプトも出されます。 |注: バージョン 7.2 パーソナル・エディションまたは DB2 ワークグループ・ |エディションを対話式にインストールした後、DB2 シンクロナイザーは自動的に |テスト・モードで開始されることはありません (バージョン 6 サテライト・エディションの |場合)。 ||サテライトで db2sync -t コマンドを |実行して、以下を行います。 |サテライトがサテライト制御データベースとの接続に使用するユーザー ID と |パスワードを指定します。 |同期化証明書がまだサテライトで保管されていない場合は、 |「制御データベースの接続」ウィンドウがオープンします。 |このウィンドウを使用して、サテライトがサテライト制御データベースとの接続に |使用するユーザー ID とパスワードを指定する必要があります。 |サテライトで設定される値が正しいかを検証します。 |サテライトがサテライト制御データベースに接続可能であることを検証します。 |||構成タスクを完了すると、バージョン 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 つの先行タスクのどちらを実行する必要があるかを |識別し、状況に適合するステップを識別します。以下は、実行するステップのサマリーです。 ||まず、DB2 エンタープライズ・エディション・インストールの現在の状況を |確認します。 |制御サーバー・コンポーネントがインストールされているかどうかと、DB2 のサービス・レベルを |判別します。 |2 番目に、入手した状態情報に基づいて、何を行う必要があるかを判別します。 |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 エンタープライズ・エディションがインストールされている場合は、 |以下のステップを実行してください。 |制御サーバー・コンポーネントがインストールされているかどうかを調べます。 |レジストリー・エディターを使用して、インストールされたコンポーネントのリストを |表示します。 |コマンド・プロンプトに regedit を入力します。 |HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\Components レジストリー・キーを使用して、 |制御サーバーがリストされているかどうかを確認します。リストされていない場合は、 |制御サーバーはインストールされていません。 ||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 V6.1.0.9, s000101, WR21173 バージョン 6.1 プラス フィックスパック 2 | |注: レベルが 01030104 より上の場合、システムはフィックスパック 2 より |上のレベルにあります。 ||入手した情報を記録して、実行が必要な項目の判別 に進んでください。 ||実行が必要な項目の判別 |収集した情報を使用して、状況に合った表内の行を探し、フィックスパック 2 の |レベル以上で DB2 制御サーバーをサポートするために、DB2 エンタープライズ・ |エディション・システムの準備に必要なステップにしたがってください。 |表に続くセクションに、必要なステップを実行するための指示があります。 |実行したステップをチェックしてください。状況に合ったステップだけを実行する |ようにしてください。 | インストールされた制御サーバー・コンポーネント DB2 エンタープライズ・エディション・システムのサービス・レベル DB2 エンタープライズ・エディション・システムの準備に必要なステップ No バージョン 6.1 ベース、またはバージョン 6.1 プラス フィックスパック 1、またはバージョン 6.1 プラス フィックスパック 2 以上 以下のステップを実行してください。 Windows NT での制御サーバーのインストール Windows NT でのフィックスパック 2 以上のインストール Windows NT での SATCTLDB のアップグレード Yes バージョン 6.1 ベース、またはバージョン 6.1 プラス フィックスパック 1 以下のステップを実行してください。 Windows NT でのフィックスパック 2 以上のインストール Windows NT での SATCTLDB のアップグレード Yes バージョン 6.1、プラス フィックスパック 2 以上 以下のステップを実行してください。 Windows NT での SATCTLDB のアップグレード |Windows NT での制御サーバーのインストール |Windows NT で制御サーバーをインストールするには: |先に進む前に、システムのすべてのデータベース・アクティビティーが完了している |ことを確認します。 |DB2 ユニバーサル・データベース・エンタープライズ・エディション バージョン 6.1 CD を |CD ドライブに入れます。 |インストール・プログラムが自動的に開始されない場合は、 |setup コマンドを CD のルートで実行して、インストール・プロセスを |開始します。 |プロンプトが出されたら、DB2 を使用しているすべてのプロセスをシャットダウン |します。 |ウェルカム・ウィンドウで「次へ」を選択します。 |「製品の選択」ウィンドウで、DB2 エンタープライズ・エディションが選択されていることを |確認します。 |「インストール・タイプの選択」パネルで、「カスタム」を |クリックします。 |「コンポーネントの選択」パネルで、制御サーバー・コンポーネントが選択されていることを確認し、「次へ」をクリックします。 |注: システムにまだインストールされていないその他のコンポーネントを選択した場合、 |これらのコンポーネントもインストールされます。DB2 がインストールされているドライブまたは |ディレクトリーを変更することはできません。 ||「DB2 サービスの構成」パネルで、制御サーバー・インスタンスのプロトコル値と |始動オプションを変更するか、またはデフォルト値を使用することができます。 |デフォルトを変更して「次へ」をクリックするか、 |または「次へ」をクリックしてデフォルトを使用 |してください。 |「ファイルのコピーを開始」ウィンドウで「次へ」を |クリックして、インストール・プロセスを開始します。 |ファイル・コピー処理が完了すると、システムをリブートするオプションが |示されます。この時点でリブートを行います。制御サーバーのためにシステムに行った |変更は、システムがリブートされるまで有効になりません。 ||インストール・プロセスが完了してシステムをリブートすると、 |コントロール・センター および サテライト管理センター をシステムでローカルに使用したい場合は、制御サーバー・ |インストールの一部として作成されたサテライト制御データベース (SATCTLDB) が |カタログされている必要があります。SATCTLDB データベースをカタログするには: |「スタート>プログラム>DB2 (Windows NT 版)> |コマンド・ウィンドウ」を選択して、DB2 コマンド・ウィンドウをオープンします。 |DB2 インスタンスにいることを確認します。 |set コマンドを実行して、 |db2instance の値をチェックします。値が db2 ではない場合は、次の |コマンドを実行してください。 | set db2instance=db2 |次のコマンドを入力して、db2ctlsv インスタンスをカタログします。 | db2 catalog local node db2ctlsv instance db2ctlsv |次のコマンドを入力して、SATCTLDB データベースをカタログします。 | db2 catalog database satctldb at node db2ctlsv |次のコマンドを入力して、カタログ・アクションをコミットします。 | db2 terminate |DB2 コマンド・ウィンドウをクローズします。 ||Windows NT でのフィックスパック 2 以上のインストール |既存のバージョン 6 DB2 エンタープライズ・エディション・システムを Windows NT で |フィックスパック 2 以上にアップグレードするには、以下のいずれかを行います。 |DB2 エンタープライズ・エディション (Windows NT 版) V6.1 の最新 |フィックスパックを、readme とともに Web からダウンロードします。フィックスパックは |次の URL の指示にしたがってダウンロードすることができます。 |http://www.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 データベースをアップグレードするには:  |SATCTLDB データベースのレベルを判別します。 |Windows NT システムのローカル管理権限を持つユーザー ID でログオンします。 |「スタート>プログラム>DB2 (Windows NT 版)> |コマンド・ウィンドウ」を選択して、DB2 コマンド・ウィンドウをオープンします。 |次のコマンドを入力して、SATCTLDB に接続します。 | db2 connect to satctldb |トリガー I_BATCHSTEP_TRGSCR がデータベースに存在するかどうかを、 |次の照会を実行して判別します。 | db2 select name from sysibm.systriggers | where name='I_BATCHSTEP_TRGSCR' |返された行の数を記録します。 |次のコマンドを入力してデータベースへの接続をクローズします。 | db2 connect reset |ステップ 1d が 1 行を返した場合、 |データベースが正しいレベルにあります。この状況では、ステップ 2 をスキップして、3 に進みます。ゼロ (0) 行が |戻された場合、データベースは正しいレベルになく、ステップ 3 を |実行する前に、ステップ 2 で説明されているように、データベースをアップグレード |する必要があります。 ||SATCTLDB データベースをアップグレードするには、以下のステップを |実行してください。DB2 コマンド・ウィンドウにすべてのコマンドを入力します。 ||ディレクトリー \misc に切り替えます。 は |たとえば c:\sqllib のようなインストール・ドライブおよびパスです。 |db2ctlsv インスタンスにいることを確認します。 |set コマンドを実行して、 |db2instance の値をチェックします。値が db2ctlsv ではない場合は、次の |コマンドを実行します。 | set db2instance=db2ctlsv |次のコマンドを入力して、SATCTLDB データベースをドロップします。 | db2 drop database satctldb |次のコマンドを入力して、新しい SATCTLDB データベースを作成します。 | db2 -tf satctldb.ddl -z satctldb.log |次のコマンドを実行します。 | db2 terminate ||db2satcs.dll ストアード・プロシージャーを SATCTLDB データベースに |バインドします。 |以下のステップを実行してください。 |次のコマンドを入力して、SATCTLDB データベースに接続します。 | db2 connect to satctldb |ディレクトリー \bnd に切り替えます。 は |たとえば c:\sqllib のようなインストール・ドライブおよびパスです。 |次のバインド・コマンドを実行します。 | db2 bind db2satcs.bnd ||次のコマンドを入力してデータベースへの接続をクローズします。 | db2 connect reset |DB2 コマンド・ウィンドウをクローズします。 ||AIX での DB2 エンタープライズ・エディションのアップグレード |以下のセクションの情報を使用してバージョン 6 DB2 エンタープライズ・ |エディション・システムの現在のサービス・レベルと、システムを |フィックスパック 2 サービス・レベル以上に更新するために実行する必要のある |ステップを判別してください。以下のセクションの 1 つまたは複数のステップを |実行する必要があります。 |AIX での DB2 エンタープライズ・エディションの確認 |実行が必要な項目の判別 |AIX での制御サーバーのインストール |AIX でのフィックスパック 2 以上のインストール |AIX での SATCTLDB データベースのアップグレード ||AIX での DB2 エンタープライズ・エディションの確認 |AIX にバージョン 6 DB2 エンタープライズ・エディションがインストールされている |場合は、以下のステップを実行してください。 |制御サーバー・コンポーネントがインストールされているかどうかを調べます。 |次のコマンドを入力してください。 | lslpp -l | grep db2_06_01.ctsr |データが返されない場合は、制御サーバー・コンポーネントはインストールされていません。 |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 V6.1.0.9, s000101, U469453 バージョン 6.1 プラス フィックスパック 2 | |注: レベルが 01030104 より上の場合、システムはフィックスパック 2 より |上のレベルにあります。 ||入手した情報を記録して、実行が必要な項目の判別 に進んでください。 ||実行が必要な項目の判別 |収集した情報を使用して、状況に合った表内の行を探し、フィックスパック 2 の |レベルで DB2 制御サーバーをサポートするために、バージョン 6 DB2 エンタープライズ・ |エディション・システムの準備に必要なステップにしたがってください。 |表に続くセクションに、必要なステップを実行するための指示があります。 |実行したステップをチェックしてください。状況に合ったステップだけを実行する |ようにしてください。 | インストールされた制御サーバー・コンポーネント DB2 エンタープライズ・エディション・システムのサービス・レベル DB2 エンタープライズ・エディション・システムの準備に必要なステップ No バージョン 6.1 ベース、またはバージョン 6.1 プラス フィックスパック 1、またはバージョン 6.1 プラス フィックスパック 2 以上 以下のステップを実行してください。 AIX での制御サーバーのインストール AIX でのフィックスパック 2 以上のインストール AIX での SATCTLDB データベースのアップグレード Yes バージョン 6.1 ベース、またはバージョン 6.1 プラス フィックスパック 1 以下のステップを実行してください。 AIX でのフィックスパック 2 以上のインストール AIX での SATCTLDB データベースのアップグレード Yes バージョン 6.1、プラス フィックスパック 2 以上 以下のステップを実行してください。 AIX での SATCTLDB データベースのアップグレード |AIX での制御サーバーのインストール |AIX で制御サーバーをインストールするには: |ルート権限を持つユーザーでログオンします。 |DB2 ユニバーサル・データベース・エンタープライズ・エディション バージョン 6.1 CD を |CD ドライブに入れます。 |CD-ROM がマウントされているディレクトリー (たとえば cd /cdrom) に |移動します。 |次のコマンドを入力して、DB2 インストーラーを開始します。 | ./db2setup |「DB2 インストーラー」ウィンドウがオープンしたら、タブ・キーを使用して |インストール・オプションを選択し、Enter を |押します。 |エンタープライズ・エディションの行を探し、タブ・キーを使用してその横の |カスタマイズ・オプションを選択します。Enter を |押してください。 |DB2 制御サーバー・コンポーネントを選択して、了解にタブで移動し、Enter を押して |ください。 |残りのウィンドウの指示にしたがって DB2 制御サーバー・コンポーネントのインストールを |完了します。 ||インストール・プロセスが完了したら、DB2CTLSV インスタンスと SATCTLDB データベースを |作成します。これらのタスクを実行するには、サテライト管理 手引きおよび解説書 の第 13 章、 |「AIX での DB2 制御サーバーのセットアップ」の詳細な指示にしたがってください。 |AIX でのフィックスパック 2 以上のインストール |既存の DB2 エンタープライズ・エディション・システムを AIX で |フィックスパック 2 以上にアップグレードするには、以下のいずれかを行います。 |DB2 エンタープライズ・エディション (AIX 版) V6.1 の最新フィックスパック |をフィックスパック readme とともに Web からダウンロードします。フィックスパックは |次の URL の指示にしたがってダウンロードすることができます。 |http://www.ibm.com/software/data/db2/db2tech/version61.html |フィックスパック readme ファイルの指示にしたがってフィックスパックをインストールします。 |フィックスパック 2 以上の DB2 ユニバーサル・データベース バージョン 6.1 フィックスパック (AIX 版) CD を |使用し、CD の readme ディレクトリーにある指示にしたがってインストールを完了します。 ||フィックスパック readme ファイルで指示されているように、db2iupdt コマンドを |実行して DB2CTLSV インスタンスを更新したことを確認してください。 |AIX での SATCTLDB データベースのアップグレード |AIX で SATCTLDB データベースをアップグレードするには: |SATCTLDB データベースのレベルを判別します。 |db2ctlsv としてログインします。 |データベース・サーバーが開始されていることを確認します。サーバーが開始されて |いない場合は、db2start コマンドを実行してください。 |次のコマンドを入力して SATCTLDB データベースに接続します。 | db2 connect to satctldb |トリガー I_BATCHSTEP_TRGSCR がデータベースに存在するかどうかを、 |次の照会を実行して判別します。 | db2 "select name from sysibm.systriggers | where name='I_BATCHSTEP_TRGSCR'" |返された行の数を記録します。 |次のコマンドを入力してデータベースへの接続をクローズします。 | db2 connect reset |ステップ 1d が 1 行を返した場合、 |データベースが正しいレベルにあります。この状況では、ステップ 2 をスキップして、3 に進みます。ゼロ (0) 行が |戻された場合、データベースが正しいレベルになく、ステップ 3 を |実行する前に、ステップ 2 で説明されているように、データベースをアップグレード |する必要があります。 ||SATCTLDB データベースをフィックスパック 2 レベルにアップグレード |するには、以下のステップを実行してください。DB2 コマンド・ウィンドウにすべてのコマンドを入力します。 ||$HOME/sqllib/misc ディレクトリーに切り替えます。 |次のコマンドを入力して、SATCTLDB データベースをドロップします。 | db2 drop database satctldb |次のコマンドを入力して、新しい SATCTLDB データベースを作成します。 | db2 -tf satctldb.ddl -z $HOME/satctldb.log |次のコマンドを実行します。 | db2 terminate ||db2satcs.dll ストアード・プロシージャーを SATCTLDB データベースに |バインドします。 |以下のステップを実行してください。 |次のコマンドを入力して、SATCTLDB データベースに接続します。 | db2 connect to satctldb |ディレクトリーを $HOME/sqllib/bnd に変更します。 |次のバインド・コマンドを実行します。 | db2 bind db2satcs.bnd ||次のコマンドを入力してデータベースへの接続をクローズします。 | 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.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 を使用できるようにする。 |ユニコード・データベース用の新しい組み込み関数 DATE(vargraphic)、 |TIME(vargraphic)、TIMESTAMP(vargraphic)、GRAPHIC(datetime-expression)、 |GRAPHIC(date-expression)、GRAPHIC(time-expression)、および VARGRAPHIC(datetime-expression) を使用できるようにする。 |新しい組み込みプロシージャー (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 |コマンド構文 |>>-REBIND--+---------+--package-name----------------------------> | '-PACKAGE-' | | .-ANY----------. |>--RESOLVE--+-CONSERVATIVE-+----------------------------------->< | | |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-' | | |12.6 CREATE DATABASE | | |DB2 は、ユニコード・データベース用に、 |新しい照合シーケンスのキーワード、IDENTITY_16BIT と SQL_CS_IDENTITY_16BIT、を |サポートするようになりました。CLP CREATE DATABASE コマンドに IDENTITY_16BIT が |指定されているか、sqlecrea()、すなわちデータベースの作成 API の中で SQLEDBDESC.SQLDBCSS が SQL_CS_IDENTITY_16BIT に設定されていると、ユニコード・データベース内のすべてのデータが CESU-8 順を使って照合されます。 |CESU-8 は、Compatibility Encoding Scheme for UTF-16: 8-Bit (UTF-16 用互換コード化スキーム、8 ビット) であり、 |このリリース情報の作成時点では、この仕様は Unicode Technical Consortium Web サイト (www.unicode.org) にある Draft Unicode Technical Report #26 に含まれています。 |ユニコード補足文字、 |すなわち、16 ビットの基本マルチリンガル・プレーン (16-bit Basic Multilingual Plane、BMP または Plane 0) 外に |定義された文字を除き、CESU-8 は、UTF-8 とバイナリーにおいて同一です。UTF-8 エンコードでは、 |補足文字は 1 つの 4 バイト・シーケンスによって表されますが、 |同じ文字が CESU-8 では、2 つの 3 バイト・シーケンスを必要とします。 |ユニコード・データベースの中で、CHAR、VARCHAR、LONG VARCHAR、および CLOB データは UTF-8 で |保管され、GRAPHIC、VARGRAPHIC、LONG VARGRAPHIC、および DBCLOB データは UCS-2 で |保管されます。IDENTITY または SQL_CS_NONE 照合の場合、非補足文字は、UTF-8 および UCS-2 で同一のバイナリー照合になりますが、補足文字については、同じ文字でも UTF-8 照合と UCS-2 照合では |異なります。IDENTITY_16BIT または SQL_CS_IDENTITY_16BIT によって、補足文字も非補足文字も、すべての文字が DB2 ユニコード・データベース内で、確実に同じバイナリー照合になります。 |データ回復と高可用性の手引きと解説書 |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 ビット) ||問題が起きた場合、以下のステップを実行して問題を訂正してください。 ||db2stop コマンドを発行します。 |DB2 UDB サーバーの sqllib/adsm ディレクトリーに移動します。 |libtadsm.a のバックアップ・コピーを取ります。 |libtadsm.a.bak という名前のコピーを作成してください。 | libadsm.a を libtasdm.a にコピーします。 |db2start コマンドを発行します。 |失敗したバックアップまたはリストアのコマンドを再発行してください。 | データ移動ユーティリティー 手引きおよび解説書 |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 バイト相対位置で始まり、456 バイトの長さであることを示します。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 列が NULL の場合、ヌル LOB を示す LLS を書き込み必要があります。 |14.2 インポート、エクスポート、およびロード・ユーティリティーに対するコード・ページ・サポート |インポート、エクスポート、およびロードの各ユーティリティーを使用して、新しい中国語 |コード・ページ GB 18030 (コード・ページ ID 5488) および新しい日本語 |コード・ページ ShiftJIS X0213 (コード・ページ 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 に移動するには、次のようにします。 ||ディレクトリー /dbpath/jsmith 内のファイルを /dbpath/prodinst に |移動する。 |以下の構成ファイルを 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 は、パスワード・ファイルを読み取ることができることを確認してください。 パスワード・ファイルを作成するには、以下の手順で行います。 Windows NT のコマンド・プロンプト・ウィンドウで、C:\scripts ディレクトリーに移動します。 DEPTQUAL.PWD というディレクトリーに、新規ファイルを作成します。このファイルは Notepad などのテキスト・エディターで作成してください。パスワード・ファイルの命名規則は、applyqual.pwd です。 applyqual は、サブスクリプション・セットを作成した時にアプライ修飾子の大文字小文字と値に一致する必要のある 大文字小文字の区別をするストリングです。このシナリオでは、アプライ修飾子は DEPTQUAL です。 注: DB2 DataPropagator のバージョン 5 もサポートされます。 パスワード・ファイルの内容には、次の形式があります。 SERVER=server USER=userid PWD=password それぞれ次の意味があります。 server ソース、ターゲット、または制御サーバーの名前で、サブスクリプション・セット表で現れます。このシナリオでは、これらの名前は SAMPLE と COPYDB です。 userid 特殊なデータベースを管理するために使用する予定のユーザー ID。この値は、Windows NT および UNIX オペレーティング・システムで大文字小文字の区別があります。 password ユーザー ID に関連したパスワード。この値は、Windows NT および UNIX オペレーティング・システムで大文字小文字の区別があります。 このファイルにはブランク行または注釈行を書き込まないでください。サーバー名、ユーザー ID、およびパスワード情報のみを追加してください。 パスワード・ファイルの内容は、次の内容に類似しています。 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 ページの保存制限に関する説明で、キャプチャー・プログラムがウォーム・スタート |したとき、またはキャプチャー・プログラムの PRUNE コマンドが使用されたときのみ、行を枝取りするために |保存制限が使用されると述べられています。 |自動プルーニング・オプションを指定してキャプチャー・プログラムを開始した場合、キャプチャー・プログラムは |保存制限を使用して行を枝取りすることはありません。 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 を示す。 サブスクリプション・セットには複数のソース表が含まれています。そのセット内の1つのソース表のホット・スポット処理を向上させるために、そのソース表について内部 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 に増やすことができます。取り込みジョブの開始ごとにジョブを変更することができます。また、以下の手順で、サブシステムで実行されるすべてのジョブのデフォルトの待ちタイムアウト値を変更することもできます。 QGPL/QBATCH を複写して新規のクラス・オブジェクトを作成するには、以下のコマンドを実行します。 CRTDUPOBJ OBJ(QBATCH) FROMLIB(QGPL) OBJTYPE(*CLS) TOLIB(QDPR) NEWOBJ(QZSNDPR 新規に作成されたクラスの待ちタイムアウト値を変更します (たとえば、300 秒に変更します)。 CHGCLS CLS(QDPR/QZSNDPR) DFTWAIT(300) 新規に作成したクラスを使用するには、サブシステム記述 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 を変更します。 |新しいソース表とターゲット表を適切なエンコード・スキームで作成するか、 |既存のターゲット表とソース表のエンコード・スキームを変更してください。 |既存の表のエンコード・スキームを変更する前にキャプチャー・プログラムとアプライ・プログラムを |停止してから、キャプチャー・プログラムをコールド・スタートしてアプライ・プログラムを |再始動するようお勧めします。 |既存の表のエンコード・スキームを変更するには: |Reorg ユーティリティーを使用して既存の表をコピーします。 |既存の表をドロップします。 |新しいエンコード・スキームを指定して、表を再作成します。 |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 コマンドを実行する要求を隠すことができます。 db2start.exe コマンドに続いて db2logon コマンドを実行するバッチ・ファイルを作成してください。例: @echo off db2logon db2local /p:password db2start cls exit バッチ・ファイルの名前を db2start.bat とし、 DB2 をインストールしたドライブおよびパスの下の /bin ディレクトリーに保管してください。バッチ・ファイルをこの場所に置くことにより、オペレーティング・システムがバッチ・ファイルへのパスを検索できるようになります。 DB2 がインストールされているドライブおよびパスは、DB2 レジストリー変数 DB2PATH に保管されます。DB2 がインストールされているドライブとパスを検出するには、次のコマンドを実行してください。 db2set -g db2path db2set コマンドにより、c:\sqllib という値が戻されるとします。この場合、バッチ・ファイルを以下に保管します。 c:\sqllib\bin\db2start.bat システムのブート時に DB2 を開始するには、スタートアップ・フォルダー内のショートカットからバッチ・ファイルを実行する必要があります。2 つのオプションがあります。 DB2 インストール・プログラムで作成されたショートカットを変更し、 db2start.exe の代わりにバッチ・ファイルを実行するようにします。前の例では、ショートカットは db2start.bat バッチ・ファイルを実行します。DB2 インストール・プログラムで作成されたショートカットは DB2 - DB2.lnk と呼ばれ、ほとんどのシステムで、 c:\WINDOWS\Start Menu\Programs\Start\DB2 - DB2.lnk に位置します。 バッチ・ファイルを実行する独自のショートカットを追加し、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) を参照してください。 注: db2logon コマンドはユーザー・ログオンをシミュレートします。db2logon コマンドの形式は、次の通りです。 db2logon userid /p:password コマンドに指定されるユーザー ID は、DB2 の命名要求を満たす必要があります (詳細については、(注2) を参照)。ユーザー ID とパスワードなしでコマンドを実行すると、ユーザー ID とパスワード用のプロンプトのウィンドウがオープンします。指定されたパラメーターがユーザー ID のみの場合は、ユーザーに対してパスワードのプロンプトは出されません。ある条件の下では、以下に述べるようにパスワードが要求されます。 db2logon コマンドによって設定されるユーザー ID とパスワードの値は、ユーザーが Windows ログオン・ウィンドウあるいは Microsoft ネットワークのログオン・ウィンドウのいずれも使用せずにログオンした場合にのみ使用されます。ユーザーがログオンし、db2logon コマンドが実行された場合、db2logon コマンドからのユーザー ID はすべての DB2 アクションで使用されますが、db2logon コマンドで指定されたパスワードは無視されます。 ユーザーが Windows ログオン・ウィンドウあるいは Microsoft ネットワークのログオン・ウィンドウを使用してログオンしなかった場合、 db2logon コマンドは次のように使用されます。 db2start コマンドは開始時にユーザー ID を使用しますが、パスワードを必要としません。 表の作成のようなアクションで高水準修飾子がない場合は、高水準修飾子としてユーザー ID が使用されます。例: 次を実行します。db2logon db2local その後、次を実行します。create table tab1 db2local.tab1 という高水準修飾子で表が作成されます。 表やその他のオブジェクトのスキーマ名に相当するユーザー ID を使用してください。 システムがサーバーへのクライアントとして機能する場合は、ユーザー ID とパスワードなしで CONNECT ステートメントを実行し (たとえば、CONNECT TO TEST)、認証は server に設定され、 db2logon コマンドからのユーザー ID とパスワードが、リモート・サーバーのユーザーの妥当性検査に使用されます。ユーザーが明示的ユーザー ID およびパスワード (たとえば、 CONNECT TO TEST USER userID USING password) を使用して接続すると、CONNECT ステートメントで指定されている値が使用されます。 バージョン 7 では、ログオンに使用される、または db2logon コマンドで指定されるユーザー ID は、次の DB2 要件を満たさなければなりません。 次の語は使用できません。USERS、ADMINS、GUESTS、PUBLIC、LOCAL、または SQL 解説書 にリストされている SQL 予約語。 SQL, SYS または IBM で開始することはできません。 以下の文字を含めることができます。 A から Z (Windows 95、Windows 98、および Windows ME では、ユーザー ID の 大文字小文字が区別されます) 0 から 9 @, #, または $ カスタマイズされた対話式インストール中に、あるいは応答ファイル・インストールを実行中の場合は、DB2.AUTOSTART=NO オプションを指定して、スタートアップ・フォルダー内に db2start ショートカットを作成しないようにすることができます。これらのオプションを使用すると、スタートアップ・フォルダー内に db2start ショートカットは作成されず、独自のショートカットを追加して db2start.bat ファイルを実行する必要があります。 Windows 98 と Windows ME では、 Windows 98 または Windows ME の始動時に常にログオンするユーザー ID を指定するオプションを使用できます。この場合、Windows ログオン・ウィンドウは表示されません。このオプションを使用すると、ユーザー ID が DB2 要件 (詳細については (注2) を参照) を満たしていると、ログオンが行われ、db2start コマンドが続きます。このオプションを使用しないと、常にログオン・ウィンドウが現れます。ログオンせずにこのウィンドウを取り消すと、上記で述べたように事前に db2start コマンドが実行されているか、あるいはバッチ・ファイルから呼び出されているかのいずれかでなければ、 db2logon コマンドは失敗します。 システム・ブート中に 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 を呼び出すと、機密データの扱われ方を示すメッセージが表示されます。 |収集されて単一アーカイブに圧縮されるファイルは次の通りです。 |どのような条件下でも収集されるもの ||db2diag.log |すべてのトラップ・ファイル |ロック・リスト・ファイル (-d の指定付き) |ダンプ・ファイル |ユーザー出口 (-d の指定付き) |バッファー・プールおよび表スペース (SPCS) 制御ファイル (-d の指定付き) |各種のシステム関連ファイル |各種のシステム・コマンドからの出力 |db config (-d の指定付き) |dbm config ファイル |ログ・ファイル・ヘッダー・ファイル (-d の指定付き) |リカバリー・ヒストリー・ファイル |db2cli.ini ||オプションで収集されるもの ||アクティブ・ログ・ファイル |db2dump ディレクトリーの内容 (つまり、上では収集されなかったもの) |コア・ファイル (-a を指定した場合はすべてのコア・ファイル、-r を指定した場合は |最新のコア・ファイルのみ) |拡張システム情報 (-s) ||HTML 報告書の内容は次のファイルから構成されます。 |どのような条件下でも収集されるもの ||あれば、PMR 番号 (-n を指定した場合) |オペレーティング・システムとそのレベル (例: AIX 4.2.1) |DB2 リリース情報 |エンジン・ライブラリー・ヘッダー情報 |32 ビットか 64 ビットかの検出 |DB2 インストール・パス情報 |db2nodes.cfg の内容 (EEE 報告書の場合) |CPU とディスクの数、およびメモリー容量 |このインスタンス上のデータベースのリスト |レジストリー情報、環境 (PATH および LIBPATH を含む) |現行ファイル・システムおよび inodes 用のディスク・フリー・スペース (UNIX の場合) |JDK レベル |dbm config |データベース・リカバリー・ヒストリー・ファイルのリスト |sqllib ディレクトリーに対する「ls -lR」(または Windows でそれと等価のもの) |LIST NODE DIRECTORY |LIST ADMIN NODE DIRECTORY |LIST DCS DIRECTORY |LIST DCS APPLICATIONS EXTENDED |すべてのインストール済みソフトウェアのリスト ||「-s」を指定した場合に収集されるもの ||詳細なディスク情報 (区分レイアウト、タイプ、LVM 情報など) |詳細なネットワーク情報 |カーネル統計 |ファームウェアのバージョン |その他のプラットフォーム固有コマンド ||DB2 が始動済みである場合に収集されるもの ||クライアントの接続状態 |db/dbm config (db cfg には -d オプションが必須) |CLI config |メモリー・プール情報 (サイズおよび消費量) (-d オプションを使用した場合は完全なデータ) |LIST ACTIVE DATABASES |LIST DATALINKS MANAGERS |LIST DCS APPLICATIONS ||-c が指定済みでデータベースへの接続が可能な場合に収集されるもの ||ユーザー表の数 |DB データのおおよそのサイズ |データベースのスナップショット |アプリケーションのスナップショット |バッファー・プール情報 |LIST APPLICATIONS |LIST COMMAND OPTIONS |LIST DATABASE DIRECTORY |LIST INDOUBT TRANSACTIONS |LIST NODEGROUPS |LIST NODES |LIST ODBC DATA SOURCES |LIST PACKAGES/TABLES |LIST TABLESPACE CONTAINERS |LIST TABLESPACES |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 for UNIX 概説およびインストール」ブックでは、このパラメーターを「マシンの物理 RAM の 90% (バイト数)」に設定するよう推奨しています。この推奨は、64 ビット実装マシンでも有効です。 ただし、「DB2 for 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.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 関数を構成し、使用可能にする基本的な手順は、以下の通りです。 |MQSeries をインストールします。 |MQSeries AMI をインストールします。 |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 関数の |デフォルト構成をインストールおよび作成し、これらの関数を使用して指定のデータベースを |使用可能にし、最後に構成が機能することを確認します。 ||Windows NT または Windows 2000 の場合は、ステップ 5 へ進みます。 |UNIX でのグループの設定: これらの関数を UNIX 上で使用可能にする場合は、 |まず DB2 インスタンス所有者 (多くの場合、db2inst1) と隔離された UDF に関連付けられている |ユーザー ID (多くの場合、db2fenc1) を MQSeries グループ mqm に追加する必要があります。 |これは、DB2 関数が MQSeries にアクセスするために必要です。 |UNIX 上で DB2 環境変数を設定する: AMT_DATA_PATH 環境変数を DB2 が認識できる |リストに追加します。ファイル $INSTHOME/sqllib/profile.env を編集する |ことによって、AMT_DATA_PATH を DB2ENVLIST に追加できます。 |db2set コマンドを使用することもできます。 |UNIX 上でデータベース・インスタンスを再始動する: 環境変数の変更を有効にする |には、データベース・インスタンスを再始動する必要があります。 |UNIX の場合は $INSTHOME/sqllib/cfg に、 |Windows の場合は %DB2PATH%/cfg にディレクトリーを変更します。 |コマンド enable_MQFunctions を実行して、 |DB2 MQSeries 関数のデータベースを構成し、使用可能にします。このコマンドの詳細に |ついては、20.6, enable_MQFunctions を参照してください。いくつかの一般的な例を |後述します。正常に完了すると、指定されたデータベースが使用可能になり、構成が |テストされます。 |コマンド行処理プログラムを使用してこれらの関数をテストするには、使用可能に |なったデータベースに接続した後で次のコマンドを実行します。 |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.5.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 間で送信されます。以下の |ようなステップがあります。 ||DB2 クライアントが、マシン B 上のリモート・キューを表すように定義された |ターゲット・サービスを指定して、MQSEND 呼び出しを実行します。 |MQSeries DB2 関数が、メッセージを送信するための実際の MQSeries 作業を |実行します。マシン A 上の MQSeries サーバーが、メッセージを受け入れ、マシン A の |サービス・ポイント定義と現行 MQSeries 構成に定義されている宛先へ送ることを |保証します。サーバーは、これがマシン B 上のキューであることを判別します。 |次にマシン B 上の MQSeries サーバーへメッセージを送り、必要に応じて再試行します。 |マシン B 上の MQSeries サーバーが、マシン A 上のサーバーからのメッセージを |受け入れ、マシン B 上の宛先キューに入れます。 |マシン 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 を使用すると、ユーザーは、メッセージに関連付けるトピックをオプションで |指定できます。トピックによって、サブスクライバーは、受け入れるメッセージをより |明確に指定できます。手順は以下の通りです。 |MQSeries 管理者が、MQSeries Integrator 発行/サブスクリプション機能を構成します。 |関係するアプリケーションが、MQSI 構成に定義されているサブスクリプション・ |ポイントにサブスクライブし、オプションで関係するトピックを指定します。 |各サブスクライバーは関連のあるトピックを選択し、また内容に基づいて MQSeries Integrator V2 の |サブスクリプション技法を使用することもできます。サービス名で表されているキューが |サブスクライバーを定義していることに注意してください。 |DB2 アプリケーションが、サービス・ポイント Weather へメッセージを発行します。 |メッセージは、天候が Sleet でトピックが Austin であることを示しているため、 |関係するサブスクライバーへ Austin の天候が Sleet であることを通知します。 |実際にメッセージを発行するメカニズムが、DB2 提供の MQSeries 機能に |よって処理されます。メッセージが、Weather という名前のサービスを使用して |MQSeries Integrator へ送られます。 |MQSI は Weather サービスからメッセージを受け入れ、MQSI 構成に定義されている |処理を実行し、メッセージが満たしているサブスクリプションを判別します。MQSI は次に、 |メッセージが基準を満たしているサブスクライバー・キューへ、メッセージを転送します。 |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 管理ツール 部分目次 |ツールを実行前の追加のセットアップ |21.1 Linux 上の浮動小数点スタックを使用不可にする |21.2 日本語版 Linux 環境で必要な特定の Java レベル コントロール・センター 22.1 DB2 サーバー (VSE および VM 版) の管理化 22.2 コントロール・センターの Java 1.2 サポート 22.3 Windows オペレーティング・システムでオンライン・ヘルプを使用時の 「無効なショートカット」エラー 22.4 キーボード・ショートカットの不作動 22.5 OS/2 版 Java コントロール・センター 22.6 Windows オペレーティング・システム上のジャーナルで完了したジョブを表示する際の 「ファイル・アクセスが拒否されました」エラー 22.7 複数サイト更新テスト接続 22.8 DB2 (OS/390 版) のコントロール・センター 22.9 DB2 (OS/390 版) コントロール・センターの修正 22.10 「地理情報層の作成」ダイアログへの変更点 22.11 DB2 コントロール・センターの障害追及情報 22.12 UNIX ベース・システム上でのコントロール・センターの障害追及 22.13 OS/2 上での infopop の問題 22.14 jdk11_path 構成パラメーターのヘルプ 22.15 スクリプト・センターまたはジャーナルを使用中の Solaris システム・エラー (SQL10012N) 22.16 DPREPL.DFT ファイルのヘルプ 22.17 複数のコントロール・センター・アプレットの立ち上げ 22.18 アプレットとして実行中のコントロール・センターのオンライン・ヘルプ 22.19 コントロール・センターをアプレット・モードで実行 (Windows 95) |22.20 大きな照会結果の操作 コマンド・センター |23.1 コマンド・センターの対話式ページでステートメント終止符を認識 インフォメーション・センター |24.1 Java サンプル・ドキュメントに対する修正 24.2 Windows オペレーティング・システムでの「無効なショートカット」エラー 24.3 Netscape がすでにオープンしているときに、Netscape Navigator の外部 Web リンクをオープンする (UNIX ベース・システム) 24.4 インフォメーション・センター開始時の問題 ウィザード 25.1 データベース作成ウィザードの拡張サイズの設定 |25.2 MQSeries 補助ウィザード |25.3 OLE DB 補助ウィザード |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 ユーザーは、日本語環境で DB2 Java GUI ツール(コントロール・センターなど)を実行するには、 |特定の JDK レベルが必要です。たとえば、Red Hat Linux 6.2J/7J/7.1/7.2 ユーザーは、IBMJava118-SDK-1.1.8-2.0.i386.rpm レベルを使用する必要があります。 コントロール・センター 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 がインストールされていなければなりません。 JDK 1.2.2 は DB2\bidi\NT ディレクトリー下の DB2 UDB CD で入手可能です。 ibm-inst-n122p-win32-x86.exe はインストーラー・プログラムで、 ibm-jdk-n122p-win32-x86.exe は JDK 配布です。両方のファイルをご使用のハード・ディスクの一時ディレクトリーにコピーし、そこからインストーラー・プログラムを実行してください。 これを、\java\Java12 にインストールしてください。 は DB2 のインストール・パスです。 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 版) サブシステムをワークステーション上で直接カタログ化するには、クライアント構成アシスタント・ツールを使用するよう選択してください。 ソース・ページで、「データベースへの接続を手動で構成する」ラジオ・ボタンを指定します。 プロトコル・ページで、適切な通信情報を完成させます。 データベース・ページで、「データベース名」フィールドにサブシステム名を指定します。 ノード・オプション・ページで、「(オプション) ノード・オプションの構成」チェック・ボックスを選択します。 「オペレーティング・システム」フィールドでリストから MVS/ESA、OS/390 を選択します。 「終了」をクリックして構成を完了します。 ゲートウェイ・マシンを使用して DB2 (OS/390 版) サブシステムをカタログ化するには、ゲートウェイ・マシンで上記 1-6 のステップを行い、その後に以下を行ってください。 クライアント・マシンで、コントロール・センターを開始します。 「システム」フォルダー上で右クリックし、追加を選択します。 「システムの追加」ダイアログで、「システム名」フィールドにゲートウェイ・マシン名を入力します。 DB2DAS00 を「リモート・インスタンス」フィールドに入力します。 TCP/IP プロトコルの場合、プロトコル・パラメーターで、「ホスト名」フィールドにゲートウェイ・マシンのホスト名を指定します。 523 を「サービス名」フィールドに入力します。 「了解」をクリックしてシステムを追加します。「システム」フォルダーにゲートウェイ・マシンが追加されているのがご覧になれます。 ゲートウェイ・ゲートウェイ名を展開します。 「インスタンス」フォルダー上で右クリックし、追加を選択します。 「インスタンスの追加」ダイアログで「最新表示」をクリックして、ゲートウェイ・マシンで使用可能なインスタンスをリストします。ゲートウェイ・マシンが Windows NT システムである場合は、DB2 (OS/390 版) サブシステムはインスタンス DB2 の下にカタログ化されるでしょう。 インスタンスを選択します。プロトコル・パラメーターがこのインスタンス用に自動的に埋められます。 「了解」をクリックしてインスタンスを追加します。 「インスタンス」フォルダーをオープンして、追加したばかりのインスタンスを表示します。 インスタンスを展開します。 「データベース」フォルダー上で右クリックし、 追加を選択します。 「最新表示」プッシュボタンをクリックして、ゲートウェイ・マシン上のローカル・データベースを表示します。「データベースの追加」ダイアログで DB2 サブシステムを追加している場合は、「データベース名」フィールドにサブシステム名を入力します。オプション: サブシステム (またはデータベース) のローカル別名を入力します。 「了解」をクリックする。 これで、サブシステムをコントロール・センターに正常に追加しました。データベースをオープンすると、DB2 (OS/390 版) サブシステムが表示されます。 セクション「コントロール・センター 390」の最初の段落に次の記載があります。 OS/390 版 の DB2 UDB コントロール・センターでは、IBM DB2 のライセンス・ユーティリティーの使用を管理することができます。 DB2 UDB (OS/390 版) の別個に注文可能な要素であるユーティリティー機能は、 DB2 コントロール・センターで管理する前に、ご使用の環境内でライセンス登録し、インストールする必要があります。 このセクションは次のように変更されました。 OS/390 版 の DB2 コントロール・センターでは、IBM DB2 のライセンス交付を受けたユーティリティーの使用の管理をお客様に許します。DB2 (OS/390 版) の別途注文可能な要素であるユーティリティー機能は、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 つの問題があります。 ||結果の検索に時間がかかる可能性がある。 |結果を保管するために、大量のクライアント・メモリーが必要になる可能性がある。 ||このプロセスを簡単にするために、DB2 は大きな結果セットを分割します。 |DB2 は、一度に 1 つのチャンクの照会結果を検索して表示します。 |この結果、以下のようになります。 ||最初の照会のチャンクを残りのチャンクの検索中に表示できるため、表示時間が削減されます。 |1 つのチャンクの照会結果のみが指定の時刻にクライアントに保管されるため、 |クライアントのメモリー所要量が削減されます。 ||メモリー内の照会結果の行数を制御するには ||「ツール設定」ノートブックの「一般」ページをオープンします。 |「最大サイズ」セクションで、以下を選択します。 ||「サンプル・コンテンツ」ウィンドウに表示される結果行の数を制限するための |「サンプル・コンテンツ」。 |結果セットのチャンク・サイズ (行数) を入力フィールドに指定してください。 |コマンド・センターの「照会結果」ページに表示される結果行の数を制限するための |「コマンド・センター」。 |結果セットのチャンク・サイズ (行数) を入力フィールドに指定してください。 |||「サンプル・コンテンツ」ウィンドウまたはコマンド・センターの「照会結果」ページの |照会の結果を操作すると、照会でメモリーに保持されている行数が |「メモリー内の行」フィールドに示されます。 |この数が、最大サイズ・セットを超えることはありません。 |結果セットの次のチャンクを検索するには、「次へ」をクリックします。 |「次へ」が非アクティブであれば、最後の結果セットに到達したということです。 コマンド・センター |23.1 コマンド・センターの対話式ページでステートメント終止符を認識 |コマンド・センターの対話式ページで、ツール設定で指定されたステートメント終了文字を |認識するようになりました。ステートメント終了文字が指定されていない場合は、 |デフォルトで改行文字が使用されます。 インフォメーション・センター |24.1 Java サンプル・ドキュメントに対する修正 |インフォメーション・センターの Java サンプル・ドキュメントは、Java サンプル・ソースに |リンクしています。このソースの PluginEx.Java セクションは最新ではありません。 |「コントロール・センターの拡張」に関する現行情報は、Java サンプル README ファイル、PluginEx.java ファイル |および 9.3, コントロール・センターの拡張例 を参照してください。 |Windows プラットフォームでは、README ファイルおよび PluginEx.java ファイルは |x:\sqllib\samples\java にあります (x は DB2 がインストールされているドライブです)。 |UNIX では、README ファイルおよび PluginEx.java ファイルは /u/db2inst1/sqllib/samples/java にあります (/u/db2inst1 は DB2 がインストールされているディレクトリーです)。 24.2 Windows オペレーティング・システムでの「無効なショートカット」エラー インフォメーション・センターを使用する場合、次のようなエラーが出される場合があります。「無効なショートカット」。最近、新規の Web ブラウザーあるいは新しいバージョンの Web ブラウザーをインストールした場合、HTML および HTM 文書が正しいブラウザーで関連付けられていることを確認してください。 Windows ヘルプのトピック 「ファイルを開くときに起動するプログラムを変えるには」を参照してください。 24.3 Netscape がすでにオープンしているときに、Netscape Navigator の外部 Web リンクをオープンする (UNIX ベース・システム) Netscape Navigator がすでに開いて、ローカル DB2 HTML ドキュメントか、外部の Web サイトを表示している場合、インフォメーション・センターから外部の Web サイトを開こうとすると Netscape でエラーが発生します。エラーは次のように表示されます。「Netscape は <外部サイト> というファイルまたはディレクトリーを見つけることができません。」 この問題に対処するには、外部の Web サイトを開く前に 開いている Netscape ブラウザーを閉じます。 Netscape が再起動し、外部の Web サイトが表示されます。 このエラーはすでに開いている Netscape で、ローカルの DB2 HTML ドキュメントを開こうとしても起こりませんのでご注意ください。 24.4 インフォメーション・センター開始時の問題 いくつかのシステムで、スタート・メニュー、ファースト・ステップ、または db2ic コマンドを使用してインフォメーション・センターを呼び出すと、開始が遅い場合があります。この問題が発生した場合は、コントロール・センターを開始し、ヘルプ --> インフォメーション・センターを開始します。 ウィザード 25.1 データベース作成ウィザードの拡張サイズの設定 データベース作成ウィザードを使用して、新規データベースのユーザー表スペース (カタログまたは一時表以外) の拡張サイズおよびプリフェッチ・サイズ・パラメーターを設定することができます。この機能は、ウィザードの「ユーザー表」ページのユーザー表スペースに少なくとも 1 つのコンテナーが含まれている場合にのみ使用できます。 |25.2 MQSeries 補助ウィザード | | |DB2 バージョン 7.2 では新しい MQSeries 補助ウィザードが利用できます。 |このウィザードは、 |DB2 MQSeries 関数を使って MQSeries キューから読み取る表関数を作成します。 |DB2 MQSeries 関数も バージョン 7.2 に新規に追加されたものです。このウィザードは、 |それぞれの MQSeries メッセージを、ユーザーの指定によって、区切られたストリング |または固定長列として処理できます。処理された表関数はユーザーの指定にしたがって構文解析し、 |それぞれの MQSeries メッセージをその表関数の行として返します。このウィザードでは、 |表関数の上部に視点を作成したり、MQSeries メッセージや表関数の結果をプレビューする |こともできます。このウィザードは、ストアード・プロシージャー・ビルダーまたは |データウェアハウス・センターから立ち上げることができます。 |このウィザードの要件は以下の通りです。 |MQSeries バージョン 5.2 |MQSeries アプリケーション・メッセージング・インターフェース (AMI) |DB2 MQSeries 関数 ||上記の要件の詳細は、MQSeries を参照してください。 |サンプルおよび MQSeries 補助ウィザード・チュートリアルについては、 |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 ストアード・プロシージャー・ビルダーは、DB2 (OS/390 版) バージョン 6 およびバージョン 7 の |Java ストアード・プロシージャーの作成をサポートするようになりました。 |要件: ||開始する前に、DB2 (OS/390 版) 上でセットアップ・タスクをいくつか実行する必要があります。詳しくは、 |http://www.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 |必要な権限については、40.6.6.1, SQL および Java ストアード・プロシージャーの作成特権およびデバッグ特権 を参照してください。 ||ストアード・プロシージャー・ビルダーを使用して OS/390 用の Java ストアード・プロシージャーを作成するには: ||「Java ストアード・プロシージャーの挿入」ウィザードを開きます。 ||プロジェクト・ツリーの OS/390 データベース接続の下で、ストアード・プロシージャー・フォルダーを右クリックします。 |「挿入 -> ウィザードを使用した Java ストアード・プロシージャー」を選択します。 |ウィザードが開きます。 ||次のように OS/390 オプションを指定してウィザードを完了します。 ||コレクション ID は、JDBC ドライバーが OS/390 でバインドされたときに BIND PACKAGE(collid) で指定されたものと同じでなければなりません。 |Java パッケージは固有でなければなりません。Java パッケージのデフォルトはプロシージャー名 |ですが、サーバー上に作成される各 Java ストアード・プロシージャーごとに固有の名前を付けて、変更することができます。 ||「了解」をクリックします。ストアード・プロシージャーが作成され、プロジェクト・ツリーにリストされます。 |ストアード・プロシージャーを右クリックして、「ビルド」を選択します。 | ビジネス・インテリジェンス 部分目次 ビジネス・インテリジェンス・チュートリアル 26.1 改訂されたビジネス・インテリジェンス・チュートリアル DB2 ユニバーサル・データベース クイック・ツアー |データウェアハウスセンター 管理の手引き |28.1 入手可能な更新 |28.2 ウェアハウス・サーバーの機能強化 |28.3 OS/390 エージェントを使用して Trillium バッチ・システム JCL を実行 |28.4 データウェアハウスセンターの 2 つの新規サンプル・プログラム |28.5 更新された DB2 ウェアハウス・マネージャーによる ETI.Extract(R) 移行プログラム の管理 |28.6 共通ウェアハウス・メタデータ交換 (CWMI) を使用したインポートおよびエクスポート |28.6.1 入門 |28.6.2 メタデータのインポート |28.6.3 インポート・ユーティリティー実行後のメタデータの更新 |28.6.4 メタデータのエクスポート |28.7 タグ言語メタデータ・インポート / エクスポート・ユーティリティー |28.7.1 キー定義 |28.7.2 ステップおよび処理のスケジュール |28.8 SAP ステップ情報 |28.8.1 論理的に矛盾する表が作成される可能がある |28.9 SAP コネクター情報 |28.9.1 SAP コネクター・インストール上の制約事項 |28.9.2 GetDetail BAPI のパフォーマンス DB2 OLAP スターター・キット |29.1 OLAP Server Web サイト |29.2 サポートされるオペレーティング・システム・サービス・レベル 29.3 UNIX での DB2 OLAP スターター・キットを完了する |29.4 Solaris 操作環境用の追加構成 |29.5 すべてのオペレーティング・システム用の追加構成 |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 データ・ソースを構成したら 29.7 OLAP スターター・キット・デスクトップからのログイン 29.7.1 スターター・キットのログインの例 29.8 OLAP スターター・キットのサンプル・データベースを手動で 作成および構成する |29.9 アプリケーションを OLAP スターター・キット・バージョン 7.2 に移行 |29.10 既知の問題および制限事項 29.11 OLAP スプレッドシート・アドイン EQD ファイルの欠落 情報カタログ・マネージャー管理の手引き 30.1 情報カタログ・マネージャー初期設定ユーティリティー 30.1.1 30.1.2 ライセンス交付の問題 30.1.3 インストールの問題 |30.2 情報カタログ・マネージャーの機能強化 |30.3 情報カタログ・マネージャー と Sybase の Windows 環境での非互換性 30.4 DB2 バージョン 7 情報カタログ・マネージャーによる DB2 バージョン 5 情報カタログへのアクセス 30.5 情報カタログのセットアップ 30.6 別の製品とのメタデータの交換 30.7 flgnxoln コマンドでのメタデータの交換 30.8 MDISDGC コマンドでのメタデータの交換 30.9 プログラムの呼び出し 情報カタログ・マネージャー・プログラミングの手引きおよび解説書 31.1 情報カタログ・マネージャー理由コード 情報カタログ・マネージャー 使用者の手引き 情報カタログ・マネージャー: オンライン・メッセージ 33.1 FLG メッセージへの修正 33.1.1 メッセージ FLG0260E 33.1.2 メッセージ FLG0051E 33.1.3 メッセージ FLG0003E 33.1.4 メッセージ FLG0372E 33.1.5 メッセージ FLG0615E 情報カタログ・マネージャー: オンライン・ヘルプ 34.1 Web 用情報カタログ・マネージャー DB2 ウェアハウス・マネージャー インストールの手引き |35.1 入手できる「DB2 ウェアハウス・マネージャー・インストールの手引き」の更新 |35.2 ウェアハウス・トランスフォーマーのソフトウェア要件 |35.3 iSeries エージェントのポストインストールの考慮事項 |35.4 iSeries ウェアハウス・エージェントでトランスフォーマーを使用する前に クエリー・パトローラー管理の手引き 36.1 DB2 クエリー・パトローラー・クライアントの分離コンポーネント |36.2 ノード状況の変更 36.3 dqpmigrate を使用した DB2 クエリー・パトローラーのバージョン 6 からの移行 36.4 照会管理の使用可能化 |36.5 制御表の表スペースのロケーション |36.6 dqpstart コマンドの新しいパラメーター |36.7 iwm_cmd コマンドの新しいパラメーター |36.8 新しいレジストリー変数: DQP_RECOVERY_INTERVAL 36.9 Query Administrator の開始 36.10 ユーザー管理 |36.11 データ・ソース管理 36.12 ジョブ・キューの作成 |36.13 ジョブ・アカウンティング表 36.14 コマンド行インターフェースの使用 36.15 クエリー・イネーブラー注意事項 36.16 ブランク列ページを返すことができる DB2 クエリー・パトローラー・トラッカー |36.17 DB2 クエリー・パトローラー・トラッカー GUI ツールの追加情報 |36.18 クエリー・パトローラーおよびレプリケーション・ツール |36.19 クエリー・パトローラーのパフォーマンス改善 36.20 バージョン 6 で作成されたクエリー・パトローラー・ユーザー用の EXECUTE 特権の消失 36.21 クエリー・パトローラーの制約事項 36.22 付録 B. DB2 クエリー・パトローラー・クライアントのトラブルシューティング ビジネス・インテリジェンス・チュートリアル 26.1 改訂されたビジネス・インテリジェンス・チュートリアル フィックスパック 2 には、バージョン 7.1 に存在したさまざまな問題が訂正された、改訂版のビジネス・インテリジェンス・チュートリアルとデータウェアハウスセンター・サンプル・データベースが組み込まれています。改訂されたデータウェアハウスセンター・サンプル・データベースを適用するには、以下を行ってください。 サンプル・データベースをまだインストールしていない場合は、「ファースト・ステップ」ランチ・パッドを使用して新しいサンプル・データベースを作成します。「スタート」をクリックし、「プログラム」-->「IBM DB2」-->「ファースト・ステップ」を選択してください。 以前にサンプル・データベースをインストールした場合は、サンプル・データベース DWCTBC、TBC_MD、および TBC をドロップしてください。保存したいデータをサンプル・データベースに追加してあった場合は、ドロップする前にバックアップを取っておいてください。3 つのサンプル・データベースをドロップするには、次のようにします。 DB2 コマンド・ウィンドウをオープンするために、「スタート」をクリックし、「プログラム --> IBM DB2 --> コマンド・ウィンドウ」を選択します。 DB2 コマンド・ウィンドウで、次の 3 つのコマンドをそれぞれ入力して、 Enter を押します。 db2 drop database dwctbc db2 drop database tbc_md db2 drop database tbc DB2 コマンド・ウィンドウをクローズします。 「ファースト・ステップ」ランチ・パッドを使用して新しいサンプル・データベースを作成します。「スタート」をクリックし、「プログラム --> 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 には、従属関係問題を報告する際の先行ステップの名前が |含まれるようになりました。 ||フィックスパック 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 ファイルと同じファイル名を持っていますが、 |これは番号の拡張子の付いた個別のファイルです。関連ステップ・ファイルはすべて、 |インポート時には同じディレクトリーになければなりません。 |テストまたは実動モード時のステップの更新 |データウェアハウスセンターがステップのメタデータを更新するためには、 |ステップが開発モードになければなりません。ステップがテストまたは実動モードに |ある場合は、メタデータをインポートする前にステップを開発モードにデモートして |ください。 ||データウェアハウスセンターにログオンします。 |デモートしたいステップを右クリックし、「モード」を |クリックします。 |「開発」をクリックします。 ||これでステップが開発モードになります。メタデータのインポート後、 |ステップをテストまたは実動モードに戻してください。 |データウェアハウスセンターからのデータのインポート |メタデータをデータウェアハウスセンターからインポートすることができます。 ||データウェアハウスセンターにログオンします。 |左のペインで「ウェアハウス」をクリックします。 |「選択」-> |「メタデータのインポート」-> |「ファイルの交換」をクリックします。 |「メタデータのインポート」ウィンドウで、インポートしたいメタデータを含む |ファイル名を指定します。ファイル名を入力するか、またはファイルをブラウズして |探すことができます。 ||場所が分かっている場合は、インポートしたいファイルの完全修飾パスとファイル名を |入力します。メタデータを XML 形式でインポートしたいことを指定するために、 |必ず .xml ファイル拡張子を指定してください。指定しない場合は、 |ファイルが正しく処理されません。 |ファイルをブラウズするには: ||省略符号 (...) プッシュボタンをクリックします。 |「ファイル」ウィンドウで、ファイルの種類を XML に変更します。 |正しいディレクトリーに変更し、インポートしたいファイルを選択します。 |注: ファイルの拡張子は .xml でなければなりません。 ||「了解」をクリックします。 |||「メタデータのインポート」ウィンドウで、 |「了解」をクリックして終了します。 |データウェアハウスセンターがファイルをインポートしている間、 |「進行」ウィンドウが表示されます。 ||コマンド行を使用してメタデータをインポート |コマンド行を使用してメタデータをインポートすることもできます。 |インポート・コマンドの構文は次の通りです。 |CWMImport XML_file dwcControlDB dwcUserId dwcPW [PREFIX = DWCtbschema] | XML_file インポートしたい XML ファイルの完全修飾パスとファイル名 (ドライブ名とディレクトリーを含む)。このパラメーターは必須です。 dwcControlDB メタデータをインポートしたいウェアハウス・コントロール・データベースの名前。このパラメーターは必須です。 dwcUserId ウェアハウス・コントロール・データベースに接続するために使用するユーザー ID。このパラメーターは必須です。 dwcPW ウェアハウス・コントロール・データベースに接続するために使用するユーザー・パスワード。このパラメーターは必須です。 [PREFIX=DWCtbschema] データウェアハウス・センター・システム表のデータベース・スキーマ名。PREFIX= に値が指定されない場合、デフォルトのスキーマ名は IWH になります。このパラメーターはオプションです。 |28.6.3 インポート・ユーティリティー実行後のメタデータの更新 |インポート後のセキュリティーの更新 |セキュリティー上の観点から、データウェアハウスセンターはパスワードを |インポートまたはエクスポートしません。新しいオブジェクトに対して、必要に応じて |パスワードを更新する必要があります。インポートの考慮事項について詳しくは、 |「データウェアハウスセンター管理の手引き 」、第 12 章、 |「データウェアハウスセンター・メタデータのエクスポートおよびインポート」を |参照してください。 |メタデータをインポートすると、すべてのオブジェクトがデフォルト・セキュリティー・グループ に割り当てられます。 |オブジェクトに対してアクセス権を持つグループを変更することができます。 ||データウェアハウスセンターにログオンします。 |変更したいオブジェクトを含むフォルダーを右クリックします。 |「プロパティー」をクリックし、次に |「セキュリティー」タブをクリックします。 |「選択ウェアハウス・グループ」リストから |グループを除去するか、または「使用可能ウェアハウス・グループ」リストから |グループを追加します。 |「了解」をクリックします。 ||28.6.4 メタデータのエクスポート |メタデータは、データウェアハウスセンターから、またはコマンド行から |エクスポートすることができます。 |一部のステップは、BLOB として保管されたメタデータを持っています。 |BLOB メタデータは、ステップの XML と同じファイル名を持つ個別のファイルにエクスポートされますが、 |拡張子には番号が付けられます (.1、.2、以下同様)。 |データウェアハウスセンターからのデータのエクスポート |メタデータをデータウェアハウスセンターからエクスポートすることができます。 ||データウェアハウスセンターにログオンします。 |左のペインで「ウェアハウス」をクリックします。 |「選択 -> メタデータのエクスポート-> ファイルの交換」を |クリックします。 |「メタデータのエクスポート」ウィンドウで、エクスポートしたいメタデータを含む |ファイル名を指定します。ファイル名を入力するか、またはファイルをブラウズして |探すことができます。 ||使用したいファイルの完全修飾パスとファイル名が分かっている場合は、 |「ファイル名」入力フィールドに入力します。 |メタデータを XML 形式でエクスポートしたいことを指定するために、 |必ず .xml ファイル拡張子を指定してください。 |ファイルをブラウズするには: ||省略符号 (...) プッシュボタンをクリックします。 |「ファイル」ウィンドウで、 |ファイルの種類を XML に変更します。 |正しいディレクトリーに変更し、エクスポートしたいファイルを選択します。 | |注: 選択した既存ファイルは、いずれもエクスポートされるメタデータで |上書きされます。 ||「了解」をクリックします。 |||「メタデータのエクスポート」ウィンドウに正しいファイル名が表示されたら、 |「使用可能オブジェクト」リストでエクスポートしたい |メタデータを持つオブジェクトをクリックします。 |> 記号をクリックして、選択したオブジェクトを |「使用可能オブジェクト」リストから |「選択オブジェクト」リストへ移動します。 |エクスポートしたいオブジェクトがすべて「選択オブジェクト」リストに |リストされるまで、上記を繰り返してください。 |「了解」をクリックします。 ||データウェアハウスセンターは、エクスポートすることを選択した |データウェアハウスセンター・オブジェクトに関する情報を含む |入力 ファイルを作成し、次に |これらのオブジェクトに関するメタデータをエクスポートします。 |データウェアハウスセンターがファイルをエクスポートしている間、 |進行ウィンドウが表示されます。 |コマンド行を使用してメタデータをエクスポート |メタデータをコマンド行からエクスポートするには、まず |入力 ファイルを作成しておかなければなりません。 |入力ファイルは拡張子が .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 論理的に矛盾する表が作成される可能がある |次の条件がすべて満たされた場合、論理的に整合性が保たれていないターゲット表が作成される |可能性があります。 ||BO に GetList および GetDetail エクスポート・パラメーターがあり、すべてのキー・フィールド |をマップしている。 |SAP ステップの「プロパティー」ノートブックの「出力パラメーター」ページ上で、 |パラメーター・マッピングに使用された SAP パラメーター名と異なるパラメーター名の GetList エクスポート・ |パラメーターを選択している。 | |注: 「SAP パラメーター名」とは、完全修飾名のピリオドの前に表示される、パラメーター |の一部を指します。たとえば、DocList.DOCNUMBER パラメーターの場合、"DocList" が SAP パラメーター |名です。 ||SAP ステップの「プロパティー」ノートブックの「出力パラメーター」ページで、 |GetDetail エクスポート・パラメーターを選択している。 ||例: |DocumentNumber はキー・フィールドです。DocList.DOCNUMBER および DocNumberSelection.OPTION |は GetList エクスポート・パラメーターです。DocData.USERNAME は GetDetail エクスポート・パラメーターです。 |DocumentNumber を DocList.DOCNUMBER にマップします。(条件 1) |出力パラメーターとして DocNumberSelection.OPTION を選択します。(DocNumberSelection と |DocList は異なる SAP パラメーター名なので、条件 2 に該当します。) |出力パラメーターとして DocData.USERNAME を選択します。(これは GetDetail エクスポート・ |パラメーターなので、条件 3 に該当します。) |これらの条件より、列のソースが GetList および GetDetail パラメーターであるターゲット表 |が作成されます。ただし、列間の関連の論理的な整合性は保証されません。 |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. | |このエラーを訂正するには、次のステップを実行します。 |DB2 インスタンス所有者としてログオンする。 |DB2 OLAP スターター・キットをインストールしたディレクトリーを検索する。 この |ディレクトリーのデフォルト名は、essbase です。 |essbase ディレクトリーに java という名の |サブディレクトリーを作成する。 |java サブディレクトリーに |次の空ファイルを作成する。 |essbase.jar |essdefs.dtd |jaxp.jar |parser.jar |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 ファイルへの追加 ||OLAP スターター・キット・サーバーを実行しているシステムで、vi などの |テキスト・エディターを使用して odbc.ini ファイルを開きます。 |[ODBC Data Sources] で始まっているセクションを見つけて、 mydata=data source for analysis など、 |データ・ソースの名前と説明を記述する新しい行を追加します。なるべく混乱しないように、データ・ソースの名前は、 |RDBMS にあるデータベースの名前と一致させます。 |[mydata] など、大括弧で囲まれた新しいデータ・ソースの名前を記述する新しい行を |作成して、ファイルに新しいセクションを追加します。 |データ・ソース名に続く行で、このデータ・ソースおよびその他の必須の ODBC ドライバー情報に |対する全パスとファイル名を追加します。以下のセクションで紹介する例をガイドラインとして使用して、 |RDBMS のデータ・ソースにマップしてください。Driver= 設定に指定するロケーションに |ODBC ドライバー・ファイルが実際に存在することを確認してください。 |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 でリレーショナル・データ・ソースを構成するには、 |以下のステップを実行します。 |Windows デスクトップで、「コントロール・パネル」ウィンドウを開く。 |「コントロール・パネル」ウィンドウで、以下のステップの 1 つを実行する。 |Windows NT で、ODBC アイコンをダブルクリックし、 |「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスを開く。 |Windows 2000 で、管理ツール アイコンを |ダブルクリックしてから、データ・ソース (ODBC) アイコンを |ダブルクリックし、「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスを開く。 ||「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスで、 |「システム DSN」タブをクリックする。 |「追加」をクリックして、 |「データ・ソースの新規作成」ダイアログ・ボックスが開く。 |ODBC Administrator の「データ・ソースの新規作成」ダイアログ・ボックスで、 |IBM DB2 ODBC Driver などの適切なドライバーを選択し、 |「完了」をクリックして、 |「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスを開く。 |「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスの |「データベース別名」ドロップダウン・リストで、 |適切なリレーショナル・ソース・データのデータベースの名前 |(たとえば、サンプル・アプリケーションの TBC) を選択する。 |「説明」テキスト・ボックスで、 |このドライバーの使用方法を示す任意の説明を入力し、「追加」を |クリックする。たとえば、My Business データベースを示すには次のような説明を |入力します。 |Customers, products, markets |次のワードを入力すれば、 |サンプル・アプリケーション・データベースを示すことができます。 |リレーショナル・データ・ソースのサンプル |説明の中には、 |「OLAP Starter Kit Desktop」から接続するとき、選択可能なデータ・ソースを |特定するヒントがあります。 |「了解」をクリックし、「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスに |戻る。入力したデータ・ソース名およびデータ・ソース名にマップしたドライバーが |「システム DSN」タブの |「システム・データ・ソース」リスト・ボックスに |表示されます。 ||データ・ソースの構成情報を編集するには、以下の通りにします。 |データ・ソース名を選択し、「構成」をクリックして、 |「ODBC IBM DB2 - 追加」ダイアログ・ボックスを開く。 |変更したい情報を訂正する。 |「了解」を 2 回クリックし、終了する。 ||29.6.4 Windows システムでの OLAP メタデータ・カタログの構成 |Windows NT または Windows 2000 で OLAP メタデータ・カタログを構成するには、 |ODBC Administrator を実行してから、OLAP メタデータ・カタログ・データベースが |含まれるデータ・ソースとの接続を作成します。 |次の例で DB2 データ・ソースを作成します。 |ほかの RDBMS のダイアログ・ボックスは異なることがあります。OLAP メタデータ・カタログの |データ・ソースを作成するには、次のステップを実行します。 |デスクトップで、「コントロール・パネル」ウィンドウを開く。 |「コントロール・パネル」ウィンドウで、以下のステップの 1 つを実行する。 |Windows NT で、ODBC アイコンをダブルクリックし、 |「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスを開く。 |Windows 2000 で、管理ツール アイコンを |ダブルクリックしてから、データ・ソース (ODBC) アイコンを |ダブルクリックし、「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスを開く。 ||「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスで、 |「システム DSN」タブをクリックする。 |「追加」をクリックして、 |「データ・ソースの新規作成」ダイアログ・ボックスが開く。 |ODBC Administrator の「データ・ソースの新規作成」ダイアログ・ボックスで、 |IBM DB2 ODBC Driver などの適切なドライバーを選択し、 |「完了」をクリックして、 |「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスを開く。 |「データベース別名」ドロップダウン・リストの、 |「ODBC IBM DB2 ドライバー - 追加」 ダイアログ・ボックスで、 適切な OLAP メタデータ・カタログの |データベースの名前 (たとえば、サンプル・アプリケーションの TBC_MD) を選択する。選択したデータベースの |名前は、「データ・ソース名」テキスト・ボックスに |自動的に表示されます。 |データ・ソースの名前を変更したいときには、 |「データ・ソース名」テキスト・ボックスに |表示されている名前を選択して、このドライバーの使用方法を示す名前を入力し、 |「追加」をクリックする。たとえば、次のような名前を |入力すれば、最初の OLAP メタデータ・カタログに接続するためにそのドライバーを |使用していることを示せるでしょう。 |OLAP Catalog first |サンプル・アプリケーション OLAP メタデータ・カタログの |データベースに接続していることを示すには、次の名前を入力すればよいでしょう。 | TBC_MD |「説明」テキスト・ボックスで、 |このドライバーの使用方法を示す説明を入力する。たとえば、OLAP メタデータ・カタログを説明するには、 |次のような記述を入力します。 |最初のモデルとメタアウトライン |次のような説明を入力すれば、サンプル・アプリケーション OLAP メタデータ・カタログ・データベースを |記述できるでしょう。 |サンプルのモデルとメタアウトライン |上記のような説明は、OLAP スターター・キット・デスクトップから |OLAP メタデータ・カタログに接続するときに選択する対象のカタログを特定する |ヒントとなります。 |「了解」をクリックし、「ODBC データ・ソース・アドミニストレーター」ダイアログ・ボックスに |戻る。入力したデータ・ソース名およびデータ・ソース名にマップしたドライバーが |「システム DSN」タブの |「システム・データ・ソース」リスト・ボックスに |表示されます。 ||データ・ソースの構成情報を編集するには、以下の通りにします。 |データ・ソース名を選択し、「構成」をクリックして、 |「ODBC IBM DB2 - 追加」ダイアログ・ボックスを開く。 |変更したい情報を訂正する。 |「了解」を 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 スターター・キットをインストールするときに自動的に作成されます。以下の説明は、必要な場合に、カタログおよびサンプル・データベースのセットアップを手動で行う方法を示します。 Windows 上で、「スタート --> プログラム --> DB2 (Windows NT 版) --> コマンド・ウィンドウ」を開きます。 実動カタログ・データベースを作成します。 次のように入力: db2 create db OLAP_CAT 次のように入力: db2 connect to OLAP_CAT データベースに表を作成します。 \SQLLIB\IS\ocscript\ocdb2.sql に移動します 次のように入力: db2 -tf ocdb2.sql サンプル・ソース・データベースを作成します。 次のように入力: db2 connect reset 次のように入力: db2 create db TBC 次のように入力: db2 connect to TBC データベースに表を作成します。 \SQLLIB\IS\samples\ に移動します tbcdb2.sql を \SQLLIB\samples\db2sampl\tbc にコピーします lddb2.sql を \SQLLIB\samples\db2sampl\tbc にコピーします \SQLLIB\samples\db2sampl\tbc に移動します 次のように入力: db2 -tf tbcdb2.sql db2 - vf lddb2.sql と入力して、サンプル・ソース・データを表にロードします。 サンプル・カタログ・データベースを作成します。 次のように入力: db2 connect reset 次のように入力: db2 create db TBC_MD 次のように入力: db2 connect to TBC_MD データベースに表を作成します。 \SQLLIB\IS\samples\tbc_md に移動します ocdb2.sql を \SQLLIB\samples\db2sampl\tbcmd にコピーします lcdb2.sql を \SQLLIB\samples\db2sampl\tbcmd にコピーします \SQLLIB\samples\db2sampl\tbcmd に移動します 次のように入力: db2 -tf ocdb2.sql db2 -vf lcdb2.sql と入力して、サンプル・メタデータを表にロードします。 TBC_MD、TBC、および OLAP_CAT 用の ODBC を構成します。 「スタート --> 設定 --> コントロール パネル」をクリックして NT コントロール パネルを開きます リストから ODBC (または ODBC データ・ソース) を選択します。 「システム DSM」タブを選択します。 「追加」をクリックします。「データ・ソースの新規作成」ウィンドウが開きます。 リストから「IBM DB2 ODBC DRIVER」を選択します。 「完了」をクリックします。「ODBC IBM DB2 ドライバー - 追加」ウィンドウが開きます。 データ・ソースの名前 (OLAP_CAT) を「データ・ソース名」フィールドに入力します。 別名を「データベース別名」フィールドに入力するか、あるいは下矢印をクリックして、リストから「OLAP_CAT」を選択してください。 「了解」をクリックします。 これらのステップを 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 ステートメントに追加する必要があります。 ||C:\Informix |C:\Informix\bin ||これらの 2 行とも、PATH の先頭に入力してください。 |OLAP モデルと、関連するメタアウトラインのディメンションに矛盾が生じる |ある条件のもとでは、OLAP モデルで対応するディメンションがないメタアウトラインに、 |ディメンションを作成することができます。このディメンションの矛盾は以下のシナリオで起こりえます。 ||新しい OLAP モデルを作成し、それを保存する。 |このモデルをベースにメタアウトラインを作成し、そのメタアウトラインを保存しない。 |OLAP モデルに戻り、上記のメタアウトラインのディメンションのうちの 1 つのベースとなっている |ディメンションを削除する。 |メタアウトラインに戻り、それを保存し、クローズしてから、再オープンする。メタアウトラインには、 |OLAP モデルでは対応するディメンションが存在しないディメンションが含まれます。 ||OLAP スターター・キットは、このような方法で作成されたディメンションと、 |メタアウトラインのユーザー定義のディメンションとの矛盾を見分けることができません。したがって、 |矛盾するディメンションがメタアウトラインに表示されますが、OLAP モデルには対応する |ディメンションが存在しないため、メタアウトラインはそれをユーザー定義のディメンションと |見なします。 |Windows 2000 プラットフォームで TMP 環境変数が原因で、メンバーおよび |データのロードが失敗する |Windows 2000 と Windows NT の間では、TMP のデフォルト・システムおよび |ユーザー環境設定値が異なります。そのため、OLAP スターター・キットが |Windows 2000 プラットフォームで実行しているとき、メンバーおよびデータのロードが |失敗します。その結果として、一時ファイルが作成できなかったことを示す |エラー・メッセージが表示されます。以下のステップを実行すると、Windows 2000 での |この制限を回避することができます。 ||ディレクトリー C:\TEMP を作成する |システムおよびユーザーの環境変数 TMP を TMP=C:\TEMP に設定する ||ODBC をインストールしても、既存の Merant ドライバーが置き換えられない |ODBC をインストールしても、既存の 3.6 Merant ODBC ドライバーは |更新されません。OLAP スターター・キット・バージョン 7.1、フィックスパック 2 以前のバージョンから |アップグレードする場合には、以前にインストールした ODBC ドライバーを継続して使用してください。 |UNIX プラットフォームで Merant Informix ODBC ドライブを使用する |UNIX プラットフォームで Merant Informix ODBC ドライバーを使用するには、 |以下のいずれかを実行する必要があります。 ||スターター・キットを起動する前に、LANG 環境変数を "en_US" に |設定する。たとえば、Korn シェルの場合、次のように入力します。 |export LANG='en_US' |OLAP スターター・キットを起動するたびに、この変数を設定します。 |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 ACCOUNT_IDX ACCOUNTING 内のデータおよび 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 データベースに格納されている情報カタログにアクセスするための情報カタログ初期化ユーティリティーをセットアップするには: DB2 コネクト エンタープライズ・エディション バージョン 6 を、 DB2 バージョン 7 情報カタログ・マネージャーがインストールされているワークステーション以外のワークステーションにインストールします。 DB2 コネクト エンタープライズ・エディションは、DB2 ユニバーサル・データベース・エンタープライズ・エディションおよび DB2 ユニバーサル・データベース・エンタープライズ - 拡張エディションの一部として組み込まれています。これらの DB2 製品のいずれかのバージョン 6 がインストールされていれば、別に DB2 コネクトをインストールする必要はありません。 制約事項: 同じ Windows NT または OS/2 ワークステーションに、DB2 の複数バージョンをインストールすることはできません。DB2 コネクトを別の Windows NT ワークステーション、 OS/2 または UNIX ワークステーションにインストールすることは可能です。 DB2 バージョン 5 のデータにアクセスするため、情報カタログ・マネージャー、および DB2 コネクト バージョン 6 を構成します。詳しくは、「DB2 コネクト 使用者の手引き」を参照してください。以下のステップは必要なステップの概説です。 DB2 バージョン 5 システムで、DB2 コマンド行プロセッサーを使用して、情報カタログ・マネージャーがアクセスするバージョン 5 データベースをカタログします。 DB2 コネクト・システムで、DB2 コマンド行プロセッサーを使用して、以下をカタログします。 DB2 バージョン 5 システムの TCP/IP ノード DB2 バージョン 5 システムのデータベース DB2 バージョン 5 システムの DCS 項目 情報カタログ・マネージャーを持つワークステーションで、DB2 コマンド行プロセッサーを使用して、以下をカタログします。 DB2 コネクト・システムの TCP/IP ノード DB2 コネクト・システムのデータベース データベースのカタログに関する詳細は、「DB2 ユニバーサル・データベース インストールおよび構成補足」を参照してください。 情報カタログ・マネージャーを持つウェアハウスで、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 またはそれ以降を、 |ウェアハウス・トランスフォーマーを使用したいデータベースにインストールする必要があります。 | |35.3 iSeries エージェントのポストインストールの考慮事項 | |第 4 章の「AS/400 (iSeries) ウェアハウス・エージェントのインストール」の |セクションの「ポストインストールの考慮事項」サブセクションで、 |最初の段落を次のように変更します。 ||ウェアハウス・エージェントは、すべてのステップ機能を単一の作業単位で |実行します。V4R5 より前においては、DB2 ユニバーサル・データベース(iSeries 版)は |単一コミット有効範囲内で挿入できる行数を 400 万に制限していました。 |この制限は V4R5 では 5 億行まで増やされました。V4R4 (またはこれ以前の) システムを |使用していて、照会がこのサイズを超える場合は、照会を分割するか、ウェアハウスが |提供する FTP プログラムを使用してデータを移動してください。 | |35.4 iSeries ウェアハウス・エージェントでトランスフォーマーを使用する前に | |第 4 章、「iSeries エージェントでのトランスフォーマーの使用前」と、その |すべてのサブセクションを除去します。 クエリー・パトローラー管理の手引き 36.1 DB2 クエリー・パトローラー・クライアントの分離コンポーネント DB2 クエリー・パトローラー・クライアントは、DB2 管理クライアントの部品ではない分離コンポーネントです。これは、「クエリー・パトローラー・インストールの手引き」に指示されているように、 DB2 管理クライアントのインストール中にはインストールされないことを意味します。その代わり、クエリー・パトローラー・クライアントを別々にインストールする必要があります。 |クエリー・パトローラー・クライアントとクエリー・パトローラー・サーバーの |バージョンおよびレベルは同じでなければなりません。 |36.2 ノード状況の変更 |「クエリー・パトローラー管理の手引き」の「ノード管理」セクションで、 以下の内容が更新されました。 | |ノード状況を変更するには、以下の手順にしたがってください。 ||「ノード管理」ページで、「ノード」を選択します。 |「表示 / 編集」をクリックします。 |「ノードの詳細情報」ウィンドウが開きます。 |「要求状況」フィールドで新規状況を選択します。 |注: 要求状況 |は、「ノードの詳細情報」ウィンドウの中で、変更可能な唯一のフィールドです。 その他のフィールドはすべて、DB2 クエリー・パトローラーによって提供される値を表示しています。 ||「OK」をクリックします。 ||以下のリストは、ノード・パラメーターごとの情報を提供します。 ||ノード ID |ノードの ID を提供します。 |ノード状況 |現行ノード状況を含みます。 ||「アクティブ」は、ノードでジョブが実行可能であることを示します。 |「非アクティブ」は、ノードの「DB2 クエリー・パトローラー」 |コンポーネントがシャットダウンしていることを示します。ノードは DB2 クエリー・パトローラーで利用不能です。ノードを |再びアクティブにするには、iwm 管理ユーザー・アカウントを |使用して dqpstart コマンドを発行します。 |「静止中」は、ノードが静止状態になろうとしていることを示します。実行中のジョブは完了しますが、ノードでスケジュールされる新規ジョブはありません。 |「静止」は、ノードが静止していることを示します。 |ノードは DB2 クエリー・パトローラーで使用可能ですが、そのノードにスケジュールされている新規ジョブはありません。 ||要求状況 |ノード状況が以下の状況に変更されることを示します。 ||「アクティブ」は、ノードがアクティブになることを示します。 |「非アクティブ」は、ノードが非アクティブになることを示します。 |実行中のジョブは完了し、スケジュールされる新規ジョブはありません。 |「強制」は、ノードが即時に非アクティブになることを示します。実行中のジョブは即時に終了し、スケジュールされる新規ジョブはありません。 |「静止」は、ノードが静止状態になることを示します。 |実行中のジョブは完了します。 ||状況の最終変更日時 |ノード状況の最終変更日時を示します。 |スケジュールされたジョブ |実行がスケジュールされたジョブ数と、このノードで実行中のジョブ数を提供します。 |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 権限を付与するには、フィックスパックの実行後に以下を実行してください。 次のコマンドを入力して、/sqllib/bnd/dqpmigrate.bnd パッケージ・ファイルを、クエリー・パトローラー・サーバーがインストールされているデータベースにバインドします。 db2 bind dqpmigrate.bnd 次を入力して、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 パラメーターを指定して実行する前に、 |以下の項目を確認してください。 ||DB2 クエリー・パトローラーが、置換されるホストですでに停止されている。 |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 データ・ソース管理 |第 3 章「DB2 クエリー・パトローラーを管理する Query Administrator の使用」では、 |一部のデータ・ソース・パラメーターについての記述が変更または追加されています。 |静的コストは、照会の DB2 見積コスト(タイマーオン単位)です。このコストは、各ジョブのジョブ入力に保管されます。これは、 |照会モニターを使用してジョブの詳細を参照するときに「見積コスト」として示されます。 |ゼロ・コスト照会は、ゼロの静的コスト、または見積コスト、による |照会です。実際に見積コストがゼロの照会はありません(どんなに簡単な照会 |でも、コストは 5 程度かかります)。むしろこれが発生するのは、ジョブを「コスト分析を行なわない」オプションを |指定して実行依頼した場合です。このオプションを選択できるのは、それが可能なようにユーザー・プロファイルを |セットアップしておいた場合だけです。たいていの場合は、ユーザー・プロファイルを |このようにはセットアップしません。このオプションの指定は、スーパーユーザー(他の管理者、選択した |特別のユーザー、またはご自身など)用にする必要があります。そうすれば、これらのユーザーはどのような照会も実行できます。これらのユーザーが出す照会はゼロ・コストと |して扱われるため、照会の優先順位は高くなります。 |コスト時間ゼロ、コスト時間スロープ、コスト時間間隔、および最小コスト時間は |もう使用されません。 |コスト係数は、タイマーオン単位の静的コストを変換するための乗数であり、 |アカウンティング表の中のコストではありません。アカウンティング表の中のコストは、 |静的コストにコスト係数を乗じた値と等しくなります。 36.12 ジョブ・キューの作成 「DB2 クエリー・パトローラーを管理する QueryAdministrator の使用」章の「ジョブ・キュー管理」セクションでは、「ジョブ・キューの作成」ステップの画面取りは第 2 ステップ後に表示されます。 QueryAdministrator ツールのジョブ・キュー管理ページで、「新規」をクリックする場合、新しい「ジョブ・キュー」ウィンドウについての情報が開きます。 ジョブ・キュー・ページあるいはジョブ・キュー・タブを参照するには、それぞれジョブ・キュー管理ページあるいはジョブ・キュー管理タブを読んでください。 |36.13 ジョブ・アカウンティング表 |第 11 章「DB2 クエリー・パトローラー・システムのモニター」のジョブ・アカウンティングのセクションにジョブ・アカウンティング表の列の説明があります。テーブル名は IWM.IWM003_JOB_ACCT です。 36.14 コマンド行インターフェースの使用 DB2 クエリー・パトローラー・システムで照会を実行以来および結果表を作成するためのユーザー権限を持っている場合は、データベース上で CREATETAB 権限が必要となります。DQP_RES_TBLSPC プロファイル変数が未設定の場合か、あるいは DQP_RES_TBLSPC プロファイル変数がデフォルト表スペースの名前に設定されている場合、ユーザーはデータベースの CREATETAB 権限を必要としません。ユーザーはデフォルト表スペースに表を作成するための権限を持っているので、この場合は結果表の作成は成功します。 36.15 クエリー・イネーブラー注意事項 キーセット・カーソルを使用する第三者の照会ツールを使用する場合、照会はインターセプトされません。クエリー・イネーブラーに対して照会をインターセプトするためには、以下を含むために db2cli.ini ファイルを変更する必要があります。 [common] DisableKeySetCursor=1 AIX クライアントの場合、環境変数 LIBPATH がセットされないことを確認してください。 JDK で出荷されているライブラリー libXext.a は、/usr/lib/X11 サブディレクトリーのライブラリーと互換性がありません。クエリー・イネーブラー GUI で問題が起こります。 36.16 ブランク列ページを返すことができる DB2 クエリー・パトローラー・トラッカー フィックスパック 3 には DB2 クエリー・パトローラー・トラッカーの修正が含まれています。トラッカーは、列にヒットしない照会を正しくレポートします。このような照会の例としては、"SELECT COUNT(*) FROM ..." などがあります。. この種の照会は、表にあるいずれの列にもヒットしません。トラッカーは列ページとしてブランク・ページを表示します。このブランク列ページは不良とは見なされません。 |36.17 DB2 クエリー・パトローラー・トラッカー GUI ツールの追加情報 |アカウンティング表は、履歴ジョブ・データを表示または解析するのに使用するとき、 |トラッカー・ツールによって使用されます。トラッカーを使用するには、管理者は、まず最初に Query Administrator を |使用して「システム管理」パネルのアカウンティング状況を「テーブルへの書き込み」に |変更する必要があります。これにより、ジョブ完了時には常に、 |追加の情報がジョブ・アカウンティング表に保管されます。 |次に、管理者はクエリー・パトローラー・サーバーにユーザー iwm で |ログオンし、iwm_tracker (トラッカー・バックエンド) ツールを実行します。このツールは、 |システム負荷が低い時、またはトラッカー・ツールを使用する直前に、定期的に実行する |必要があります。 |最後に、これらの 2 つのタスクが終了すると、トラッカー GUI ツールを実行して、ジョブ・データの |表示と解析が可能になります。 |コスト係数がデフォルト値の場合は、トラッカーを使用する各ジョブについて表示される |コストは、照会モニターを使用して表示されるコストと |同じ値になります。どちらの場合も、時間はタイマーオン単位の表示です。 |しかしながら、値を別の単位で表示したい場合があります。システム使用量を各ユーザー別に請求するとします。たとえば、 |課金が 10 000 作業タイマーオンについて 1 ドルとすれば、コスト係数 0.0001 と入力します。これによりトラッカーは各ジョブの変換、保管、および表示のコストをドル単位で示します。 |「Query Patroller Administration Guide 」には、メガバイト単位のドル |が記載されていますが、これは誤りで、タイマーオン単位のドルに |置き換える必要があります。 |36.18 クエリー・パトローラーおよびレプリケーション・ツール |クエリー・パトローラー バージョン 7 はレプリケーション・ツール (asnapply、 |asnccp、djra、および analyze) の照会をインターセプトし、これらのツールに誤動作を発生させます。 |この問題を回避するには、これらのツールを実行するときは動的照会管理を使用不可にします。 |36.19 クエリー・パトローラーのパフォーマンス改善 |次のテキストが、第 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.20 バージョン 6 で作成されたクエリー・パトローラー・ユーザー用の EXECUTE 特権の消失 新規のストアード・プロシージャー (IWM.DQPGROUP、IWM.DQPVALUR、 IWM.DQPCALCT、および IWM.DQPINJOB) がクエリー・パトローラー バージョン 7 に追加されたため、バージョン 6 で作成された既存のユーザーは、このパッケージでの EXECUTE 権限を保持しません。この問題を自動的に訂正するアプリケーションが、フィックスパック 1 に追加されています。 DQP ユーザー情報を変更するために DQP Query Admin を使用しようとする場合には、ユーザー・リストから既存のユーザーを除去しないようにしてください。 36.21 クエリー・パトローラーの制約事項 JVM (Java 仮想計算機) のプラットフォーム制限により、照会イネーブラーは、HP-UX および NUMA-Q ではサポートされていません。また、クエリー・パトローラー・トラッカーは NUMA-Q ではサポートされていません。クエリー・パトローラー・クライアント・ツールのすべてが必要な場合、 HP-UX または NUMA-Q サーバーに対して、このツールを実行するには、Windows NT などの別のプラットフォームを使用することをお勧めします。 36.22 付録 B. DB2 クエリー・パトローラー・クライアントのトラブルシューティング 付録 B 「DB2 クエリー・パトローラー・クライアントのトラブルシューティング」の「照会イネーブラーの一般的な問題」章の問題 2 に記述されている最初の中黒のテキストを次のテキストに置き換えてください。 パス設定に jre が含まれることを確認します。 アプリケーション開発 部分目次 管理 API 解説書 37.1 db2ArchiveLog (新規 API) db2ArchiveLog 37.2 db2ConvMonStream 37.3 db2DatabasePing (新規 API) db2DatabasePing - データベースの Ping 37.4 db2HistData 37.5 db2HistoryOpenScan 37.6 db2XaGetInfo (新規 API) db2XaGetInfo - リソース・マネージャー用情報の取得 37.7 db2XaListIndTrans (sqlxphqr を 入れ替える新規 API) db2XaListIndTrans - 未確定トランザクションをリストする 37.8 db2GetSnapshot - スナップショットの取得 |37.9 ログ・レコードの喪失 37.10 sqlaintp - エラー・メッセージの取得 37.11 sqlbctcq - 表スペース・コンテナー照会のクローズ |37.12 sqleseti - クライアント情報の設定 37.13 sqlubkp - データベースのバックアップ 37.14 sqlureot - 表の再編成 37.15 sqlurestore - データベースのリストア 37.16 AIX 拡張共有メモリー・サポートに関するドキュメンテーション・エラー (EXTSHM) 37.17 SQLFUPD 37.17.1 locklist 37.18 SQLEDBDESC DB2 アプリケーション構築の手引き |38.1 入手可能な更新 |38.2 コンパイルされた SQL プロシージャーの配布についての追加情報 |アプリケーション開発の手引き |39.1 入手可能な更新 |39.2 executeQuery および executeUpdate に対する新しい要件 |39.3 追加されたメソッドに対する JDBC ドライバーのサポート |39.4 |39.5 IBM OLE DB Provider (DB2 UDB 版) CLI の手引きおよび解説書 40.1 ランタイム・クライアントを使用するデータベース・ユーティリティーのバインド 40.2 CLI アプリケーションで静的 SQL の使用 40.3 JDBC/ODBC/CLI 静的プロファイル の制限 40.4 ADT トランスフォーム |40.5 第 1 章 CLI の概要 |40.5.1 DB2 CLI と組み込み SQL の相違 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 SQL および Java ストアード・プロシージャーの作成特権およびデバッグ特権 40.6.6.2 CLI でのストアード・プロシージャーの記述 40.6.6.3 CLI ストアード・プロシージャーおよび自動バインド 40.7 第 4 章 CLI/ODBC の構成とサンプル・アプリケーションの実行 |40.7.1 構成キーワード |40.7.1.1 CURRENTFUNCTIONPATH |40.7.1.2 SKIPTRACE 40.8 第 5 章 DB2 CLI 関数 40.8.1 SQLBindFileToParam - LOB ファイル参照を LOB パラメーターにバインド |40.8.2 SQLColAttribute -- 列属性を戻す |40.8.3 SQLGetData - 列からのデータの入手 |40.8.4 SQLGetInfo - 一般情報の取得 |40.8.5 SQLGetLength - ストリング値の長さの検索 40.8.6 SQLNextResult - 次の結果セットを別のステートメント・ハンドルに関連付ける 40.8.6.1 目的 40.8.6.2 構文 40.8.6.3 関数の引き数 40.8.6.4 使用法 40.8.6.5 戻りコード 40.8.6.6 診断 40.8.6.7 制約事項 40.8.6.8 参照 |40.8.7 SQLSetEnvAttr - 環境属性の設定 |40.8.8 SQLSetStmtAttr -- ステートメント関連のオプションの設定 |40.9 付録 C. DB2 CLI および ODBC |40.9.1 ODBC ユニコード・アプリケーション |40.9.1.1 ODBC ユニコードと非ユニコード・アプリケーション 40.10 付録 D 拡張スカラー関数 40.10.1 日時関数 40.11 付録 K DB2 CLI/ODBC/JDBC トレース機能の使用 |メッセージ解説書 |41.1 入手可能な更新 |41.2 メッセージの更新 |41.3 オンラインでのメッセージ・テキストの読み取り SQL 解説書 |42.1 入手可能な SQL 解説書 の更新 |42.2 新しい関数とプロシージャーの使用可能化 |42.3 SET SERVER OPTION - 資料のエラー |42.4 GRANT (表、視点、またはニックネーム特権) - 資料のエラー 42.5 MQSeries 情報 42.5.1 スカラー関数 |42.5.1.1 MQPUBLISH |42.5.1.2 MQREADCLOB |42.5.1.3 MQRECEIVECLOB |42.5.1.4 MQSEND 42.5.2 表関数 |42.5.2.1 MQREADALLCLOB |42.5.2.2 MQRECEIVEALLCLOB |42.5.3 MQSeries 関数でサポートされるようになった CLOB データ 42.6 データ・タイプ情報 42.6.1 データ・タイプのプロモーション 42.6.2 データ・タイプ間のキャスト 42.6.3 割り当てと比較 42.6.3.1 ストリング割り当て 42.6.3.2 ストリング比較 42.6.4 結果データ・タイプの規則 42.6.4.1 ユニコード・データベースの文字および漢字ストリング 42.6.5 ストリング変換の規則 42.6.6 式 42.6.6.1 連結演算子 42.6.7 述部 |42.7 ユニコード情報 |42.7.1 スカラー関数およびユニコード |42.8 GRAPHIC タイプと DATE/TIME/TIMESTAMP の互換性 |42.8.1 日時値のストリング表記 |42.8.1.1 日付ストリング、時刻ストリング、および日時ストリング |42.8.2 データ・タイプ間のキャスト |42.8.3 割り当てと比較 |42.8.4 日時の割り当て |42.8.5 DATE |42.8.6 GRAPHIC |42.8.7 TIME |42.8.8 TIMESTAMP |42.8.9 VARGRAPHIC 42.9 ユニコード・データベースのより大きな索引キー 42.9.1 ALTER TABLE 42.9.2 CREATE INDEX 42.9.3 CREATE TABLE |42.10 ALLOCATE CURSOR ステートメントの注の誤り |42.11 GET DIAGNOSTICS ステートメントの追加オプション |GET DIAGNOSTICS ステートメント |42.12 副選択内の ORDER BY |42.12.1 全選択 |42.12.2 副選択 |42.12.3 order-by-clause |42.12.4 select-statement |SELECT INTO ステートメント |42.12.5 OLAP 関数 (window-order-clause) |GET_ROUTINE_SAR プロシージャー用の新規入力引き数 |SET INTEGRITY ステートメントに必要な許可 |付録 N. 例外表 ユニコード更新 46.1 入門 46.1.1 DB2 ユニコード・データベースおよびアプリケーション 46.1.2 資料の更新 管理 API 解説書 37.1 db2ArchiveLog (新規 API) db2ArchiveLog 回復可能データベースのアクティブ・ログ・ファイルをクローズして切り捨てます。ユーザー出口が使用可能な場合にはアーカイブ要求を実行します。 権限 以下のいずれかとなります。 sysadm sysctrl sysmaint dbadm 必要な接続 この API は、指定されたデータベースへの接続を自動的に確立します。指定されたデータベースへの接続がすでに確立されている場合、 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 コネクトからアクセスされるときにアプリケーションによって使用されます。 権限 なし 必要な接続 データベース API 組み込みファイル 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_TABLESPACE DB2HIST_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 値。 oOperation oOptype 記述 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 コールが行われました。 権限 なし 必要な接続 データベース API 組み込みファイル 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 必要な接続 データベース API 組み込みファイル 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 このトランザクションはこのデータベースで終了しています。このトランザクションは後で再活動化、コミット、ロールバックなどをする場合があります。またトランザクションがエラーになった場合、トランザクションが完了しなかった場合でも可能です。これがそのケースの場合、このトランザクションは、試行錯誤の処置を要求します。それは、トランザクションがロックしたままになったり、データ・アクセスが他のアプリケーションの妨げになる場合があるためです。 使用上の注意 通常のアプリケーションは、データベースもしくは分割データベース座標ノードへの現行接続を設定した後、以下のステップを実行します。 piIndoubtData に NULL をセットして db2XaListIndTrans をコールします。これは oReqBufferLen と oNumIndoubtsTotal で値を返します。 バッファーを割り振るため、oReqBufferLen で戻り値を使用します。 このバッファーは追加の未確定トランザクションがあると、大きさが十分でない場合があります。それは、 oReqBufferLen を取得するための API の初期呼び出しのためです。このアプリケーションは oReqBufferLen より大きなバッファーを提供する場合があります。 すべての未確定トランザクション・レコードが取得されたか決定します。これは 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 で |ご覧になれます。 |38.2 コンパイルされた SQL プロシージャーの配布についての追加情報 |UNIX システム上で、インスタンス所有者 (すなわち、 |その下で DB2 エンジンが実行されるユーザー) と $DB2PATH/adm/.fenced ファイル |の所有者が、確実に、同じ 1 次グループに属するようにしてください。 |別の方法として、これらの 2 人のユーザーのそれぞれが、 |相手方の 1 次グループに属するようにすることもできます。 |GET ROUTINE または PUT ROUTINE 操作 (またはそれらの対応するプロシージャー) を正常に実行できなかった場合は、 |常に、エラー (SQLSTATE 38000) および失敗の原因についての情報を提供する診断テキストが一緒に戻されます。 |たとえば、GET ROUTINE に指定したプロシージャー名が SQL プロシージャーを示していない場合、 |診断テキスト "100, 02000" が戻されます。 |ここで、"100" および "02000" はそれぞれ、SQLCODE および SQLSTATE で、これによって問題の原因が示されます。 |この例における SQLCODE および SQLSTATE は、 |特定のプロシージャー名に対して指定した行が、カタログ表の中で見つからなかったことを示します。 |アプリケーション開発の手引き |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 executeQuery および executeUpdate に対する新しい要件 | |J2EE 1.3 標準に準拠するために、DB2 JDBC ドライバーは、フィックスパック 5 の時点で、executeQuery で |非照会ステートメントを使用することも、executeUpdate で照会ステートメントを使用することもできなくなっています。 |それを行おうとすると、以下のいずれかの例外になります。 ||CLI0637E QUERY を検出できません。 |CLI0637E UPDATE を検出できません。 ||ステートメントのタイプが不明の場合は、execute() を使用してください。 |39.3 追加されたメソッドに対する JDBC ドライバーのサポート |CallableStatement.getBlob() と CallableStatement.getClob() |JDBC ドライバーは、メソッド CallableStatement.getBlob() と CallableStatement.getClob() をサポートするようになりました。 |DB2 は、ストアード・プロシージャー・パラメーター内の LOB ロケーターを |サポートしないため、CREATE PROCEDURE で指定される値の LOB データについて、 |考えられる最大サイズを保持できるだけの十分なシステム・メモリーを割り振る必要があります。 |メモリーが十分でない場合は、メモリー不足例外になります。 |このサポートは、アンカタログのストアード・プロシージャーについてはありません。 |Statement.setFetchSize(int rows) と ResultSet.setFetchSize(int rows) |JDBC ドライバーは、Statement.setFetchSize(int rows) と ResultSet.setFetchSize(int rows) をサポートするようになりました。 |これらのメソッドは、タイプ 3 (または「ネット」) ドライバーでの ResultSet のパフォーマンスを向上させるために使用できるようになりました。 |39.4 |39.5 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 タイプとして戻すようにします。この属性は、トランスフォームを行う前に必要です。 デフォルトで属性はオフであり、基本タイプ情報は SQL タイプとして戻されます。 使用可能な場合、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 つがあります。 ANSI ストリング引き数の代わりにユニコード・ストリング引き数を受け入れ可能な関数のセットの追加。 ユニコード・データを記述する、新しい C および SQL データ・タイプの追加。 以下のセクションは、これらの領域の両方についての詳細を提供します。ユニコード・アプリケーションと認識されるためには、アプリケーションは接続を行う前に、 SQL_ATTR_ANSI_APP 接続属性を SQL_AA_FALSE に設定する必要があります。これを行うと、 CLI は、データベースとの希望する連絡方法として、必ずユニコードを使用します。 40.6.2.1 ユニコード関数 ODBC API 関数には、ストリング引き数の形式を示す接尾部があります。ユニコードを受け入れる関数の接尾部は W で終わります。 ANSI を受け入れる関数には接尾部は付きません。 注: ODBC は A で終わる名前を持つ、同等の関数を追加しますが、 DB2 CLI はこの関数を使用しません。 次は DB2 CLI で使用可能な関数のリストで、ANSI 版とユニコード版の両方が含まれています。 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 SQLGetStmtAttr SQLStatistics SQLError SQLNativeSQL SQLTablePrivileges SQLExecDirect SQLPrepare SQLTables 引き数が常にストリングの長さであるユニコード関数は、この引き数を文字数として解釈します。サーバー・データに対して長さの情報を返す関数は、表示サイズと精度を文字数で示します。長さ (データの転送サイズ) がストリングまたは非ストリングのデータを参照するときは、長さはバイト数として解釈されます。たとえば、SQLGetInfoW は長さをバイト数として取りますが、SQLExecDirectW は文字数を使用します。CLI は、結果セットからのデータを、アプリケーションのバインドに応じて、ユニコードまたは ANSI で返します。アプリケーションが SQL_C_CHAR にバインドする場合、ドライバーは SQL_WCHAR データを SQL_CHAR に変換します。ODBC ドライバー・マネージャー (使用する場合) は、 ANSI ドライバーについては SQL_C_WCHAR を SQL_C_CHAR にマップしますが、ユニコード・ドライバーについてはマッピングを行いません。 40.6.2.2 新しいデータ・タイプと有効な変換 |追加の ODBC および CLI 定義のデータ・タイプが、ユニコード・データベースに |適応させるために追加されました。 |これらのタイプは既存の C タイプおよび SQL タイプのセットを補足します。新しい C タイプ、SQL_C_WCHAR は、 |C バッファーにネイティブ・エンディアン形式の UCS-2 データが含まれていることを指示します。新しい SQL タイプ |の SQL_WCHAR、SQL_WVARCHAR、および SQL_WLONGVARCHAR は、特定の列またはパラメーター・マーカーに |ユニコード・データが含まれていることを示します。 |DB2 ユニコード・データベースの場合、グラフィック列は新規のタイプを使用して |記述されます。 表 10. サポートされるデータ変換 SQL データ・ タイプ S Q L _ C _ C H A A S Q L _ C _ W C H A A S Q L _ C _ L O N G S Q L _ C _ S H O A T S Q L _ C _ T I N Y I N T S Q L _ C _ F L O A T S Q L _ C _ D O U B L M S Q L _ C _ T Y P M _ D A T M S Q L _ C _ T Y P M _ T I M M S Q L _ C _ T Y P M _ T I M M S T A M P S Q L _ C _ B I N A A Y S Q L _ C _ B I T S Q L _ C _ D B C H A A S Q L _ C _ C L O B _ L O C A T O A S Q L _ C _ B L O B _ L O C A T O A S Q L _ C _ D B C L O B _ L O C A T O A S Q L _ C _ B I G I N T S Q L _ C _ N U M M A I 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 VARCHAR D X X LONG VARGRAPHIC (非ユニコード) X X X D LONG VARGRAPHIC (ユニコード) X X X D 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 つのキーワードが追加されました。 DisableUnicode キーワードの説明: ユニコードのサポートを使用不可にします。 db2cli.ini キーワード構文 DisableUnicode = 0 | 1 デフォルト設定 0 (false) DB2 CLI/ODBC 設定タブ: このキーワードは CLI/ODBC 設定ノートブックで設定することはできません。このキーワードを使用するためには、db2cli.ini ファイルを直接変更する必要があります。 使用上の注意: ユニコード・サポートが使用可能になっている場合、ユニコード・アプリケーションから呼び出されると、CLI はコード・ページ変換による不要なデータ損失のないように、最適なクライアント・コード・ページを使用してデータベースに接続しようとします。そのために、コード・ページ交換のために接続時間が増加するか、またはこのサポートが追加されるまでは行われていなかったクライアントでのコード・ページ変換が行われる可能性があります。 このキーワードを true (1) に設定すると、すべてのユニコード・データは最初に (サーバーに送信される前に) アプリケーションのローカル・コード・ページに変換されます。このことが原因で、ローカル・コード・ページでは表示できないデータが失われることがあります。 ConnectCodepage キーワードの説明: 余分な接続オーバーヘッドを避けるために、データ・ソースへの接続時に使用する特定のコード・ページを指定します。 db2cli.ini キーワード構文 ConnectCodepage = 0 | 1 | <任意の有効な db2 コード・ページ> デフォルト設定 0 DB2 CLI/ODBC 設定タブ: このキーワードは CLI/ODBC 設定ノートブックで設定することはできません。このキーワードを使用するためには、db2cli.ini ファイルを直接編集する必要があります。 使用上の注意: 非ユニコード・アプリケーションは、データベースへの接続時には常にそのアプリケーションのローカル・コード・ページか DB2Codepage 環境設定を使用します。デフォルトでは、CLI により、ユニコード・アプリケーションはユニコード・データベースへの接続時には常に UTF-8 および UCS-2 コード・ページを使用します。非ユニコード・データベースへの接続時のデフォルトでは、データベース・サーバーが DB2 (Windows 版)、DB2 (Unix 版)、または DB2 (OS/2 版) を実行している場合、そのデータベースのコード・ページを使用します。これにより、コード・ページ変換に起因した不必要なデータ喪失がなくなります。 このキーワードを使用すれば、非ユニコード・データベースに接続するときにはそのデータベースのコード・ページを指定して、接続時に余分なオーバーヘッドが生じないようにできます。 値 1 を指定すると、SQLDriverConnect() は出力接続ストリングに正しい値を返します。これによりこの値を以降の SQLDriverConnect() 呼び出しで使用することが可能となります。 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 SQL および Java ストアード・プロシージャーの作成特権およびデバッグ特権 |次の特権を SQL ストアード・プロシージャーを作成、デバッグ、実行するユーザーに |認可する必要があります。 ||db2 grant CONNECT on database to userid |db2 grant IMPLICIT_SCHEMA on database to userid |db2 grant BINDADD on database to userid |db2 grant SELECT on SYSIBM.SYSDUMMY1 to userid |db2 grant SELECT on SYSCAT.PROCEDURES to userid |db2 grant UPDATE on DB2DBG.ROUTINE_DEBUG to userid ||次の特権を Java ストアード・プロシージャーを作成、デバッグ、実行するユーザーに |認可する必要があります。 ||db2 grant CONNECT on database to userid |db2 grant IMPLICIT_SCHEMA on database to userid |db2 grant BINDADD on database to userid(Java ストアード・プロシージャー |を SQLJ を使用する静的 SQL で作成する場合のみ必要) |db2 grant SELECT on SYSIBM.SYSDUMMY1 to userid |db2 grant SELECT on SYSCAT.PROCEDURES to userid |db2 grant UPDATE on DB2DBG.ROUTINE_DEBUG to userid ||DB2DBG.ROUTINE_DEBUG 表を作成するには、次のコマンドを実行してください。 |db2 -tf sqllib/misc/db2debug.ddl |Java ストアード・プロシージャーについて詳しくは、「アプリケーション開発の手引き 」を参照してください。 40.6.6.2 CLI でのストアード・プロシージャーの記述 以下は、CLI ストアード・プロシージャーで文書化されていない制限です。 複数 CLI ストアード・プロシージャーへの呼び出しを行う場合、 次のストアード・プロシージャーを呼び出す前に、アプリケーションは ストアード・プロシージャーからオープン・カーソルをクローズする 必要があります。具体的には、オープン・カーソルの最初のセットを、 次のストアード・プロシージャーがカーソルをオープンしようとする前に、 クローズする必要があります。 40.6.6.3 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 |列データ・タイプが更新可能データ・タイプかどうかを指示します。 ||どの DB2 SQL データ・タイプの場合でも、NumericAttributePtr に |は SQL_ATTR_READWRITE_UNKNOWN が戻されます。これが戻されるのは、現在 DB2 CLI はある列が |更新可能かどうかを判別できないからです。 |UNIX および Windows サーバー版 DB2 CLI の将来のバージョンでは、 |ある列が更新可能かどうかを判別できるようになります。 |||40.8.3 SQLGetData - 列からのデータの入手 | |続くテキストが、SQLGetData の SQLSTATE 表の SQLSTATE 22007 の「説明」列にある |現行のセンテンスに取って代わります。 |ストリングから日付時刻形式への変換が指示されていましたが、 |無効なストリングまたは値が指定されていたか、値が無効な日付でした。 |40.8.4 SQLGetInfo - 一般情報の取得 | | |「SQLGetInfo によって戻される情報」の下の「使用法」セクションに記載されている情報は、 |次のように訂正されます。 ||SQL_DATABASE_NAME (ストリング) |使用中の現行データベースの名前。 |注: このストリングは、非ホスト・システム |で SELECT CURRENT SERVER ステートメントによって戻されるのと同じものです。 |DB2 (OS/390 版) や DB2 (OS/400 版) のようなホスト・データベースの場合は、戻されるストリング |は DCS データベース名 (DB2 コネクト・ゲートウェイでの CATALOG DCS DATABASE DIRECTORY コマンドの |発行時に指定されたもの) です。 |||40.8.5 SQLGetLength - ストリング値の長さの検索 | | |表 113「SQLGetLength の引き数」の脚注は、次のように訂正されます。 |注 : a これには DBCLOB データ用の文字が使用されます。 40.8.6 SQLNextResult - 次の結果セットを別のステートメント・ハンドルに関連付ける 次のテキストが第 5 章、「DB2 CLI 関数」に追加されました。 40.8.6.1 目的 仕様: DB2 CLI 7.x 40.8.6.2 構文 SQLRETURN SQLNextResult (SQLHSTMT StatementHandle1 SQLHSTMT StatementHandle2); 40.8.6.3 関数の引き数 表 13. SQLNextResult 引き数 データ・タイプ 引き数 使用 記述 SQLHSTMT StatementHandle 入力 ステートメント・ハンドル。 SQLHSTMT StatementHandle 入力 ステートメント・ハンドル。 40.8.6.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.6.5 戻りコード SQL_SUCCESS SQL_SUCCESS_WITH_INFO SQL_STILL_EXECUTING SQL_ERROR SQL_INVALID_HANDLE SQL_NO_DATA_FOUND 40.8.6.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.6.7 制約事項 SQLMoreResults() だけがパラメーター化照会に使用できます。 40.8.6.8 参照 525 ページの 「SQLMoreResults - 結果セットが他にもあるかを判別してください」 120 ページの 「ストアード・プロシージャーから返される結果セット」 |40.8.7 SQLSetEnvAttr - 環境属性の設定 | |以下は、「使用法」の「環境属性」セクションの追加の環境属性です。 ||SQL_ATTR_KEEPCTX |環境ハンドルがフリーの場合にコンテキストを保持するかどうかを指定する |32 ビット整数値です。この属性は、環境レベルにおいて設定される必要があります。 |マルチスレッド・アプリケーションは、各スレッドの接続、データベース・リソース、 |およびデータ伝送に関連したコンテキストを管理するためにこの属性を使用できます。 |可能な値は以下の通りです。 ||SQL_FALSE: スレッドの環境ハンドルがフリーになったときに |アプリケーションはコンテキストを解放します。これがデフォルト値です。 |SQL_TRUE: スレッドの環境ハンドルがフリーになったときに、コンテキストは同じ接続にある |他の既存のスレッドに使用可能であり、コンテキストは有効なままです。SQL_ATTR_KEEPCTX を SQL_TRUE に設定すると、 |マルチスレッド・アプリケーションにおける |競合コンテキストに関連した問題をいくつか解決できます。 || |注: これは IBM 拡張です。 |||40.8.8 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) の組み合わせをバインドします。データベース・データ・タイプは、ユニコードの場合とそうでない場合があります。 |CLI アプリケーションが SQL_ATTR_ANSI_APP を SQL_AA_FALSE に |設定して SQLSetConnectAttr を呼び出すか、SQL_ATTR_ANSI_APP の値を設定しないで SQLConnectW を |呼び出す場合、アプリケーションはユニコード・アプリケーションと |見なされます。これは、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_TRUE に設定されている場合、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 メッセージの更新 |次の表は、メッセージ解説書の最新版が出版された以降に変更されたメッセージを示しています。 |この中に、メッセージ・テキストをオンラインで表示する方法についての説明が含まれています。 | |表 15. 新規および変更メッセージ メッセージ・コード 変更内容 SQL2554N 新規理由コード SQL0490N 新規メッセージ SQL20214N 新規メッセージ SQL20211N 新規メッセージ |次の表は、メッセージ解説書の最新版が出版された以降に変更された SQL 状態を示しています。 |この中に、メッセージ・テキストをオンラインで表示する方法についての説明が含まれています。 | |表 16. 新規 SQLSTATE メッセージ SQLSTATE 値 意味 428B7 SQL ステートメントで指定された数値が、有効な範囲内にありません。 428FI ORDER OF が指定されましたが、table-designator に ORDER BY 文節が含まれていません。 428FJ ORDER BY は、視点またはサマリー表の外部全選択では許可されていません。 |41.3 オンラインでのメッセージ・テキストの読み取り | | | |DB2 がインストールされているオペレーティング・システムの操作についてよく理解されていることを前提としています。 |次の DB2 メッセージは、オペレーティング・システムのコマンド行からアクセスできます。 ||接頭部 |説明 |ASN |DB2 レプリケーションによって生成されるメッセージ |CCA |クライアント構成アシスタントによって生成されるメッセージ |CLI |コール・レベル・インターフェースによって生成されるメッセージ |DBA |コントロール・センターおよびデータベース管理によって生成されるメッセージ |DBI |インストールおよび構成によって生成されるメッセージ |DB2 |コマンド行プロセッサーによって生成されるメッセージ |DWC |データウェアハウスセンターによって生成されるメッセージ |FLG |情報カタログ・マネージャーによって生成されるメッセージおよび理由コード |GSE |DB2 地理情報エクステンダーによって生成されるメッセージ |SAT |DB2 サテライトによって生成されるメッセージ |SPM |同期点マネージャーによって生成されるメッセージ |SQJ |Java の組み込み SQL (SQLJ) によって生成されるメッセージ |SQL |警告またはエラー状態が検出されたときにデータベース・マネージャーによって生成されるメッセージ ||同様に、SQLSTATE 値に関連したメッセージ・テキストは、オンラインでも入手できます。 |メッセージ ID は、3 文字のメッセージ接頭語 (上記のリスト参照) と、それに続く 4 桁または 5 桁のメッセージ番号から成ります。 |エラー・メッセージの重大度を示す最後の 1 桁は、オプショナルです。 |これらのエラー・メッセージについてのヘルプにアクセスするには、オペレーティング・システムのコマンド・プロンプトで、次のように入力します。 |db2 "? XXXnnnnn" | |XXX はメッセージ接頭語を表し、 |nnnnn はメッセージ番号を表します。 |注: db2 コマンドのパラメーターとして受け入れられるメッセージ ID は、 |大文字小文字の区別はされません。また、終了文字も必要ありません。 ||したがって、次のコマンドは同じ結果になります。 ||db2 "? SQL0000N" |db2 "? sql0000" |db2 "? SQL0000n" ||メッセージ・テキストが長すぎて画面に入らない場合、次のコマンドを使用します (UNIX ベースのシステム、およびその他の 'more' をサポートするシステムの場合)。 |db2 "? XXXnnnnn" | more | |ヘルプは、対話式入力モードでも呼び出すことができます。 |対話式入力モードに入るには、オペレーティング・システムのコマンド・プロンプトで、次のように入力します。 |db2 | |対話式入力モードに入ったあと、次のコマンド・プロンプトにコマンドを入力します。 |db2 => | |このモードで DB2 メッセージ・ヘルプを表示するには、コマンド・プロンプトで、次のように入力します。 |? XXXnnnnn | |注: メッセージ・テキストが画面の長さを超えるようであれば、非グラフィカル・ワークステーションのユーザーの場合、 |出力を 'more' (UNIX ベースのシステムの場合) プログラムにパイピングすることができます。 |あるいは、出力をファイルにリダイレクトして、あとでブラウズすることができます。 ||所定の SQLSTATE 値に関連したメッセージ・テキストは、次のコマンドによって検索できます。 |db2 "? nnnnn" | | または | |db2 "? nn" | |nnnnn は 5 桁の SQLSTATE (英数字) で、nn は 2 桁の SQLSTATE クラス・コード (SQLSTATE 値の最初の 2 桁) です。 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 SET SERVER OPTION - 資料のエラー |SET SERVER OPTION ステートメントの「注:」に、誤解を招く情報が含まれていました。 |現在、「注:」は次のように記述されています。 ||SET SERVER OPTION は、現在、パスワード、fold_id、および fold_pw のサーバー・オプションのみをサポートします。 ||この記述は正しくありません。SET SERVER OPTION は、すべてのサーバー・オプション(IBM 提供ではないラッパー用のサーバー・オプションも含む)をサポートします。 |この注は無視してください。 |42.4 GRANT (表、視点、またはニックネーム特権) - 資料のエラー |GRANT (表、視点、またはニックネーム特権) ステートメントの「注:」に、紛らわしい項目が入っていました。 |現在、「注:」は次のように記述されています。 ||ニックネームに対する操作は、ニックネームを参照するステートメントが処理されるときにデータ・ソースで使用される許可 ID の特権によって異なるため、 |ニックネームには、DELETE、INSERT、SELECT、および UPDATE 特権は定義されません。 ||このテキストは無視してください。この注は、このテキストを除けば、そのままで正しい記述です。 42.5 MQSeries 情報 42.5.1 スカラー関数 |42.5.1.1 MQPUBLISH | | | |>>-MQPUBLISH--(-------------------------------------------------> | |>--+---------------------------------------------+--msg-data----> | '-publisher-service--,--+-------------------+-' | '-service-policy--,-' | |>--+---------------------------------+--)---------------------->< | '-,--topic--+-------------------+-' | | (1) | | '-,--correl-id------' | | |注: |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.5.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.5.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.5.1.4 MQSEND | | | |>>-MQSEND--(--+----------------------------------------+--------> | '-send-service--,--+-------------------+-' | '-service-policy--,-' | |>--msg-data--+-------------------+--)-------------------------->< | | (1) | | '-,--correl-id------' | | |注: |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.5.2 表関数 |42.5.2.1 MQREADALLCLOB | | | |>>-MQREADALLCLOB--(---------------------------------------------> | |>--+----------------------------------------+--+----------+-----> | '-receive-service--+-------------------+-' '-num-rows-' | '-,--service-policy-' | |>--)----------------------------------------------------------->< | | |スキーマは 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.5.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.5.3 MQSeries 関数でサポートされるようになった CLOB データ | | |MQSeries 関数 (DB2MQ スキーマで定義された関数) には、VARCHAR データに |加えて、CLOB データでも使用できる機能が含まれるようになりました。 |新規関数が CLOB データ・ |タイプを処理する場合もあれば、既存の関数が CLOB と VARCHAR データの |両方を処理するようになった場合もあります。いずれの場合も、CLOB 関数の構文は、VARCHAR の |場合と同一です。CLOB データの使用をサポートする関数と VARCHAR データの使用を |サポートする関数は、次の表にリストされています。 | |表 17. CLOB データ・タイプをサポートする MQSeries 関数 VARCHAR データ用に使用される関数 CLOB データ用に使用される関数 MQPUBLISH MQPUBLISH MQREAD MQREADCLOB MQRECEIVE MQRECEIVECLOB MQSEND MQSEND MQREADALL MQREADALLCLOB MQRECEIVEALL MQRECEIVEALLCLOB |MQSeries 関数 (DB2MQ スキーマに定義されているもの) を使用可能化する |方法については MQSeriesを参照してください。 42.6 データ・タイプ情報 42.6.1 データ・タイプのプロモーション このセクションでは、表 5 に各データ・タイプの優先順位リストが示されます。以下に注意してください。 ユニコード・データベースの場合、以下が同等のデータ・タイプと見なされます。 CHAR および GRAPHIC VARCHAR および VARGRAPHIC LONG VARCHAR および LONG VARGRAPHIC CLOB および DBCLOB ユニコード・データベースでは、同等の CHAR および GRAPHIC データ・タイプ間で関数シグニチャーのみが異なる (たとえば foo(CHAR(8)) と foo(GRAPHIC(8)) など) 関数を作成することが可能です。将来のリリースへの移行を行う前に、これらのどちらかをドロップしなければならなくなるため、このような重複する関数は定義しないことを強くお勧めします。 このような重複する関数が存在する場合、どちらを呼び出すかの選択は、2 つのパス・アルゴリズムで決定されます。最初のパスは、非ユニコード・データベースの関数を解決するために使用されるものと同じアルゴリズムを使用して一致を探そうとします。一致が見つからない場合は、CHAR および GRAPHIC ストリングについて次のプロモーション優先順位を考慮して 2 番目のパスが行われます。 GRAPHIC-->CHAR-->VARGRAPHIC-->VARCHAR-->LONG VARGRAPHIC-->LONG VARCHAR--> -->DBCLOB-->CLOB 42.6.2 データ・タイプ間のキャスト 次の項目が、「特殊タイプを含む次のキャストがサポートされています」と紹介されているリストに追加されました。 ユニコード・データベースの場合、VARCHAR または VARGRAPHIC からソース・データ・タイプ CHAR または GRAPHIC の特殊タイプ DT へのキャスト。 以下は、「表 6. 組み込みデータ・タイプ間でサポートされるキャスト」に対する更新です。影響を受ける表の行のみが示されています。 表 18. 組み込みデータ・タイプ間で サポートされているキャスト ターゲット・データ・ タイプ > ソース・データ・タイプ V C H A R V A R C H A R L O N G V A R C H A R C L O B G R A P H I C V A R G R A P H I C L O N G V A R G R A P H I C D B C L O 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.6.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.6.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.6.3.2 ストリング比較 比較の変換規則 このサブセクションが次のように変更されました。 2 つのストリングを比較するとき、必要に応じ、最初に一方のストリングがもう一方のストリングのエンコード・スキームおよびコード・ページに変換されます。詳しくは SQL 解説書 の「第 3 章 言語エレメント」の「ストリング変換の規則」を参照してください。 42.6.4 結果データ・タイプの規則 42.6.4.1 ユニコード・データベースの文字および漢字ストリング これは、サブセクション「漢字ストリング」の後に挿入される新しいサブセクションです。 ユニコード・データベースでは、文字ストリングと漢字ストリングには互換性があります。 オペランド... 他のオペランド... 結果のデータ・タイプ... GRAPHIC(x) CHAR(y) または GRAPHIC(y) GRAPHIC(z)、z = max(x,y) VARGRAPHIC(x) CHAR(y) または VARCHAR(y) VARGRAPHIC(z)、z = max(x,y) VARCHAR(x) GRAPHIC(y) または VARGRAPHIC VARGRAPHIC(z)、z = max(x,y) LONG VARGRAPHIC CHAR(y) または VARCHAR(y) または LONG VARCHAR LONG VARGRAPHIC LONG VARCHAR GRAPHIC(y) または VARGRAPHIC(y) LONG VARGRAPHIC DBCLOB(x) CHAR(y) または VARCHAR(y) または CLOB(y) DBCLOB(z)、z = max(x,y) DBCLOB(x) LONG VARCHAR DBCLOB(z)、z = max(x,16350) CLOB(x) GRAPHIC(y) または VARGRAPHIC(y) DBCLOB(z)、z = max(x,y) CLOB(x) LONG VARGRAPHIC DBCLOB(z)、z = max(x,16350) 42.6.5 ストリング変換の規則 3 番目のポイントが、このセクションの次のリストに追加されました。 コード・ページの各ペアについて、次の規則を順番に適用することで結果が決定されます。 コード・ページが等しい場合、結果はそのコード・ページになります。 コード・ページが BIT DATA (コード・ページ 0) 結果のコード・ページは BIT DATA になります。 ユニコード・データベースで、あるコード・ページが他のコード・ページと異なるエンコード・スキームでデータを指定する場合、結果は UTF-8 ではなく UCS-2 になります (つまり、漢字データ・タイプが文字データ・タイプに優先します)。1 それ以外の場合、結果のコード・ページは SQL 解説書 の「第 3 章 言語エレメント」の「ストリング変換の規則」セクションの表 8 で決定されます。表の「最初」の項目は、最初のオペランドからのコード・ページが選択されることを意味し、「2 番目」は 2 番目のオペランドからのコード・ページが選択されることを意味します。 1 非ユニコード・データベースでは、異なるエンコード・スキーム間の変換はサポートされていません。 42.6.6 式 以下が追加されました。 ユニコード・データベースでは、文字または漢字ストリングを受け入れる式は、変換がサポートされるストリング・タイプを受け入れます。 42.6.6.1 連結演算子 以下がこのサブセクションの終わりに追加されました。 ユニコード・データベースでは、文字ストリング・オペランドと漢字ストリング・オペランドの両方を含む連結は、最初に文字オペランドを漢字オペランドに変換します。非ユニコード・データベースでは、連結は文字および漢字オペランドの両方を扱うことはできません。 42.6.7 述部 次の項目が、「次の規則がすべてのタイプの述部に適用されます」という文で紹介されているリストに追加されました。 ユニコード・データベースでは、文字または漢字ストリングを受け入れる述部はすべて、変換がサポートされるストリング・タイプを受け入れます。 |42.7 ユニコード情報 |42.7.1 スカラー関数およびユニコード | | |ユニコード・データベースでは、文字または漢字ストリングを受け入れる |スカラー関数はすべて、変換がサポートされるストリング・タイプを受け入れます。 |42.8 GRAPHIC タイプと DATE/TIME/TIMESTAMP の互換性 |以下のセクションでは、日時値の「文字ストリング」表記という言い方は、「ストリング」表記に |変更されています。DB2 は、ユニコード・データベースに限り、日時値の「漢字ストリング」表記をサポートするようになりました。 |42.8.1 日時値のストリング表記 | |データ・タイプが DATE、TIME、または TIMESTAMP の値は、ユーザーがすぐに理解できる形の内部形式で表されます。 |しかし、日付値、時刻値、およびタイム・スタンプ値も、ストリングで表すことができます。 |データ・タイプが DATE、TIME、または TIMESTAMP の定数または変数は存在しないため、 |ストリングで表すことができるのは便利です。 |日時値を検索するには、その前に、その日時値がストリング変数に割り当てられている必要があります。CHAR 関数 |または GRAPHIC 関数 (ユニコード・データベースのみ) は、 |日時値をストリング表記に変更するために使用できます。 |ストリング表記は、プログラムがプリコンパイルされるかデータベースにバインドされるときに DATETIME オプションの指定によってオーバーライドされない限り、 |通常は、データベースの国別 / 地域別コードに関連した、日時値のデフォルト形式です。 |その長さにかかわらず、ラージ・オブジェクト・ストリング、LONG VARCHAR 値または LONG VARGRAPHIC 値を、日時値を表すために使用することはできません (SQLSTATE 42884)。 |内部日時値の操作で日時値の有効なストリング表記が使用される場合、 |そのストリング表記は、操作の前に、日付、時刻、またはタイム・スタンプの内部形式に変換されます。 |日付、時刻、およびタイム・スタンプのストリングに、文字と数字以外は含めることはできません。 |42.8.1.1 日付ストリング、時刻ストリング、および日時ストリング |これらの用語の定義が少し変更されています。 |「文字ストリング」表記という言い方は、「ストリング」表記に変更されました。 |42.8.2 データ・タイプ間のキャスト |DATE、TIME、および TIMESTAMP を GRAPHIC および VARGRAPHIC にキャストできるように |なりました。GRAPHIC および VARGRAPHIC を DATE、TIME、および TIMESTAMP にキャストできるようになりました。 |漢字ストリングはユニコード・データベースでのみサポートされます。 |42.8.3 割り当てと比較 |割り当てと比較において、 |漢字ストリングと、DATE 値、TIME 値、および TIMESTAMP 値の間でデータ・タイプの互換性ができました。 |漢字ストリングはユニコード・データベースでのみサポートされます。 |42.8.4 日時の割り当て | |日時の割り当てにおける基本ルールは、DATE 値、TIME 値、または TIMESTAMP 値は、 |一致するデータ・タイプ (DATE、TIME、または TIMESTAMP のそれぞれ) の列か、 |あるいは、固定長または可変長ストリング変数またはストリング列にのみ割り当てることができる |ということです。LONG VARCHAR、CLOB、LONG VARGRAPHIC、 |DBCLOB、または BLOB 変数または列に割り当てることはできません。 | | |日時値がストリング変数またはストリング列に割り当てられるとき、 |ストリング表記への変換は自動的に行われます。 |日付、時刻、またはタイム・スタンプのどの部分においても、先行ゼロは保持されます。 |ターゲットに必要な長さは、ストリング表記のフォーマットによって異なります。 |ターゲットの長さが必要な長さよりも長く、しかもターゲットが固定長ストリングである場合は、右にブランクが埋め込まれます。 |ターゲットの長さが必要な長さよりも短い場合は、日時値のタイプとターゲットのタイプによって、結果は異なります。 |ターゲットがホスト変数の場合、以下のルールが適用されます。 ||DATE: 変数の長さが 10 文字より短い場合、エラーになります。 |TIME: USA フォーマットが使用されている場合、変数の長さは、8 文字以上である必要があります。 |その他のフォーマットの場合、長さは 5 文字以上である必要があります。 |ISO または JIS フォーマットを使用する場合で、ホスト変数の長さが 8 文字未満であれば、 |時刻の「秒」部分は結果から省略され、標識変数があれば、 |そこに割り当てられます。SQLCA の SQLWARN1 フィールドが設定されて、省略されたことが示されます。 |TIMESTAMP: ホスト変数が 19 文字未満の場合、エラーになります。 |長さが 19 文字以上、26 文字未満の場合、値の「マイクロ秒」部分の末尾桁は省略されます。 |SQLCA の SQLWARN1 フィールドが設定されて、省略されたことが示されます。 ||42.8.5 DATE | | | |>>-DATE--(--expression--)-------------------------------------->< | | |スキーマは SYSIBM です。 |DATE 関数は、値からの日付を戻します。 |引き数は、日付、タイム・スタンプ、3 652 059 以下の正数、日付またはタイム・スタンプの有効なストリング表記、 |または、LONG VARCHAR、CLOB、LONG VARGRAPHIC、DBCLOB、BLOB 以外の、長さが 7 のストリングである必要があります。 |ユニコード・データベースだけが、日付またはタイム・スタンプの漢字ストリング表記の引き数をサポートします。 |引き数が長さ 7 のストリングである場合、そのストリングは yyyynnn 形式で、有効な日付を表している必要があります。 |ここで、yyyy は年を表す数字で、nnn は年間通算日を表す 001 から 366 の間の数字です。 |この関数の結果は日付です。 |引き数が NULL となる可能性がある場合、結果が NULL となる可能性があります。 |引き数が NULL であれば、結果は NULL 値になります。 |その他のルールは、引き数のデータ・タイプによって異なります。 ||引き数が日付またはタイム・スタンプ、あるいは、日付またはタイム・スタンプを表す有効なストリングである場合: ||結果は、値の日付部分です。 ||引き数が数値である場合: ||結果は、1 月 1 日 (0001) 以後の日付で、n-1 です。n は数値の整数部分です。 ||引き数が長さ 7 のストリングである場合: ||結果は、ストリングが表す日付です。 |||例: |列 RECEIVED (タイム・スタンプ) の内部値が '1988-12-25-17.12.30.000000' を表していると想定します。 ||この例では、'1988-12-25' の内部表記になります。 | DATE(RECEIVED) |この例では、'1988-12-25' の内部表記になります。 | DATE('1988-12-25') |この例では、'1988-12-25' の内部表記になります。 | DATE('25.12.1988') |この例では、'0001-02-04' の内部表記になります。 | DATE(35) ||42.8.6 GRAPHIC | | | |>>-GRAPHIC--(--graphic-expression--+------------+--)----------->< | '-,--integer-' | | |スキーマは SYSIBM です。 |GRAPHIC 関数は、漢字ストリング・タイプの GRAPHIC 表記、あるいは日時タイプの GRAPHIC 表記を戻します。 ||graphic-expression |漢字ストリング値を戻す式 です。 |integer |結果の GRAPHIC データ・タイプの長さ属性を指定する整数値です。 |値は 1 から 127 の間でなければなりません。integer が指定されなければ、 |結果の長さは、1 番目の引き数の長さと同じになります。 ||この関数の結果は GRAPHIC です。引き数が NULL となる可能性がある場合、結果が NULL となる可能性があります。引き数が NULL であれば、結果は NULL 値になります。 |日時から漢字: |>>-GRAPHIC--(--datetime-expression--+--------------+--)-------->< | '-,--+-ISO---+-' | +-------+ | +-EUR---+ | +-JIS---+ | '-LOCAL-' | | ||日時から漢字 ||datetime-expression |次の 3 つのデータ・タイプのいずれかの式です。 ||日付 |結果は、2 番目の引き数で指定された形式で表された、日付の漢字ストリング表記です。 |結果の長さは 10 です。2 番目の引き数が指定されており、かつそれが有効な値でない場合は、エラーになります (SQLSTATE 42703)。 |時刻 |結果は、2 番目の引き数で指定された形式で表された、時刻の漢字ストリング表記です。 |結果の長さは 8 です。2 番目の引き数が指定されており、かつそれが有効な値でない場合は、エラーになります (SQLSTATE 42703)。 |タイム・スタンプ |このタイプには 2 番目の引き数は当てはまりません。指定しないでください (SQLSTATE 42815)。 |結果は、タイム・スタンプの漢字ストリング表記です。 |結果の長さは 26 です。 ||ストリングのコード・ページは、アプリケーション・サーバーでのデータベースのコード・ページです。 |||42.8.7 TIME | | | | | | |>>-TIME--(--expression--)-------------------------------------->< | | |スキーマは SYSIBM です。 |TIME 関数は、値からの時刻を戻します。 |引き数は、時刻またはタイム・スタンプであるか、または LONG VARCHAR、CLOB、 |LONG VARGRAPHIC、DBCLOB、BLOB を除く、時刻またはタイム・スタンプを表す有効なストリング表記である必要があります。 |ユニコード・データベースだけが、時刻またはタイム・スタンプの漢字ストリング表記の引き数をサポートします。 |この関数の結果は時刻です。 |引き数が NULL となる可能性がある場合、結果が NULL となる可能性があります。 |引き数が NULL であれば、結果は NULL 値になります。 |その他のルールは、引き数のデータ・タイプによって異なります。 ||引き数が時刻である場合: ||結果は、その時刻です。 ||引き数がタイム・スタンプである場合: ||結果は、そのタイム・スタンプの時刻部分です。 ||引き数がストリングである場合: ||結果は、そのストリングが表す時刻です。 |||例: ||サンプルの IN_TRAY 表から、1 日のうち (任意の日)、受信してから現在時刻まで、少なくとも 1 時間以上経過したメモをすべて選択します。 | SELECT * FROM IN_TRAY | WHERE TIME(RECEIVED) >= CURRENT TIME + 1 HOUR ||42.8.8 TIMESTAMP | | | | | | |>>-TIMESTAMP--(--expression--+-------------+--)---------------->< | '-,expression-' | | |スキーマは SYSIBM です。 |TIMESTAMP 関数は、1 つの値または 1 組の値から、タイム・スタンプを戻します。 |ユニコード・データベースだけが、日付、時刻、またはタイム・スタンプが漢字ストリングで表記された引き数をサポートします。 |引き数のルールは、2 番目の引き数が指定されたかどうかによって異なります。 ||引き数が 1 つだけ指定された場合: ||その引き数は、タイム・スタンプ、タイム・スタンプの有効なストリング表記、 |または、LONG VARCHAR、CLOB、LONG VARGRAPHIC、DBCLOB、または BLOB を除く、長さが 14 のストリングである必要があります。 |長さが 14 のストリングは、有効な日時を表す yyyyxxddhhmmss の形式の数字のストリングである必要があります。 |ここで yyyy は年、xx は月、dd は日、hh は時、mm は分、ss は秒です。 ||両方の引き数が指定された場合: ||1 番目の引き数は日付または日付を表す有効なストリングであり、2 番目のストリングは、 |時刻または時刻を表す有効なストリングである必要があります。 |||この関数の結果はタイム・スタンプです。 |どちらかの引き数が NULL となる可能性がある場合、結果が NULL となる可能性があります。 |どちらかの引き数が NULL であれば、結果は NULL 値になります。 |もう一方のルールは、2 番目の引き数が指定されたかどうかによって異なります。 ||両方の引き数が指定された場合: ||結果は、1 番目の引き数で指定された日付と、2 番目の引き数で指定された時刻が入ったタイム・スタンプです。 |タイム・スタンプのマイクロ秒の部分はゼロです。 ||引き数が 1 つだけ指定され、それがタイム・スタンプである場合: ||結果は、そのタイム・スタンプです。 ||引き数が 1 つだけ指定され、それがストリングである場合: ||結果は、そのストリングが表すタイム・スタンプです。 |引き数が長さ 14 のストリングの場合、タイム・スタンプのマイクロ秒の部分はゼロになります。 |||例: ||列 START_DATE (日付) が 1988-12-25 の値で、列 START_TIME (時刻) が 17.12.30 の値を表していると想定します。 | TIMESTAMP(START_DATE, START_TIME) |値 '1988-12-25-17.12.30.000000' が戻されます。 ||42.8.9 VARGRAPHIC | | | | | | | | |文字から Vargraphic: |>>-VARGRAPHIC--(--character-string-expression--)--------------->< | | |日時から Vargraphic: |>>-VARGRAPHIC--(--datetime-expression--)----------------------->< | | |漢字から Vargraphic: |>>-VARGRAPHIC--(--graphic-string-expression--+------------+-----> | '-,--integer-' | |>--)----------------------------------------------------------->< | | |スキーマは SYSIBM です。 |VARGRAPHIC 関数は、次のものの漢字ストリング表記を戻します。 ||1 バイト文字から 2 バイト文字に変換した、文字ストリング値 |日時値 (ユニコード・データベースのみがサポート) |1 番目の引き数が漢字ストリングのタイプであれば、漢字ストリング値 ||この関数の結果は、いろいろな長さの漢字ストリング (VARGRAPHIC データ・タイプ) です。 |1 番目の引き数が NULL となる可能性がある場合、結果が NULL となる可能性があります。 |1 番目の引き数が NULL であれば、結果は NULL 値になります。 |文字から Vargraphic |character-string-expression |値が LONG VARCHAR または CLOB 以外の文字ストリングのデータ・タイプであり、かつ最大長が 16 336 バイト未満の式でなければなりません。 ||結果の長さ属性は、引き数の長さ属性と同じです。 |S が character-string-expression の値を表すとします。S の中の |各 1 バイト文字は、それに対応する 2 バイト表記、または 2 バイトの置換文字に変換されます。S の中の |各 2 バイト文字は、「そのまま」マップされます。2 バイト文字の 1 番目の |バイトが S の最後のバイトである場合、その文字は、2 バイトの置換文字に変換されます。S 内の |文字の順序は保持されます。 |以下は、変換に関する追加の考慮事項です。 ||ユニコード・データベースの場合、この関数は、文字ストリングを、オペランドのコード・ページから UCS-2 に変換します。 |オペランドに指定された文字は、DBCS 文字も含めて、すべて変換されます。2 番目の |引き数が指定された場合、それによって、結果の UCS-2 ストリングの必要な長さ (UCS-2 文字の数) が指定されます。 |VARGRAPHIC 関数による 2 バイト・コード・ポイントへの変換は、オペランドのコード・ページに基づいて行われます。 |オペランドの 2 バイト文字は変換されません。 |それ以外の文字はすべて、それぞれ対応する 2 バイト表現に変換されます。 |対応する 2 バイト表現がない場合、そのコード・ページの 2 バイトの置換文字が使用されます。 |結果に置換文字が 1 つ以上戻されると、警告またはエラー・コードは生成されません。 ||日時から Vargraphic |datetime-expression |値が DATE、TIME、または TIMESTAMP データ・タイプである式です。 ||漢字から Vargraphic |graphic-string-expression |漢字ストリング値を戻す式です。 |integer |いろいろな長さとなる結果の漢字ストリングの長さ属性です。 |値は 0 から 16 336 の間でなければなりません。 |この引き数が指定されなければ、結果の長さは、1 番目の引き数の長さと同じになります。 ||graphic-string-expression の長さが結果の長さ属性よりも長い場合、 |切り捨てられる文字がすべてブランクで、 |しかも graphic-string-expression が長ストリング (LONG VARGRAPHIC または DBCLOB) でない限り、 |切り捨てが行われ、警告が戻されます (SQLSTATE 01004)。 42.9 ユニコード・データベースのより大きな索引キー 42.9.1 ALTER TABLE レジストリー変数 DB2_INDEX_2BYTEVARLEN がオンであったときに定義された、 1 次および固有キーを含む索引の一部である可変長列の長さを 255 バイトを超える長さに変更することができます。実際、可変長列は外部キーに関係していますが、レジストリー値の設定にかかわらず、列を 255 バイトを超える長さに変更することを妨げるわけではありません。ただし、対応する 1 次キーの長さが 255 バイトを超えていないかぎり、長さが 255 を超えるデータを表に挿入することはできません。これが可能なのは、レジストリー変数 ON で 1 次キーが作成された場合だけです。 42.9.2 CREATE INDEX レジストリー変数 DB2_INDEX_2BYTEVARLEN が ON であれば、長さが 255 バイトを超える可変長列に索引を定義できます。 42.9.3 CREATE TABLE レジストリー変数 DB2_INDEX_2BYTEVARLEN が ON になっていれば、可変キー部分を持つ 1 次および固有キーのサイズを 255 より大きくすることができます。長さが 255 バイトを超える可変長列に外部キーを定義できます。 |42.10 ALLOCATE CURSOR ステートメントの注の誤り |ALLOCATE CURSOR ステートメントの「注:」で、2 つの項目が間違って印刷されています。 |これらの項目の情報は、無視してください。 |42.11 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.12 副選択内の ORDER BY |DB2 は、副選択および全選択の ORDER BY をサポートするようになりました。 |42.12.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.12.2 副選択 |以下に、order-by-clause の位置を示す、 |変更後の副選択の完全な構文図を示します。 |>>-select-clause--from-clause--+--------------+-----------------> | '-where-clause-' | |>--+-----------------+--+---------------+-----------------------> | '-group-by-clause-' '-having-clause-' | |>--+-----------------+----------------------------------------->< | '-order-by-clause-' | | |副選択の文節は、以下の順序で処理されます。 ||FROM 文節 |WHERE 文節 |GROUP BY 文節 |HAVING 文節 |SELECT 文節 |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.12.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.12.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-' | | |注: |全選択に 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.12.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 解説書 の「あいまいさを避けるための列名修飾子」を参照してください。 | |GET_ROUTINE_SAR プロシージャー用の新規入力引き数 | |このプロシージャーは、タイプ INTEGER の入力引き数である |hide_body_flag をサポートするようになりました。 |この引き数は、ルーチン・テキストがカタログから抽出されたときに、 |ルーチン本文を隠すかどうかを、(以下のいずれかを使用して) 指定します。 ||0 |ルーチン・テキストをそのままにします。これがデフォルト値です。 |1 |ルーチン・テキストがカタログから抽出されたときに、ルーチン本文を空の本文と置き換えます。 ||>>-GET_ROUTINE_SAR----------------------------------------------> | |>--(--sarblob--,--type--,--routine_name_string--+-------------------+--)->< | '-,--hide_body_flag-' | | |SET INTEGRITY ステートメントに必要な許可 |保全性の検査をオフにするためにこのステートメントを使用する場合、 |ステートメントの許可 IDの特権に、少なくとも以下のいずれかが含まれていなければなりません。 ||CONTROL 特権: ||指定された表、 |ステートメントによって保全性検査がオフになった下層外部キー表、および |ステートメントによって保全性検査がオフになった下層即時サマリー表。 ||SYSADM または DBADM 権限 |LOAD 権限 | |付録 N. 例外表 | | |「メッセージ列構造の例外表」の 2 行目と 6 行目に、それぞれ最初とその次に検出される制約違反のタイプが示されていますが、次のタイプが抜けていました。 | 'D' - カスケード削除違反 ユニコード更新 46.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 バイトを必要とします。 46.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. データベース・マネージャーによって実行されるコード・ページ変換 注: ユニコード・データベースに接続するとき、アプリケーションが DB2CODEPAGE=1208 を設定する場合、ローカル・コード・ページは UTF-8 なので、コード・ページ変換が必要になります。 ユニコード・データベースに接続するとき、CLI アプリケーションは文字データを漢字データとして、漢字データを文字データとして受け取ります。 UTF-8 コード・ページをアプリケーションが指定するのは可能であり、この場合、漢字データはすべて UCS-2 で、文字データは UTF-8 で送受信されます。このアプリケーション・コード・ページはユニコード・データベースでのみサポートされます。 ユニコード使用時のその他の考慮事項には以下があります。 データベース・コード・ページはデータベースの作成時に決定され、デフォルトではこの値はオペレーティング・システム・ロケール (またはコード・ページ) から決定されます。明示的にユニコード DB2 データベースを作成するには、 CODESET および TERRITORY キーワードを使用できます。たとえば: CREATE DATABASE unidb USING CODESET UTF-8 TERRITORY US アプリケーション・コード・ページはまたローカル・コード・ページにデフォルト設定されますが、これは次の 2 つの方法で UTF-8 にオーバーライドされます。 次のコマンドでアプリケーション・コード・ページを UTF-8 (1208) に設定します。 db2set DB2CODEPAGE=1208 CLI/ODBC アプリケーションの場合、 SQLSetConnectAttr() を呼び出して SQL_ATTR_ANSI_APP を SQL_AA_FALSE に設定します。デフォルト設定は SQL_AA_TRUE です。 GRAPHIC 列のデータは各ユニコード文字につきちょうど 2 バイトですが、 CHAR 列のデータはユニコード文字につき 1 バイトから 3 バイトを使用します。 GRAPHIC 列の文字に関する SQL 制限は一般に CHAR 列の半分ですが、バイト数に関しては同じです。 たとえば、CHAR 列の最大文字長は 254 であり、漢字の列の最大文字長は 127 です。詳しくは、SQL 解説書 の「関数」の章の MAX を参照してください。 GRAPHIC リテラルは G 接頭部を使用して、文字リテラルと区別されます。たとえば: SELECT * FROM mytable WHERE mychar = 'utf-8 data' AND mygraphic = G'ucs-2 data' 注: G 接頭部はユニコード・データベースの場合、オプションです。 詳細および更新されたサポートについては、 40.6.2.4, "ユニコード・データベースのリテラル" を参照してください。 CLI/ODBC および JDBC アプリケーションのサポートは、組み込みアプリケーションのサポートとは異なります。CLI/ODBC サポートに関する情報については、 "CLI の手引きおよび解説書" を参照してください。 UCS-2 のバイト順序は、プラットフォーム間で異なる場合があります。内部的に DB2 はビッグ・エンディアン形式を使用します。 46.1.2 資料の更新 これらのリリース情報には、DB2 バージョン 7.1 でユニコードを使用する際の次の情報への更新が含まれています。 SQL 解説書: 第 3 章 言語エレメント 第 4 章 関数 |第 6 章 SQL ステートメント CLI ガイドおよび解説書: 第 3 章 拡張フィーチャー 付録 C DB2 CLI および ODBC DB2 データ移動ユーティリティー手引きおよび解説書、付録 C エクスポート/インポート/ロード・ユーティリティー・ファイル形式 DB2 でのユニコードの使用法については、管理の手引き の各国語サポート (NLS) の付録: 「DB2 UDB でのユニコード・サポート」を参照してください。 ホスト・システムへの接続 部分目次 |DB2 コネクト 使用者の手引き |47.1 増加する DB2 コネクト・データ転送速度 |47.1.1 エクストラ照会ブロック |47.1.2 RFC-1323 ウィンドウ・スケーリング |47.2 疎結合トランザクションに対する DB2 コネクト・サポート |47.3 Kerberos サポート コネクティビティー補足 48.1 VM 環境でのアプリケーション・サーバーのセットアップ 48.2 CLI/ODBC/JDBC 構成 PATCH1 および PATCH2 の設定 |DB2 コネクト 使用者の手引き |47.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 は動的かつ効率的に、 |送受信ウィンドウ・サイズを調整して、エクストラ照会ブロックを介して戻される |可能性がある大量なデータを収容できます。 |47.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 の使用に当てられています。 |組み込み SQL |SELECT ステートメント自体の上で 'OPTIMIZE for N ROWS' 節 |または 'FETCH FIRST N ROWS ONLY' 節 (あるいはその両方) を指定することによって、 |照会のためにエクストラ照会ブロックを呼び出します。 |'OPTIMIZE for N ROWS' 節を指定すると、DB2 (z/OS 版) は、EXTRA BLOCKS SRV DDF インストール |・パラメーターの設定に応じて、必要な行数をブロックして DB2 コネクトに |戻そうとします。 |アプリケーションは、N 行を超えたフェッチを選択できます。これは、 |照会結果セットに最終的に戻すことができる行数の合計を DB2 (z/OS 版) が N に |制限していないからです。 |'FETCH FIRST N ROWS ONLY' 節も同様に機能しますが、 |照会結果セットは、DB2 (z/OS 版) によって N 行に制限されています。N 行を超えてフェッチする |と、SQL コード +100 (データの終わり) が表示されます。 ||CLI/ODBC |SQL_MAX_ROWS ステートメント属性を介して照会のためにエクストラ照会ブロックを呼び出します。 |DB2 コネクトは、DB2 (z/OS 版) 6.x サーバーの場合、'OPTIMIZE for N ROWS' 節に |タグを付けます。 |照会結果セットに最終的に戻すことができる行数が DB2 (z/OS 版) によって N に |制限されていなくても、N 行を超すフェッチが試みられた場合には、CLI/ODBC は、 |アプリケーションに SQL_NO_DATA_FOUND を戻します。 |代わりに 'FETCH FIRST N ROWS ONLY' 節が DB2 (z/OS 版) 7.1 以降のサーバーに |対して使用されます。 |組み込み SQL の場合と同様に、照会結果セットは、DB2 (z/OS 版) に |よって N 行に制限されています。 |N 行を超えてフェッチする |と、SQL_NO_DATA_FOUND が表示されます。 ||JDBC |setMaxRows 方式を介して照会のためにエクストラ照会ブロックを呼び出します。 |CLI/ODBC の使用可能化と同様に、DB2 コネクトは、DB2 (z/OS 版) サーバー 6.x の |場合、'OPTIMIZE for N ROWS' 節にタグを付け、DB2 (z/OS 版) サーバー 7.1 以降の |場合、'FETCH FIRST N ROWS ONLY' 節にタグを付けます。 |||47.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 にある |ホワイト・ペーパーを参照してください。 |47.2 疎結合トランザクションに対する DB2 コネクト・サポート |DB2 コネクトの中の疎結合トランザクションに対するサポートは、DB2 (OS/390 版) バージョン 6 以降に |アクセスする、XA 分散アプリケーションをインプリメントするユーザーのためのものです。 |このサポートによって、同じグローバル・トランザクションの異なるブランチが、DB2 (OS/390 版) 上の |ロック・スペースを共用できるようになります。 |このフィーチャーによって、同じグローバル・トランザクション内の別のブランチの結果、 |分散トランザクションの 1 つのブランチがロック・タイムアウトまたはデッドロックとなるウィンドウが |少なくなります。 |DB2 コネクトが、同じグローバル・トランザクションの異なるブランチにサービスする各接続に XID を |送信するのであれば、DB2 (OS/390 版) バージョン 6 は、この状態で、ロック・スペースを共用します。 |47.3 Kerberos サポート |DB2 ユニバーサル・データベースは、非 DRDA 環境でユーザーを認証する手段として、 |現在、Kerberos セキュリティー・プロトコルをサポートしています。DB2/390 V7.1 から Kerberos セキュリティーの |サポートが開始されるため、DB2 コネクトは、DRDA AR 機能を追加して、DB2/390 の |接続に Kerberos 認証を使用できるようにします。 |発券システムを処理する Kerberos 認証レイヤーは、Win2K アクティブ・ディレクトリーのメカニズムに統合されます。 |アプリケーションのクライアント・サイドおよびサーバー・サイドは、 |それぞれ Kerberos SSP (Security Support Provider、セキュリティー・サポート・プロバイダー) クライアントおよび |サーバーのモジュールと通信します。SSPI (Security Support Provider Interface、 |セキュリティー・サポート・プロバイダー・インターフェース) は、Kerberos SSP および |他のセキュリティー・プロトコルに対して高水準のインターフェースを提供します。 |通信プロトコル・サポート |SNA 接続の場合、APPC ノードをカタログするとき、SECURITY=NONE を使用する必要があります。 |標準セットアップ |Kerberos 認証を使用するように DB2 を構成する手順には、次の設定作業が含まれます。 ||ネットワーク上で共用されるアクティブ・ディレクトリー内における DB2 の (サービスとしての) 許可ポリシー |Kerberos 鍵配布センター (KDC、Key Distribution Centers) 間の信頼関係 ||最も単純なシナリオでは、構成する、少なくとも 1 つの KDC 信頼関係、 |すなわち、クライアント・ワークステーションを制御する KDC と OS/390 システムとの間の信頼関係が |存在します。OS/390 R10 では、ホストが UNIX KDC として振る舞うことができるようにする、OS/390 の RACF 機能を |通して Kerberos 発券処理を提供します。 |DB2 コネクトは、いつものように、3 層の設定でルーター機能を提供します。 |これは、Kerberos セキュリティーが使用されているときは、認証における役割を引き受けません。 |代わりに、単にクライアントのセキュリティー・トークンを DB2/390 に渡します。 |このように、DB2 コネクト・ゲートウェイが、クライアントまたはホストの Kerberos レルムのメンバーである必要はありません。 |Kerberos を使用するためには、両方の DB2 コネクト・ゲートウェイは、 |認証タイプ KERBEROS で接続がカタログされる必要があります。 |クライアントは、認証 NOT_SPEC または Kerberos のどちらでカタログすることもできます。 |クライアントおよびゲートウェイのこれ以外の認証タイプの |組み合わせは、sqlcode -1401 (認証タイプのミスマッチ) になってしまいます。 |下位レベルとの互換性 |Kerberos サポートのための DB2 の要件: ||DB2 UDB クライアント: |バージョン 7.1 (OS: Windows 2000) |DB2 コネクト: |バージョン 7.1 + フィックスパック 1 (OS: すべて) |DB2/390: |バージョン 7.1 ||DB2/390 については、さらに、OS/390 バージョン 2 リリース 10 以降で実行するという要件が |あります。DB2 コネクト バージョン 7.1 クライアントから接続する場合は、 |下位レベルの DB2/390 システムに対し、さらに暗黙の要件が存在します。 |これらの DB2/390 システムは Kerberos をサポートしませんが、 |サポートされていない DRDA SECMEC に正しく応答しません。 |この問題を解決するために、該当する PTF を適用してください。 ||UQ41941 (DB2/390 V5.1 用) |UQ41942 (DB2/390 V6.1 用) | コネクティビティー補足 48.1 VM 環境でのアプリケーション・サーバーのセットアップ 以下の文を、「ネットワーク情報の提供」のサブセクション「アプリケーション・サーバーを定義する」の最初の行の後に追加してください。 RDB_NAME が DBNAME パラメーターの SQLSTART EXEC で提供されています。 48.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 列のどちらかについて SQL_NULL_DATA が SQLGetTypeInfo() 関数に戻されたとき、トラップされるものがあります。これは、ドライバーに、空ストリングを戻すよう強制します。Impromptu 2.0 で必要です。 4 これはタイム・スタンプの時刻と小数部がゼロの場合、ドライバーに入力タイム・スタンプ・データを日付データとして扱うよう強制します。Microsoft Access で必要です。 8 これはタイム・スタンプの日付部分が 1899-12-30 の場合、ドライバーに入力タイム・スタンプ・データを時刻データとして扱うよう強制します。Microsoft Access で必要です。 16 未使用。 32 ドライバーに、SQL_LONGVARCHAR、SQL_LONGVARBINARY、および SQL_LONGVARGRAPHIC 列に関する情報を戻さないように強制します。アプリケーションには、長いフィールドがサポートされないように見えます。Lotus 123 で必要です。 64 これは、ドライバーにグラフィックス終了出力ストリングの NULL 化を強制します。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 ドライバーに、Microsoft Query アプリケーションが DB2 MVS 同義語を処理するよう、強制します。 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 - 予約済み 追加の情報 部分目次 追加の情報 49.1 DB2 Everywhere は DB2 Everyplace に変更されました 49.2 DB2 UDB バージョン 7 のユーザー補助機能 49.2.1 キーボードによる入力および操作 49.2.1.1 キーボード入力 49.2.1.2 キーボード・フォーカス 49.2.2 ディスプレイを見やすくする機能 49.2.2.1 高コントラスト・モード 49.2.2.2 フォント設定 49.2.2.3 色の非依存 49.2.3 選べる警告キュー 49.2.4 補助技術の互換性 49.2.5 利用しやすい資料 49.3 マウスが必要 49.4 「バインド・ファイルが見つかりません」のエラーで DB2 ランタイム・クライアント結果からバインドを試みる 49.5 サーチ・ディスカバリー 49.6 HP-UX 11 のメモリー・ウィンドウ 49.7 DB2 DFS クライアント・イネーブラーのアンインストール 49.8 Windows NT 上でのクライアントの認証 49.9 統合システムの制約 |49.10 MPP 区分表を用いた統合制限 49.11 DataJoiner 制約 49.12 DB2 の SNA SPM が Windows ブート後に失敗します 49.13 Windows NT および Windows 2000 での DB2 に対するサービス・アカウント要件 49.14 データウェアハウスセンター (DWC) で使用される すべてのユーザー定義プログラムをコミットする 49.15 Windows NT 上でのクライアント・サイド・キャッシング |49.16 ライフ・サイエンス データ・コネクト |49.16.1 新規ラッパー |49.16.2 特記事項- 49.17 SQL Assist の機能強化 |49.18 バックアップおよびリストア・コマンドのヘルプ 49.19 「ウェアハウス・マネージャー」は「DB2 ウェアハウス・マネージャー」 追加の情報 49.1 DB2 Everywhere は DB2 Everyplace に変更されました DB2 Everywhere の名称が DB2 Everyplace に変更になりました。 49.2 DB2 UDB バージョン 7 のユーザー補助機能 DB2 UDB 製品ファミリーには、体の不自由な方のために製品をより使いやすくする機能が用意されています。以下のような機能があります。 キーボードの入力および操作を簡単にする機能 プロパティーの表示を強調する機能 音と表示により警告を促すオプション 補助技術の互換性 オペレーティング・システムのユーザー補助機能との互換性 利用しやすい文書形式 49.2.1 キーボードによる入力および操作 49.2.1.1 キーボード入力 DB2 コントロール・センターはキーボードのみを使用して操作することができます。メニュー項目とコントロールではユーザーがキーボードから直接、コントロールを活動状態にしたり、メニュー項目を選択したりできるアクセス・キーを提供しています。アクセス・キーはコントロールやメニューの上に下線で表示されており、自己文書化することができます。 49.2.1.2 キーボード・フォーカス UNIX ベースのシステムでは、キーボード・フォーカスの位置が反転表示され、ウィンドウが活動状態のエリアとユーザーのキー・ストロークが影響する位置を示しています。 49.2.2 ディスプレイを見やすくする機能 DB2 コントロール・センターには、ユーザー・インターフェースを強調し、視力の低いユーザーでも身近に感じられるようにする多くの機能があります。これらの補助機能には高コントラスト設定やカスタマイズ可能なフォント・プロパティーのサポートなどが含まれています。 49.2.2.1 高コントラスト・モード コントロール・センターのインターフェースはオペレーティング・システムが提供する高コントラスト・モードをサポートしています。この機能は背景色と前景色とのコントラストが強い方が望ましいユーザーを補助する機能です。 49.2.2.2 フォント設定 コントロール・センターのインターフェースは、テキストの色やサイズ、フォントを、ユーザーがメニューとダイアログ・ウィンドウから選べるようになっています。 49.2.2.3 色の非依存 本製品のあらゆる機能を使う上で、ユーザーが色を見分ける必要はありません。 49.2.3 選べる警告キュー ユーザーは、警告を受ける場合の方法として、音の合図と目で見える合図を選ぶことができます。 49.2.4 補助技術の互換性 DB2 コントロール・センターのインターフェースは Via Voice などの画面読み込みアプリケーションと互換性があります。アプリケーション・モード時、コントロール・センターのインターフェースは、目の不自由なユーザーが画面上の情報を利用できるよう、これらの補助アプリケーションに必要なプロパティーを所有しています。 49.2.5 利用しやすい資料 DB2 ファミリー製品の資料は利用しやすい HTML 形式です。これによりユーザーはブラウザーを参照できるよう設定することで資料を表示することができます。画面読み込みや、他の補助技術を使用することも可能です。 49.3 マウスが必要 Windows を除くすべてのプラットフォームで、ツールを使用するためにマウスが必要になります。 49.4 「バインド・ファイルが見つかりません」のエラーで DB2 ランタイム・クライアント結果からバインドを試みる DB2 ランタイム・クライアントは、バインド・ファイルのフルセットを持っていないので、 DB2 ランタイム・クライアントから GUI ツールのバインディングを行うことはできません。この操作は、DB2 管理クライアントのみ行うことができます。 49.5 サーチ・ディスカバリー サーチ・ディスカバリーは、ブロードキャスト・メディアでのみサポートされています。たとえば、サーチ・ディスカバリーは ATM アダプターを介しては機能しません。ただしこの制限は既知のディスカバリーには適用されません。 49.6 HP-UX 11 のメモリー・ウィンドウ メモリー・ウィンドウは、ラージ HP 64 ビット・マシンで、32 ビット・アプリケーションの共有メモリーの 1.75GB よりもたくさんのメモリーを利用したいユーザー向けです。 64 ビット・バージョンの DB2 を実行する場合、メモリー・ウィンドウは必要ありません。メモリー・ウィンドウは、処理ごとまたは処理のグループごとに、1 の共有メモリーが使用可能です。これは、インスタンス独自の 1GB の共有メモリーと、0.75GB のグローバル共有メモリーを所有することができます。ユーザーがこれを利用したい場合、複数インスタンスを、それぞれ独自のウィンドウで実行することができます。メモリー・ウィンドウを使用する場合の前提条件と状態は、次の通りです。 DB2 EE 環境 パッチ : 拡張ソフトウェア 12/98、および PHKL_17795 $DB2INSTANCE 変数がインスタンスに設定されている メモリー・ウィンドウで実行したい DB2 インスタンスごとに、 /etc/services.window ファイルに項目がある必要があります。たとえば: db2instance1 50 db2instance2 60 注: 名前と ID の間にはシングル・スペースのみが入ります。 サーバーで実行、およびシングル・ステートメントより多くのものが必要な DB2 コマンドは、 TCP/IP ループバック方式を使用して実行する必要があります。これは、メモリー・ウィンドウが最初のステートメントの処理を終了した時に、シェルが終了しているためです。 DB2 サービスは、この完了方法について認識しています。 メモリー・ウィンドウで実行するインスタンスに対して、実行したい DB2 コマンドは、db2win (sqllib/bin にあります) で始まる必要があります。たとえば: db2win db2start db2win db2stop メモリー・ウィンドウの外側で実行される DB2 コマンド (メモリー・ウィンドウは実行中) は、 1042 を返す必要があります。たとえば: db2win db2start <== OK db2 connect to db <==SQL1042 db2stop <==SQL1042 db2win db2stop <== OK DB2 EEE 環境 パッチ : 拡張ソフトウェア 12/98、および PHKL_17795 $DB2INSTANCE 変数がインスタンスに設定されている DB2_ENABLE_MEM_WINDOWS レジストリー変数は TRUE に設定されている必要があります。 メモリー・ウィンドウで実行したい各論理ノードのインスタンスごとに、/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 db2win とともに、EE 環境内のみで使用されている DB2 コマンドに前置きを付ける必要はありません。 49.7 DB2 DFS クライアント・イネーブラーのアンインストール DB2 DFS クライアント・イネーブラーがアンインストールされる前に、root は使用中の DFS ファイルがないか、 DFS ファイル・スペースにあるシェルを開いているユーザーがいないか、確認する必要があります。 root で、以下のコマンドを実行します。 stop.dfs dfs_cl /... が、マウントされていないことを確認してください。 mount | grep -i dfs これが実行されていないと、DB2 DFS クライアント・イネーブラーがアンインストールされると、マシンをリブートしなくてはなりません。 49.8 Windows NT 上でのクライアントの認証 新規の DB2 レジストリー変数 DB2DOMAINLIST は、Windows NT 環境での既存のクライアント認証メカニズムを補うために導入されました。この変数は、複数の Windows NT ドメインを定義するために、DB2(Windows NT 版)サーバー上で使用します。このリスト上で定義されたドメインに属しているユーザーからの接続、または接続要求のみが受け入れられます。 このレジストリー変数は、DB2 サーバーおよびクライアントのバージョン 7 (またはそれ以降) が稼働する、純粋な Windows NT ドメイン環境下でのみ使用するようにしてください。 このレジストリー変数を設定する際の情報については、管理の手引き: Performance の「DB2 レジストリーと環境変数」のセクションを参照してください。 49.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 データ・タイプにマップされます。 |49.10 MPP 区分表を用いた統合制限 |1 つの SQL ステートメントを使用してデータ・ソースからデータを選択し、DB2 統合サーバー |上の MPP 区分表に直接、データを挿入、更新、または削除しよう |とすると、SQL0901N エラーが表示されます。統合機能では、 |ニックネームから選択して、MPP 区分表に挿入することは |許可されません。 |フィックスパック 4 (またはそれ以上) を適用すると、次のステップを使用してデータを選択し、 |データを MPP 区分表に挿入できます。 |カスタマー・アプリケーション環境において、DB2NODE 環境変数をエクスポートして、 |アプリケーションが常に接続しなければならないノードを指定する。 | EXPORT DB2NODE=x |ただし、x は、ノード番号。 |指定されたノードだけを含むノード・グループを作成する。 | CREATE NODEGROUP nodegroup_name ON NODE(x) |ただし、x は、ノード番号。 |ノード・グループに表スペースを作成する。 |CREATE TABLESPACE tablespace_name IN NODEGROUP nodegroup_name |表スペースに一時表を作成する。 |CREATE TABLE temp_table_name IN tablespace_name |アプリケーションの INSERT 操作を 2 つのステップに分割する。 |INSERT INTO temp_table_name SELECT * FROM nickname |INSERT INTO MPP_partitioned_table SELECT * from temp_table_name |||INSERT ステートメントを 2 つのステートメントに分割すると、ステートメント・レベル・コミット |およびロールバック・セマンティクスが変更されます。たとえば、1 つのステートメントをロールバック |するのではなく、今後は 2 つのステートメントをロールバックする必要があります。 さら |に、DB2NODE 環境変数に関連したノード番号を変更した場合は、アプリケーション・パッケージを |無効にして再バインドする必要があります。 |上記のステップを実行すれば、データ・ソースからデータを選択し、MPP 区分表にデータを |挿入できます。 1 つのステートメントを使用してデータ・ソースからデータを選択 |し、MPP 区分表のデータを更新、または削除しようとすると、 |引き続き、SQL0901N エラーが表示されます。 この制約事項は、DB2 ユニバーサル・データベース・ |バージョン 8 では削除されます。 49.11 DataJoiner 制約 統合環境内で実行された分散要求は、読み取り専用操作の制限が付与されています。 49.12 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 のファイルにそのような項目があり、そのタイム・スタンプが最新のものと一致している場合、次のように実行する必要があります。 db2stop を呼び出します。 SnaServer サービスを開始します (まだ開始していない場合)。 db2start を呼び出します。 db2diag.log ファイルを再び確認し、その項目がもう、追加されていないことを確かめます。 49.13 Windows NT および Windows 2000 での DB2 に対するサービス・アカウント要件 DB2 (Windows NT または Windows 2000 版) のインストール中に、セットアップ・プログラムは、いくつかの Windows サービスを作成し、このサービスごとにサービス・アカウントを割り当てます。 DB2 を正しく実行するには、セットアップ・プログラムは、DB2 に関連したサービス・アカウントに対して、次のユーザー権限を付与します。 オペレーティング・システムの一部としての動作 トークン・オブジェクトの作成 割り当て量の増加 サービスとしてログオン 処理レベル・トークンの置換 DB2 サービスに対して、別のサービス・アカウントを使用したい場合は、このユーザー権限をサービス・アカウントに付与する必要があります。 このユーザー権限の他に、サービス・アカウントは DB2 製品がインストールされているディレクトリーに対して、書き込みアクセスも必要です。 DB2 管理サーバー・サービス (DB2DAS00 サービス) に対するサービス・アカウントには、他の DB2 サービスの開始および停止を行う権限 (つまり、サービス・アカウントがパワー・ユーザー・グループに属している必要があります。) と、DB2 が管理する DB2 インスタンスに対する DB2 SYSADM 権限も必要となります。 49.14 データウェアハウスセンター (DWC) で使用される すべてのユーザー定義プログラムをコミットする DB2 ストアード・プロシージャー・ビルダーで作成されたストアード・プロシージャーをデータウェアハウスセンター (DWC) のユーザー定義プログラムとして使用したい場合は、ストアード・プロシージャーの con.close(); ステートメントの前に、次のステートメントを挿入してください。 con.commit(); このステートメントが挿入されていないと、ストアード・プロシージャーが行った変更は、ストアード・プロシージャーが DWC から実行される時にロールバックされます。 DWC のユーザー定義プログラムすべてが、データベースに影響する変更用に、組み込まれた DB2 機能を明白に コミットする必要があります。つまり、ユーザー定義のプログラムに COMMIT ステートメントを追加する必要があります。 49.15 Windows NT 上でのクライアント・サイド・キャッシング DB2 データ・リンクがインストールされている Windows NT サーバー・マシンにある READ PERM DB ファイルに有効なトークンを使用して共有ドライブによってアクセスしようとしている場合、ファイルは期待通りオープンされます。ただしその後、同じトークンを使用した後続のオープン要求は実際にはサーバーに届きませんが、クライアント上のキャッシュからサービスされます。トークンの有効期限が切れた後でも、項目はまだキャッシュにあるため、ファイルの内容はユーザーに対して可視であり続けます。ただしこの問題は、ファイルが Windows NT ワークステーション上にある場合は発生しません。 この解決策は、レジストリー項目 \\HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Services\Lanmanserver\Parameters\EnableOpLocks を Windows NT サーバーでゼロに設定することです。 このレジストリー設定により、サーバー上のファイルが共有ドライブを通じてクライアントからアクセスされると、要求はクライアント・キャッシュからサービスされる代わりに、常にサーバーに到達します。このため、トークンはすべての要求についてもう一度検査されます。 この解決策の欠点は、これが共有ドライブを通じたサーバーからのすべてのファイル・アクセスのパフォーマンス全体に影響を与えることです。この設定でも、ファイルがサーバー自体でマップされた共有ドライブを通じてアクセスされる場合は、他のクライアント・マシンからのアクセスとは異なり、要求はキャッシュからサービスされます。このため、トークンの期限切れは起きません。 注: どの場合でも、ファイル・アクセスがローカル・アクセスであり、共有ドライブからのものでなければ、トークンの検査と後続のトークンの期限切れは予定通りに行われます。 |49.16 ライフ・サイエンス データ・コネクト |49.16.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、および Solaris 操作環境に移植されました。 |フィックスパック 6 では、BLAST ラッパーが |AIX から Windows NT、Windows 2000、HP-UX、および Solaris 操作環境に移植されました。 |49.16.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. 49.17 SQL Assist の機能強化 SQL Assist ツールにより、ユーザーは、表結合で "=" 以外の結合演算子を指定できるようになりました。 SQL Assist ツールの「結合」ページで「結合タイプ」ボタンをクリックすることによって呼び出される「結合タイプ」ダイアログが拡張され、結合演算子のドロップダウン・リストが組み込まれました。 使用可能な演算子は "="、"<>"、"<"、">"、"<="、および ">=" です。 SQL Assist は、シンプルな SQL ステートメントの作成でユーザーの役に立つツールです。これはコマンド・センター (「対話式」タブ)、コントロール・センター (「ビューの作成」および「トリガーの作成」ダイアログ)、ストアード・プロシージャー・ビルダー (「SQL ストアード・プロシージャーの挿入」ウィザード)、およびデータウェアハウスセンター (SQL 処理ステップ) から使用できます。 |49.18 バックアップおよびリストア・コマンドのヘルプ |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]"; 49.19 「ウェアハウス・マネージャー」は「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 8200 Warden Avenue Markham, Ontario L6G 1C7 CANADA 本プログラムに関する上記の情報は、適切な使用条件の下で使用することができますが、有償の場合もあります。 本書で説明されているライセンス・プログラムまたはその他のライセンス資料は、IBM 所定のプログラム契約の契約条項、IBM プログラムのご使用条件、またはそれと同等の条項に基づいて、 IBM より提供されます。 本書において示されるパフォーマンスに関するデータは、いずれも制御された環境で決定されたものです。したがって、稼働環境が異なれば、得られる結果は著しく異なる場合があります。また、測定値によっては開発過程で得られたものである場合があり、一般的に使用可能なシステムにおいても、これらと同様な測定値が得られるという保証はありません。 さらに、測定値によっては推定によって見積もられたものである場合があります。実際の結果は異なる場合があります。 お客様は、お客様の特定の環境に適したデータを確かめる必要があります。 他社の製品に関する情報は、それらの製品の提供者、それらの製品の発表資料、またはその他の一般に入手可能な情報源から入手しました。 IBM はそれらの製品をテストしておらず、パフォーマンスの精度、互換性、またはその他の他社製品に関するいかなる記述をも保証するものではありません。 IBM 以外の製品の機能に関する質問は、それらの製品の提供業者にお願いします。 IBM の将来の方向または意向に関して記述がなされていたとしても、それらは予告なしに変更または撤回される場合があり、単に目標を示しているものです。 本書には、日常の業務処理で用いられるデータや報告書の例が含まれています。 より具体性を与えるために、それらの例には、個人、企業、ブランド、あるいは製品などの名前が含まれている場合があります。 これらの名称はすべて架空のものであり、名称や住所が類似する企業が実在しているとしても、それは偶然にすぎません。 著作権使用許諾: 本書には、さまざまなオペレーティング・プラットフォームでのプログラミング手法を例示するソース言語で書かれたサンプル・アプリケーション・プログラムが掲載されています。 このサンプル・プログラムは、サンプル・プログラムが書かれているオペレーティング・プラットフォームのアプリケーション・プログラミング・インターフェースに準拠したアプリケーション・プログラムの開発、使用、販売、または配布を目的として、いかなる形式においても IBM に対価を支払うことなくこれを複製し、改変し、配布することができます。 これらの例は、すべての場合について完全にテストされたものではありません。 IBM はこれらのプログラムに信頼性、可用性、および機能について法律上の瑕疵担保責任を含むいかなる明示または暗示の保証責任も負いません。 それぞれの複製物、サンプル・プログラムのすべての部分、またはすべての派生した創作物には、次のように著作権表示を入れていただく必要があります。 (c) (お客様の会社名) (西暦年). このコードの一部は、IBM Corp. のサンプル・プログラムの派生物です。(c) Copyright IBM Corp. _ 西暦年を入れる _. All Rights Reserved. A.1 商標 アスタリスク (*) 付きの以下の用語は、IBM Corporation の商標です。 ACF/VTAM AISPO AIX AIX/6000 AIXwindows AnyNet APPN AS/400 BookManager CICS C Set++ C/370 DATABASE 2 DataHub DataJoiner DataPropagator DataRefresher DB2 DB2 コネクト DB2 エクステンダー DB2 OLAP Server DB2 ユニバーサル・データベース 分散リレーショナル・ データベース体系 DRDA eNetwork Extended Services FFST First Failure Support Technology IBM IMS IMS/ESA LAN DistanceMVS MVS/ESA MVS/XA Net.Data OS/2OS/390 OS/400 PowerPC QBIC QMF RACF RISC System/6000 RS/6000 S/370 SP SQL/DS SQL/400 System/370 System/390 SystemView VisualAge VM/ESA VSE/ESA VTAM WebExplorer WIN-OS/2 以下の用語は、他社の商標あるいは登録商標です。 Microsoft、Windows、Windows NT および Windows ロゴは、Microsoft Corporation の米国およびその他の国における商標です。 Java およびすべての Java 関連の商標およびロゴ、および Solaris は Sun Microsystems, Inc. の米国およびその他の国における商標です。 Tivoli および NetView は Tivoli Systems Inc. の米国およびその他の国における商標です。 UNIX は、X/Open Company Limited が独占的にライセンスしている、米国、または他国、あるいはその両方における登録商標です。 他の社名、製品名、またはサービス名がアスタリスクを 2 つ (**) 付けて示されることがありますが、これは他社の商標またはサービス名です。 索引 ア カ サ タ ナ ハ マ ヤ ラ ワ Numerics A C D E G H I J L M N O P R S T V W X ア アクセス可能性 キーボード・ショートカット (941) アクセスのヘルプ (1049) 値からタイム・スタンプを戻す TIMESTAMP 関数 (1108) アンインストール DB2 DFS クライアント・イネーブラー (1139) 移行 エラー (795) 視点の問題 (781) db2iupdt を実行してインスタンスを更新 (788) Windows 2000 上 (777) インストール 取りはずし可能ドライブ使用時にハング (780) AIX での DB2 エンタープライズ拡張エディション (774) DB2 処理の停止 (785) Windows で必要となるサービス・アカウント (1146) インストール・エラー AIX (792) インストール前提条件 Linux for OS/390 上の UDB EE および CEE (790) ウィザード データベースの作成 (963) MQSeries 支援 (965) OLE DB 支援 (967) ウェアハウス・エージェントのインストール (985) エクステント・サイズ データベース作成ウィザードの設定 (961) エラー、インストール AIX (791) エラー・メッセージ 移行中 (794) 区分データベースへのノード追加 (851) バインド・ファイルが見つからない (1134) ファイル・アクセス拒否 (946) 無効なショートカット (940) SQL10012N (954) オートローダー fork 中の停止 (901) 応答ファイル・インストール サテライト特定のキーワード (881) DB2 制御サーバーのキーワード (876) オペランド ストリング (1085) オンライン・ヘルプ (1051) オンライン情報 検索 Solaris 操作環境 (764) オンライン情報の検索 Solaris 操作環境 (762) カ カーソル 値並列性 (1019) 感度 (1013) キーセット・ドリブン 更新 (1018) 更新可能 (1014) スクロール可能 (1016) アプリケーションの障害追及 (1021) キーセット・ドリブン (1006) サーバー側 (1004) 静的 (1005) OS/390 (1003) 属性, デフォルト (1011) タイプ (1012) 並列性 (1015) 環境変数 LD_ASSUME_KERNAL (932) 関数 スカラー DATE (1093) GRAPHIC (1098) MQPUBLISH (1052) MQREADCLOB (1055) MQRECEIVECLOB (1058) MQSEND (1061) TIME (1101) TIMESTAMP (1107) VARGRAPHIC (1113) 表 MQREADALLCLOB (1064) MQRECEIVEALLCLOB (1067) ユニコード・データベース (1087) キー定義 メタデータ・インポート / エクスポート (970) キーボード・ショートカット 関係する問題 (943) キャプチャー・プログラムとアプライ・プログラム アプリケーション内で開始 (919) エラー・メッセージ (918) AS/400 (915) クイック・ツアー (968) クエリー・イネーブラー HP-UX と NUMA-Q でサポートされない (991) クエリー・パトローラー 移行後のユーザー特権の損失 (989) クエリー・パトローラー・トラッカー NUMA-Q でサポートされない (990) 区分データベース ノード追加時のエラー (850) クライアント ダウンロード (771) 3 階層環境 (1007) クラッシュ・リカバリー db2inidb ツールの使用 (836) 言語サポート SAP コネクター (981) ゲートウェイ 3 階層環境 (1008) 高可用性 (835) 更新済みブック アプリケーション開発の手引き (740) アプリケーション構築の手引き (738) 管理の手引き (739) コマンド解説書 (741) データウェアハウスセンター 管理の手引き (743) データ回復と高可用性の手引きと解説書 (742) メッセージ解説書 (744) DB2 ウェアハウス・マネージャー インストールの手引き (745) SQL 解説書 (746) コピー・デーモン (796) コマンド CREATE DATABASE (890) コントロール・センター 「ツール設定」ノートブック (955) 作動中でない (758) 使用、中国語 (簡体字) での (752) 使用、日本語での (753) 障害追及 (950) バージョン 6, 管理者サテライト環境を使用 (886) 並列アプレットの制限 (956) 両方向サポート Windows NT 上 (937) Internet Explorer のエラー (756) OS/2 上での infopop の表示の問題 (952) OS/390 に必要な修正 (949) OS/390 プラットフォーム上 (948) UNIX プラットフォームでの障害追及 (951) VM および VSE データベースを管理するために使用 (936) Windows 95 でのスクリプト・センターの問題 (957) サ サーチ・ディスカバリー (1136) サテライト インストール上の考慮事項 (878) 応答ファイル・インストール (879) 対話インストール (882) DB2 パーソナル・エディション (867) DB2 ワークグループ・エディション (868) サテライト環境 インストール上の考慮事項 (877) サテライトの応答ファイル・インストール (880) サテライトの対話インストール (883) 前提条件 (871) バージョン 6 サテライト管理センター での管理 (888) DB2 パーソナル・エディションのサテライト (869) DB2 ワークグループ・エディションのサテライト (870) サテライト管理センター バージョン 6, 管理者サテライト環境を使用 (887) サンプル・コンテンツ, 表示 (959) 式 ストリング (1082) 連結演算子 (1081) 式内での時刻の使用 TIME 関数 (1102) 時刻 式内での時刻の使用 (1103) 時刻を基にした戻り値 (1104) 視点 移行後に使用不可になるもの (782) 照会結果, 表示 (958) 情報カタログ・マネージャー ユーティリティー・プログラム (982) 処理 スケジュール (977), (978) 処理, インストール前に停止 (786) スカラー関数 DAYOFWEEK_ISO (1045) WEEK_ISO (1046) スケジュール ステップおよび処理 (974) 重複 (975) ステップ スケジュール (976) ストアード・プロシージャー データウェアハウスセンター (1148) ストリング オペランド (1086) 式 (1084) ストリングを列に割り当てる, 規則 (1076) 静的プロファイル, JDBC/ODBC/CLI アプリケーション (998) 制約事項 SAP コネクター (980) 接続 増加するデータ転送速度 (1132) タ タイム・スタンプ・ストリング 定義 (832) タイム・ストリング 定義 (831) タグ言語ファイル キー定義 (971) 中国語 (簡体字) Linux でのロケール設定 (751) 中断入出力関数 連続可用性のサポート (834) ツール Linux 上での使用 (934) 次のキーロック (924) 転送速度 増加する (1130) データ・タイプ ユニコード・データベースでのプロモーション (1072) データ・リンク・マネージャー バックアップ方式 (898) ファイルのリストア中の問題 (800) データ移動 ユニコード・クライアントの制限 (903) データウェアハウス・センター ストアード・プロシージャーを使用する (1147) データウェアハウスセンター キー定義 (972) タグ言語ファイル (973) データ転送速度 増加する (1131) データベース移動ツール (899) データベース作成ウィザード エクステント・サイズの設定 (962) デッドロック (922) 統合システム 制限 (804) ニックネーム (803) ラッパー (802) 統合システム, 制約 (1143) ナ 日時データ・タイプ ストリング表記 (1089) 日時の値 ストリング表記 (829) 日本語 DB2、PTX での (755) Linux でのロケール設定 (750) 認証 DB2DOMAINLIST を使用してドメインごとに (1142) ハ バックアップ LOGRETAIN=CAPTURE の場合 (892) バックアップ方式 データ・リンク・マネージャーの (897) バッファー・プール ブロック・ベースの (844) ページ・ベースの (843) 連続するページ (847) バッファー・プール ID (848) バッファー・プールのブロック化 (842) 例 (849) パッチ・レベル Solaris バージョン 2.6 (773) パフォーマンス RAID 上 (827) 日付ストリング 定義 (830) 表 例外 メッセージ列の構造 (1126) 表スペース RAID 上 (826) 表の構造 (916) ファイル・アクセス拒否エラー (945) ファイルのリストア データ・リンク・マネージャー (801) 複合 SQL, 使用 (1022) 複数サイト更新テスト接続 インスタンスのバージョンの非互換性 (947) 分割ミラー スタンバイ・データベースとして (839) バックアップ・イメージとして (840) 1 次データベースとして (841) 分割ミラー処理 オンライン (837) 分散読み取り (845) ヘルプ (1050) 変換 日時からストリング変数に (1091) 文字ストリングからタイム・スタンプ (1110) 2 バイト文字ストリング (1117) SBCS と DBCS の混合から DBCS (1116) 変換規則 ストリング比較 (1080) ストリングを結合する操作 (1078) ベクトル I/O (846) ホット・キー 関係する問題 (942) マ 無効なショートカット・エラー (939) メッセージ キャプチャー・プログラムとアプライ・プログラム (917) メモリー・ウィンドウ HP-UX 11 (1137) 文字ストリング 割り当て, 概説 (1073) 2 バイト文字ストリング (1115) VARGRAPHIC スカラー関数 (1114) 文字変換 ストリングを結合する操作の規則 (1077) ストリングを比較する規則 (1079) ヤ ユーザー・プロファイル ノード状況の変更 (988) ユーザー補助機能 (1133) ユニコード 関数 (1088) 資料の更新 (1129) データベースおよびアプリケーション (1127) ODBC アプリケーション (1044) ユニコード・クライアント データ移動制限 (904) ラ ランタイム・クライアントを使用するデータベース・ユーティリティーのバインド (996) リストア DATALINK 列の問題 (798) LOGRETAIN=CAPTURE の場合 (893) リモート・クライアント・アクセス Communication Server for NT の構成 (779) 両方向言語サポート Windows NT 上のコントロール・センター (938) 例外表 メッセージ列の構造 (1125) レジストリー変数 DB2DOMAINLIST (1141) DB2_BINSORT (852) DB2_BLOCK_BASED_BP (854) DB2_INLIST_TO_NLJN (856) DB2_NEWLOGPATH (858) DB2_NEWLOGPATH2 (861) DB2_REDUCED_ OPTIMIZATION (863) DB2_ROLLFORWARD_ NORETRIEVE (859) 列 ストリング割り当て, 基本規則 (1075) レプリケーション 計画 (910) シナリオ (906) 任意の場所での更新の前提条件 (911) 表および列名の制限 (907) 問題判別 (912) DATALINK (908) IBM 以外のサーバー (905) レプリケーション・アナライザー (913) レプリケーション・データベース 作成 (838) 連結 演算子 (1083) ロケール Linux での日本語および中国語 (簡体字) (748) ロック, オプティミスティック (1020) ロック待機 (923) ワ 割り当て ストリング, 基本規則 (1074) 日時値, 規則 (1090) 日時からストリング値に (1092) Numerics 2 バイト文字ストリング (DBCS) 戻りストリング (1118) A Adobe Acrobat Reader 英語以外のロケールでアクセスする (769) ADT トランスフォーム (999) AIX インストール・エラー (793) DB2 のインストール (775) AIX 4.3.3 fork 後のオートローダーの停止 (902) AS/400 キャプチャー・プログラムとアプライ・プログラム (914) C CAPTURE (LOGRETAIN 設定) バックアップおよび リストア動作 (894) CLI 構成キーワード CURRENTFUNCTIONPATH (1026) SKIPTRACE (1027) ストアード・プロシージャー 複数結果セット (1001) ユニコード・アプリケーションの作成 (1002) 利点 (1000) CLI 関数 SQLBindFileToParam (1029) SQLColAttribute (1030) SQLGetInfo (1034) SQLGetLength (1036) SQLNextResult (1039) SQLSetStmtAttr (1041) CLI ストアード・プロシージャー 自動バインド (1025) 制限 (1024) CLI0637E (995) CLOB データ MQSeries 関数 (1070) CREATE DATABASE (891) CREATE PROCEDURE ステートメント GET DIAGNOSTICS ステートメント (1119) D DataJoiner 制限 (1144) DATALINK リストア時の問題 (797) レプリケーション (909) DATE 関数 値から日付形式への変換 (1095) 詳細記述 (1094) DAYOFWEEK_ISO スカラー関数 (1047) DB2 エンタープライズ・エディション サテライトとしてセットアップ (866) 前提条件 (873) バージョン 6, DB2 制御サーバーを使用 (884) DB2 サーバー (VM および VSE 版) コントロール・センターからデータベースを管理 (935) DB2 制御サーバー 応答ファイル・ インストール (875) 最小要件 (874) バージョン 6, アップグレード (885) DB2 の始動 Windows 95、98、および ME での db2start の使用 (921) DB2 パーソナル・エディション サテライトとしてセットアップ (865) 前提条件 (872) DB2 リレーショナル・コネクト インストール、UNIXでの (806) Windows NT への インストール (805) db2ArchiveLog (994) db2inidb ツール (833) db2iupdt コマンド, DB2 の移行後に実行 (787) db2move (900) db2start Windows 95、98、および ME 上 (920) DB2_BINSORT (853) DB2_BLOCK_BASED_BP (855) DB2_INLIST_TO_NLJN (857) DB2_NEWLOGPATH (860) DB2_NEWLOGPATH2 (862) 従来は NEWLOGPATH2 (896) DB2_PARALLEL_IO (828) DB2_REDUCED_ OPTIMIZATION (864) DB2_ROLLFORWARD_ NORETRIEVE DFS クライアント・イネーブラー アンインストール (1140) dlfm client_conf 失敗の原因 (799) DWC7906, メッセージの更新 (969) E enable_MQFunctions (928), (930) G GET DIAGNOSTICS ステートメント (1120) GET ROUTINE (889) GET_ROUTINE_SAR (1124) GRAPHIC 関数 値および引き数 (1097) 詳細記述 (1096) GUI ツール バインド・エラー (1135) H HP-UX 照会イネーブラーのサポートなし (992) HP-UX 11 メモリー・ウィンドウ (1138) I Internet Explorer コントロール・センターのエラー (757) IPX/SPX プロトコル・サポート, Windows 2000 上 (784) iSeries エージェント、トランスフォーマーを使用する (987) iSeries エージェントのポストインストールの考慮事項 (986) J JDBC スクロール可能カーソル, アクセス (1010) JDBC/ODBC/CLI 静的プロファイル, 制限 (997) JDK 1.1 インストール・パス (953) L Linux コントロール・センター用に環境を設定 (789) 日本語版および中国語 (簡体字) 版のロケール設定 (749) DB2 UBD 管理ツールの実行 (933) M Microsoft SQL Server データ・ソース 環境変数 (818) コード・ページ (824) パフォーマンスの向上 (820) DB2 へのリンク (819) DSN 名 (822) MERANT ライブラリー (817) MERANT ラッパー (821) ODBC トレース (823) ODBC ドライバー (816) MQ 関数 (929), (931) MQPUBLISH 関数 値および引き数 (1054) 詳細記述 (1053) MQREADALLCLOB 機能 値および引き数 (1066) 詳細記述 (1065) MQREADCLOB 関数 値および引き数 (1057) 詳細記述 (1056) MQRECEIVEALLCLOB 関数 値および引き数 (1069) 詳細記述 (1068) MQRECEIVECLOB 関数 値および引き数 (1060) 詳細記述 (1059) MQSEND 関数 値および引き数 (1063) 詳細記述 (1062) MQSeries 関数 CLOB データ・サポート (1071) MQSeries 補助ウィザード (964) N NetQuestion OS/2 上での TCP/IP の使用 (765) Netscape エラー・メッセージ (768), (960) オンライン情報にアクセス (760) NEWLOGPATH2 DB2_NEWLOGPATH2 と呼ばれるようになった (895) NLV サポート ユニコード (1128) NUMA-Q 照会イネーブラーまたはトラッカーのサポートなし (993) O ODBC スクロール可能カーソル, アクセス (1009) フェッチ方向 (1017) ODBC ユニコード・アプリケーション (1043) OLE DB 補助ウィザード (966) Oracle データ・ソース 環境変数 (809) Linux ラッパー (808) Solaris ラッパー (807) OS/2 コントロール・センターのインストール (944) NetQuestion (766) P PDF ファイル 英語以外のロケールでアクセスする (770) PTX 使用、日本語での (754) R RAID 最適化 (825) RESULT_STATUS GET DIAGNOSTICS ステートメント (1121) ROW_COUNT GET DIAGNOSTICS ステートメント (1122) S SAP コネクター インストール (979) SNA SPM リブート後の検査 (1145) SNA サーバー ホストまたは AS/400 アプリケーションから UDB にアクセスする (778) Solaris UltraSparc 以前のバージョンのサポートの欠落 (747) V2.6 に必要なパッチ・レベル (772) Solaris オペレーティング・システム 64 ビット 構成 (925) 制限 (926) Solaris 操作環境 オンライン情報の検索 (763) SQL プロシージャー GET DIAGNOSTICS ステートメント (1123) SQL, 複合 (1023) SQLBindFileToParam CLI 関数, 訂正 (1028) SQLColAttribute 関数 SQL_DESC_AUTO_UNIQUE_ VALUE (1031) SQL_DESC_UPDATABLE (1032) SQLGetData 関数 (1033) SQLGetInfo 関数 (1035) SQLGetLength 関数 DBCLOB (1037) SQLNextResult 関数 (1038) SQLSetEnvAttr 機能 SQL_ATTR_KEEPCTX 属性 (1040) SQLSetStmtAttr 関数 SQL_ATTR_QUERY_TIMEOUT 属性 (1042) Sybase Windows での ICM との非互換性 (983) Sybase Open Client (811) Sybase データ・ソース (810) 環境変数 (812) コード・ページ (815) パフォーマンスの向上 (814) DB2 へのリンク (813) T TCP/IP NetQuestion (767) time 値からタイム・スタンプを戻す (1109) TIME 関数 値および引き数 (1100) 詳細記述 (1099) TIMESTAMP 関数 値および引き数 (1106) 詳細記述 (1105) V VARGRAPHIC 関数 値および引き数 (1112) 詳細記述 (1111) W Web ブラウザー Windows 2000 での推奨 (759) WEEK_ISO スカラー関数 (1048) Windows Sybase と ICM の非互換性 (984) Windows 2000 移行 (776) 推奨 Web ブラウザー (761) IPX/SPX プロトコル・サポート (783) X XML エクステンダー リリース情報 (927) 1 サービス・ポリシーは、このメッセージング操作に適用されるべきサービス・オプションの品質のセットを定義します。このオプションには、メッセージ優先順位とメッセージ持続性が含まれます。詳しくは「MQSeries アプリケーション・メッセージング・インターフェース」マニュアルを参照してください。