First Previous Next Last インストールガイド  05/21/03 11:48:11 

第12章    Sybase Adaptive Server Enterpriseデータベースの設定

この章では、Novell exteNd アプリケーションサーバでのSybase Adaptive Server Enterpriseデータベースの使用方法について説明します。 この章には、SilverMasterデータベースあるいは配備データベースとしてAdaptive Server Enterpriseを使用する場合の情報も含まれています。 この章の節は次のとおりです。

注記:   Sybase Adaptive Server Enterpriseは、以前Sybase SQL Serverとして知られていました。

For more information    サポートされているデータベースバージョンの最新情報については、Novell exteNd アプリケーションサーバ リリースノートを参照してください。

 
Top of page

Sybase Adaptive Server Enterpriseデータベースのセットアップ

この章では、Sybase Adaptive Server Enterpriseを使用してSilverMasterデータベース(および配備データベース)を作成する方法について説明します。

まず初めに、Novell exteNd アプリケーションサーバが常駐するシステムに「Sybaseクライアント」をインストールします。 次の手順を実行します。

  1. Sybase jConnecクラスとストアドプロシージャをインストールします。

  2. Sybaseサーバを設定します。

  3. データベースデバイスとSybaseデータベースとして実際のSilverMasterデータベースを作成します。

  4. アプリケーションサーバで使用するデータベースログインを作成します。

  5. アプリケーションサーバでデータベースを使用します。

 
Top of section

手順1: Sybase jConnectをインストールする

アプリケーションサーバをインストールするシステムにjConnectドライバをインストールし、設定する必要があります。 アプリケーションサーバをインストールする前に、このドライバを設定する必要があります。

注記:   jConnect 5.xを使用することをお勧めします

Procedure Sybase jConnectをインストールする

  1. jConnectドライバ をインストールします。

    For more information    Sybase jConnectの詳細については、 www.sybase.comを参照してください。

  2. アプリケーションサーバマシンの AGCLASSPATH変数に、jConnectドライバの場所が指定されていることを確認してください。 Windowsの場合、AGCLASSPATHはシステム環境変数です。 UNIXの場合は、agprofileファイルの中にあります。 NetWareの場合は、setenvコマンドを使用してAGCLASSPATHを設定する必要があります(setenv AGCLASSPATH=path1;path2;path3;...)。

    jConnect 4を使用している場合:

      AGCLASSPATH=installDir\jConnect-version\classes 
    

    jConnect 5を使用している場合:

      AGCLASSPATH=installDir\jConnect-version\classes\jconn2.jar 
    

    For more information    AGCLASSPATH経由のJDBCドライバファイルのリストの詳細については、『管理者ガイド』の データソース設定に関する章を参照してください。

    注記:   アプリケーションサーバで排他的にドライバを使用している場合は、Sybaseインストールの注意点で述べたCLASSPATHまたはJDBC_HOME変数を設定する必要はありません。

  3. jConnect stored proceduresをSybaseサーバにインストールします。

    For more information    詳細については、Sybaseの『jConnect for JDBC Installation Guide 』または www.sybase.comを参照してください。

 
Top of section

手順2: Sybaseサーバを設定する

アプリケーションサーバをサポートするために、Sybaseサーバを設定する必要があります。 この設定変更には、Sybase TEMPDBデータベースを適切なサイズに変更し、jConnectストアドプロシージャをサポートするためSybaseプロシージャのキャッシュの容量を適切な大きさに設定することが含まれます。

Procedure Sybaseサーバの設定:

  1. Sybase Centralから、宛先のSybaseサーバに接続し、[Databases]を選択します。

    SAまたはそれと同等の権限を持つユーザとしてSybaseサーバに接続する必要があります。

  2. [TEMPDB]データベースを右クリックして、[Properties]を選択します。

  3. [Usage]タブで、[Total Allocated value]をチェックします。

    [TEMPDB Total Allocated]の値が30 MBより小さい場合:

  4. Sybaseサーバを右クリックして、[Configure]を選択します。

  5. Total Memory]の値が表示されるまで下にスクロールします。.

    総メモリの値2Kページ単位です。したがって、表示された数字の2倍のキロバイトのメモリが現在Sybaseに割り当てられていることになります。 この値をメモしておき、次に[Procedure Cache Percent]の値を検索します。 この値は、13MBのメモリのパーセンテージとなります。

    この値を計算するには、13,000を総メモリ容量(キロバイト)で除算します。 これによって、[Procedure Cache Percent]の値として入力するパーセンテージが分かります。

    たとえば、Sybase Adaptive Server Enterprise 11.5に割り当てられているデフォルトのメモリ容量は9000ページです(18,000キロバイトに相当)。 13,000を18,000で除算すると、[Procedure Cache Percent]の値は72または72%となります。 [Procedure Cache Percent]の新しい値として72を入力します。

  6. Sybaseサーバを再起動し、変更を有効にします。

 
Top of section

手順3: SybaseにSilverMasterデータベースを作成する

アプリケーションサーバをインストールする前に、実際のSybaseデータベースとその土台となるデータベースデバイスを作成する必要があります。 これらのオブジェクトは、ISQLまたはSybase Centralなどのグラフィカルツールを使用して作成できます。 この節では、Sybase Centralを使用してオブジェクトを作成する方法について説明します。

Procedure SilverMasterデータベースを作成する

  1. SAまたはSAと同等の権限を持つアカウントを使用してSybaseに接続します。

  2. Sybase Centralから、宛先のSybaseサーバに接続し、[Databases Devices]を選択します。

  3. 次にSilverMasterDataと呼ばれる30 MBの新規のデータベースデバイスを作成します。

  4. このプロセスが終了したら、SilverMasterLogと呼ばれる30 MBのデバイスをもう一つ作成します。

  5. Sybase Centralの[Database]フォルダから、silvermaster(これは大文字と小文字を区別します)と呼ばれる新規のデータベースを作成します。

  6. 作成した2つのデバイス(データ用とログ用にそれぞれすべて30MB)を使ってデータベースを作成します。

  7. データベースが作成されたら、データベースを右クリックして、[Properties]を選択します。

  8. [オプション]タブから、[Truncate Log on Checkpoint]を選択します。

 
Top of section

手順4: アプリケーションサーバ用Sybaseログインを作成する

jConnectドライバがインストールされてSilverMasterデータベースが作成されたら、アプリケーションサーバで使用するSybaseログインを作成する必要があります。

Procedure Sybaseログインを作成する

  1. Sybase Centralから、SAまたはSAと同等の権限を持つアカウントを使用してSybaseに接続します。

  2. ログインフォルダで、新規のログイン(たとえば、これをsmuserとする)を追加します。 このアカウントに6文字以上のパスワードを割り当てる必要があります。

  3. silvermasterに対してこのログイン用のデフォルトデータベースを設定してログイン作成プロセスを終了します。

  4. [Databases]フォルダから[silvermaster]データベースを右クリックして、[Properties]を選択します。

  5. [Change]ボタンをクリックして、データベースの所有者をSAからsmuserログインに変更します。

使用する各配備データベースごとにログインを定義する必要があります。 配備データベースにアプリケーションサーバのシステムテーブルを保存したい場合は、CREATE TABLE権限を指定する必要があります(これはサーバに追加する配備データベースのデフォルトの動作です)。

 
Top of section

手順5: アプリケーションサーバでデータベースを使用する

これでアプリケーションサーバーからSybase Adaptive Server Enterpriseデータベースにアクセスする準備が整いました。 これで、次の作業ができるようになります。

For more information    詳細については、『管理者ガイド』の データソース設定に関する章を参照してください。

 
Top of page

トラブルシューティング

 
Top of section

Adaptive Server Enterpriseトラブルシューティング

この節では、Novell exteNd アプリケーションサーバとともに使用するSybase Adaptive Server Enterpriseデータベースの一般的な問題とその解決方法について説明します。

JZ0C0エラー

jConnectからエラーコードがJZ0C0のエラーメッセージConnection already closedを受け取る場合があります。 このエラーを受け取った場合は、実行中のSybaseサーバのバージョンが11.0.3.2であることを確認してください。 Sybaseのバージョンが11.0.3.2でない場合は、Sybaseテクニカルサポートから最新バージョンを入手してください。

Sybaseサーババージョンをアップデートできない場合は、問題を回避するためSybaseデータベースとアプリケーションサーバのシステムテーブルを切り離してください。

ログイン、ユーザ、および権限

ログイン、ユーザ、および権限についての潜在的な問題を回避するもっとも簡単な方法はSAを使用することです。 データベースを追加しているときに問題が発生した場合、Novell exteNd テクニカルサポートでは、問題がログイン、ユーザ、および権限のいずれに原因があるのかを判別するため、SAとしてデータベースの追加を試みるよう指示を出させていただく場合があります。

ただし、多くの環境でSAのパスワードを取得することは実際的でないことが多々あります。 アプリケーションサーバに対して適切な権限を持つログインとユーザの作成方法は、次のSQLの例のとおりです。

プライマリキーと外部キー

古いデータベース(Sybase System 10以前のバージョン)のプライマリキーおよび外部キーは、sp_primarykeyおよび sp_foreignkeyという名前のシステムストアドプロシージャを使って定義することができます。 Sybaseでは、現在この方法でプライマリキーおよび外部キーを作成することはお薦めしていません。 事実、jConnectを含む新しいSybase製品ではそのような方法で作成されたキーを認識しません。 データベースを作成する際に使用するDDLを検査し、データベースでこれらのストアドプロシージャを使用するかどうかを決定します。

プライマリキー

これは古いスタイルのプライマリキーを指定したDDLです。

  CREATE TABLE dbo.U_LBX_ADVICE 
  ( 
  advice_key smallint NOT NULL, 
  <PAYMENT_KEY file_key smallint NOT NULL, 
  batch_key smallint NOT NULL, 
  line_no varchar(20) NULL, 
  item_paid_id varchar(20) NULL, 
  item_paid_amount money NULL 
  ) 
  go 
  EXEC sp_primarykey \qdbo.U_LBX_ADVICE\q, 
  advice_key,payment_key,file_key,batch_key 

プライマリキーを作成する新しいSybase Adaptive Server Enterprise形式は、CREATE TABLE構文の一部です。

  create table U_LBX_ADVICE 
  ( 
  advice_key smallint not null, 
  payment_key smallint not null, 
  file_key smallint not null, 
  batch_key smallint not null, 
  line_no varchar(20) null, 
  item_paid_id varchar(20) null, 
  item_paid_amount money null, 
  constraint PK_U_LBX_ADVICE primary key 
  (advice_key, payment_key, file_key, batch_key) 
  ) 

テーブルがすでに存在しており、CREATE TABLEステートメントでテーブルを再作成できない場合は、次のようにALTER TABLEを使用します。

  ALTER TABLE dbo.U_LBX_ADVICE ADD CONSTRAINT newprimarykey PRIMARY KEY NONCLUSTERED (advice_key,payment_key,file_key,batch_key) 

外部キー

外部キーでは、テーブル同士の関係を定義します。 外部キーの問題は、すでに説明したプライマリキーの問題と非常に類似しています。 SybaseのjConnectは、古いSystem 10フォーマットでsp_foreignkeyを使って作成した外部キーを認識しません。 これは外部キーを作成する古いスタイルのDDLです。

  exec sp_foreignkey dbo.U_LBX_ADVICE, dbo.U_LBX_BATCH, 
  file_key, 
  batch_key 

同じように定義された外部キー追加する構文:

  ALTER TABLE dbo.U_LBX_ADVICE ADD CONSTRAINT myforeignkey FOREIGN KEY (file_key,batch_key) 
  REFERENCES sqlfinar1.dbo.U_LBX_BATCH (file_key,batch_key) 
  go 

Sybase PowerDesignerツールを使用すると、データベースを作成するDDLを新しいフォーマットにアップデートすることができます。 このツールを使用するには、データベースのバックアップを作成してから次の手順に従います:

  1. PowerDesignerのメニューから、[File/Reverse Engineering]を選択します。

  2. データベースのDDLを含むファイルまたはデータベースに直接接続するためのODBCドライバの名前のいずれかを入力します。

  3. [Database/Generate Database]を選択して、正しい構文でプライマリキーと外部キーを定義する新しいDDLを作成します。

  4. 他のツールと同様、新しい構文にミスがないかどうか再度チェックしてテストします。

 
Top of section

jConnectトラブルシューティング

jConnectストアドプロシージャが正しくインストールされておらず、問題が検出されていない場合は、データベースを追加する際に問題が発生する可能性があります。

一つの方法

jConnectが正しくインストールされていることを確認するために行います。

別の方法

jConnectが正しくインストールされているかどうかを判別する別の方法は、「サンプルのjConnectアプリケーション」を実行することです(サンプルがインストールされていることを確認してください)。 classes\sampleディレクトリが存在することを確認してください) DOSプロンプトで次のように入力します。

これらのコマンドによって、さまざまなjConnectサンプルを起動させることのできるアプリケーションが開始されます([File/Open Sample]をクリックします)。

    First Previous Next Last インストールガイド  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.