![]() ![]() ![]() ![]() ![]() |
インストールガイド 05/21/03 11:48:11 |
この章では、SilverMasterまたは配備データベースとしてNovell exteNd アプリケーションサーバで使用するDB2データベースの設定方法について説明します。この章の節は次のとおりです。
サポートされているデータベースバージョンの最新情報については、Novell exteNd アプリケーションサーバ
リリースノートを参照してください。
この節では、Novell exteNd テクニカルサポートで推奨される接続およびプレスインストールのセットアップについて詳しく説明します。 DB2のサポートには、次のコンポーネントが含まれます。
DB2データベースソフトウェア Novell exteNd アプリケーションサーバは、DB2 Universal Databaseバージョン5.2、バージョン6.1およびバージョン7.1をサポートします。 DB2データベースは、次にリストされているDB2クライアントからの接続をサポートする任意のプラットフォームに常駐できます。これらのプラットフォームには、AS/400、OS/390、NT、UNIX、 そしてOS/2などが含まれてますが、これだけに限定されるわけではありません。
データベースのバージョンはTCP/IPをサポートするバージョンでなければなりません。 一般に、TCP/IPをサポートーするためには最低でもV4R2でなければなりません。NovellはV4R3でのテストを行いましたが、DB2 に対するバージョン要件はプラットフォームによって異なります。 DB2のバージョンがV4R2より以前のものである場合、Universal Database Clientをサポートするためにはさまざまな設定が必要となります。 AS/400とOS/390の環境では、NT、OS/2あるいはUNIX環境に比べより多くの設定が必要となる傾向があります。
DB2クライアントソフトウェア Novell exteNd アプリケーションサーバは、IBM Universal Database Client バージョン5.2とDB2 Connect Enterprise Edition バージョン6.1および7をサポートします。DB2 5.0 のユーザは、FixPack FP6 9074を適用することでバージョン5.2にアップグレードできます。DB2 7.1のユーザは、FixPack 3を適用することでバージョン7.2 にアップグレードできます。
ご使用中のソフトウェアがバージョン要件を満たしていない場合は、指定されたバージョンを取得する必要があります。
Novell exteNd アプリケーションサーバは、Universal Databaseクライアントに含まれている、IBMによって作成されたType 2 JDBCドライバを使ってDB2に接続します。 このドライバは、UDBクライアントとのインタフェースによってバックエンドのDB2サーバとデータベース接続を確立します。 アプリケーションサーバは、正式にTCP/IP接続をサポートしますが、ユーザはIBMのネィティブプロトコルであるAPPCを使って接続できます。
アプリケーションサーバでDB2データベースを使用できるようにするには、次の指示に従います。
手順2: Universal Database ClientからDB2への接続を準備する
サポートされているデータベースの使用法 DB2は、SilverMasterデータベースとして使用することができ、配備データベースに必要なアプリケーションサーバのシステムテーブルを保存することができますが、次の例外があります。 DB2がAS/400またはSystem 390上で動作している場合、DB2をSilverMasterとして使用することはできません(すなわちシステムテーブルを保管できません)。
SilverMasterと配備データベース 配備データベースは、SilverMasterデータベースと必要なテーブルの名前がまったく同じものがいくつかあるため、両データベースが物理的に同じスペース内に存在することはできません。
注記: DB2のバージョンがV4R2より以前のものである場合、Universal Database Clientをサポートするためにはさまざまな設定が必要となります。
Universal Database Clientからの接続をサポートするため、IBMではデータベースとクライアントソフトウェアの設定に関する多数のマニュアルを提供しています。 これらのマニュアルは、Universal Database ClientとともにインストールされるInformation CenterあるいはIBMのWebサイトから入手できます。
データベーススキーマが非常に大きい場合は、DB2CLI.INIファイルをスキャンする時間を短縮するためデータベースの設定を追加することを検討してください。 また、次のIBMマニュアルを参照してください。
データベースクライアントは、アプリケーションサーバが常駐するシステム上にインストールする必要があります。
Windows NT セットアッププログラムの指示に従います。 Universal Database ClientとClient Application Enablers (CAE)を混同しないよう注意してください。 CAEをインストールしても必要なコンポーネントがすべて揃うわけではありません。 すべてのEnterprise Connect製品をインストールする必要があります。
Solaris SolarisにDB2データベースのインストールを開始する前に、インストールに適用するよういくつかのカーセル設定を変更しなければなりません。 /etc/systemディレクトリで次のように設定します。
msgsys:msginfo_msgmax=65535 に設定します。 msgsys:msginfo_msgmnb=65536 に設定します。 msgsys:msginfo_msgseg=8192 に設定します。 set msgsys:msginfo_msgssz=16
CDからデータベースクライアントをインストールします。 DB2 JDBCを正しく使用してアプリケーションサーバのDB2プロファイルスクリプトを参照できるようにするため、このインストールの際にDB2インスタンスをインストールして作成します。
Windows NT セットアッププログラムを実行するため次の指示に従います。
UNIX Solarisにバージョン5.2をインストールする際も、DB2 Connect - Enterprise Editionバージョン6.1のインストールを除いて、これと同じ指示に従います。
HP-UXメモ DB2 6.1をインストールする場合のHP-UXカーネル設定パラメータの推奨値は次のとおりです。
Windows NT セットアッププログラムの指示に従います。
HP-UXとSolaris DB2 ConnectのインストールおよびHP-UXとSolarisのパラメータ設定については、IBM Webサイトの『IBM DB2 Connect Enterprise Edition for UNIX Quick Beginnings』ガイドを参照してください。
Windows NT アプリケーションサーバは、DB2クライアントの「エイリアス」を使用して接続されます。 これらのエイリアスは、DB2 for Windows NTプログラムフォルダの中にあるIBMのClient Configuration Assistantを使用して設定されます。 Client Configuration Assistantを実行するには、NTへのログインIDは管理者権限を持ちまたIDは8文字以内でなければなりません。 これらの手順を終了するために、DB2管理者であるかまたは管理者権限を持っている必要があります。
注記: これらの手順に必要な情報を得るためDB2管理者に連絡を取る必要があります。
DB2 for Windows NTプログラムフォルダのClient Configuration Assistantを開きます。
Client Configuration Assistant画面の右上の[Add]ボタンをクリックします。 続行するには[Next]を選択します。
DB2サーバーが動作しているDB2サーバホスト名、TCPポート番号、およびサービス名(オプション)を設定します。 続行するには[Next]を選択します。
エイリアス名を入力します(後でアプリケーションサーバーにデータベースを追加する際にこの名前を使用します)。 続行するには[Next]を選択します。
(オプション)これらの設定をODBCデータソースとして登録します。 この手順は必須ではありませんが、これを行うようお薦めします。
インストールの詳細については、IBM Webサイトの「Most Common DB2 Connect Problems」を参照してください。
Solaris DB2データベースとの接続を確立するため、DB2コマンドラインプロセッサを入力し、次の2つのコマンドを入力します。
catalog tcpip node tcpipnodealias remote servername server port#
ここで、tcpipnodealiasはDB2サーバーのローカルエイリアス(通常はservernameと同じ)、servernameはDB2サーバの名前、port# はTCP/IPコールを受信するよう設定されているデータベースサーバのポートです。
catalog database databasename as aliasname at node tcpipnodealias
ここで、databasenameは実際のデータベース名、aliasnameはデータベースのローカル名(実際の名前と同じでも構いません)、tcpipnodealiasは最初のカタログステートメントで指定されている名前です。
connect to aliasname user userid using password
インストールの詳細については、IBM Webサイトの「Most Common DB2 Connect Problems」を参照してください。
IBMはデータベースへのクライアント接続を追跡する目的のためにクライアント側に.iniファイルを提供しています。 変更を加えない場合、アプリケーションサーバは環境内に「すべて」のDB2テーブルとビューの追加を試みます。 ほとんどのアプリケーションでは全リストのサブセットだけが必要となります。 DB2データベースに変更を加えないで.iniファイルに追加すると、非常に時間がかかる場合があります。 アプリケーションでスキーマを読み取るのにかかる時間を短縮するためにできることがいくつかあります。
1つのオプションとして、サーバにデータベースを追加する際アプリケーションサーバで読み取るテーブルのサブセットを指定します。 詳細については、『機能ガイド』の SilverCmdに関する章または『管理者ガイド』の データベースの追加(データソース設定に関する章の中)に関する節を参照してください。
または、次の指示に従ってClient Configuration Assistantから.iniファイルのパラメータに変更を加えることができます。
または、テキストエディタを使用して、sqllibディレクトリにあるDB2クライアントの.iniファイルを読み込み、これを変更することもできます。 最初のエイリアスエントリ(Client Configuration Assistantを使って入力した名前)は次のようになります。
[db2alias] DBALIAS=db2alias
テーブルの数を制限するには、特定の「スキーマ」を指定できます。 この例では、AS/400の場合オブジェクトの所有者/ユーザまたはライブラリを参照します。
SCHEMALIST="userid","userid2"
極端に大きなデータセットでは、SCHEMALISTを使用するだけではスキャン時間を短縮できない場合があります。 アプリケーションサーバで応答するテーブルの総数を大幅に減らすためには、次の手順を終了させる必要があります。
代替所有者を使用してすべてのシステムテーブルのビューを作成します(実行するのはDBAでなければなりません)。 アプリケーションでアクセスするテーブルの所有者と同じIDでビューを作成しないでください。一意な所有者IDでこれらのビューを作成します。
SYSSCHEMA="owner"
たとえば、異なる3人の所有者のオブジェクトを表示するためのビューを作成することができます。 このサンプルビューの構文は、NT上のDB2用に使用されています。
CREATE VIEW MYSCHEMA.SYSTABLES AS SELECT * FROM SYSIBM.SYSTABLES WHERE CREATOR IN (\qUSER1\q,\qUSER2\q,\qUSER3\q)
同一スキーマの下で必要なすべてのシステムテーブルのビューが作成されると、 iniファイル内のエントリは次のようになります。
SYSSCHEMA="MYSCHEMA"
アプリケーションサーバは、これらのオブジェクトだけをスキャンします。 SCHEMALISTと組み合せて使用した場合、サーバは3人の所有者のオブジェクトをスキャンしましすが、SCHEMALISTで参照される所有者に追加されるだけです。
重要: インストール時間とサーバのスタート時間を短縮するため、先に述べたオプションを使用することをお薦めします。
MVS環境では、ロングのデータタイプとの互換性のため変数を設定する必要があります。 この設定についての詳細は、『Call Level Interface』マニュアルのLONGDATACOMPATに関する節を参照してください。
LONGDATACOMPAT=1
データベースを追加した後DB2にレコードを保存できない場合は、トランザクション変数を設定する必要があります。 次にリストされている例はAS/400用で、テーブル結合の必要が省かれています。 オプションの完全なリストについては、『Call Level Interface』マニュアルのTXNISOLATIONに関する節を参照してください。
TXNISOLATION=32
Windows NT アプリケーションサーバをDB2に接続するには、DB2ライブラリをAGCLASSPATH環境変数に追加する必要があります。 これを行うためには、[コントロールパネル]、[システム]の順に開き、[Environment]タブを選択します。 AGCLASSPATHと呼ばれるシステム環境変数を作成し、その値をC:\sqllib\java\ db2java.zip(DB2クライアントをデフォルトロケーションのC:ドライブにインストールしたと仮定します)に設定します。DB2クライアントをC:ドライブ以外にインストールした場合は、それに応じてAGCLASSPATH変数を設定してください。
デフォルトでは、これは JDBC 1.0ドライバに設定されています。 DB2 7.xでは、次のスクリプトを実行してJDBC 2.0ドライバを使用できます。 sqllib\java12\usejdbc2 (詳細については、 ここをクリックしてください) (www-3.ibm.com/cgi-bin/db2www/data/db2/ udb/winos2unix/support/document.d2w/report?&fn=1008960).
UNIX DB2ではDB2 JDBCドライバのネイティブライブラリとJavaクラスをJavaクラスパスとシステムライブラリパスに追加する必要があります。 これを行うため、先に作成したDB2インスタンスをアプリケーションサーバの環境ファイル.agprofile(アプリケーションサーバのインストールライブラリに保存されています)で直接参照できます。 次の行を追加して.agprofileを編集します。
. /export/home/db2inst1/sqllib/db2profile
デフォルトでは、これは JDBC 1.0ドライバに設定されています。 DB2 7.xでは、次の行を.agprofileファイルに追加してJDBC 2.0ドライバを使用できます(詳細については、 ここをクリックしてください)。(www-3.ibm.com/cgi-bin/db2www/data/db2/udb/ winos2unix/support/document.d2w/report?&fn=1008960):
. /home/db2inst1/sqllib/db2profile . /home/db2inst1/sqllib/java12/usejdbc2
AGCLASSPATHと.agprofileファイルの編集の詳細については、『管理者ガイド』の
データソース設定に関する章を参照してください。
これでアプリケーションサーバーからDB2データベースにアクセスする準備が整いました。 必要に応じて、次の作業ができるようになります。
詳細については、『管理者ガイド』の
データソース設定に関する章を参照してください。
SQL0551N 「ser does not have the privilege to perform operation GRANT」 DB2 6.1と接続中にDB2クライアントからこのメッセージを受け取ったときは、DB2ユーティリティをデータベースにバインドする必要があります。 アプリケーションサーバで使用している各データベースごとにプロシージャを適用しなければなりません。 バインドプロシージャは以下のとおりです。
DB2インスタンスユーザ(たとえばdb2inst1)としてログインし、そのインスタンスのbndサブディレクトを変更してから、DB2ユーティリティを起動します。
db2inst1@mymachine> cd sqllib/bnd db2inst1@mymachine> db2
db2 => connect to mydatabase user db2admin using db2admin
次のメッセージが表示されます。
Database Connection Information Database server = DB2/NT 6.1.0 SQL authorization ID = DB2ADMIN Local database alias = MYDATABASE
db2 => bind @db2ubind.lst blocking all grant public
db2 => bind @db2cli.lst blocking all grant public
![]() ![]() ![]() ![]() ![]() |
インストールガイド 05/21/03 11:48:11 |
Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC, a wholly owned subsidiary of Novell, Inc. All rights reserved.