データベース管理ガイド

     前  次    目次     
ここから内容

Sybase の使い方

この章では、WebLogic Portal で Sybase データベースを使用するための必要手順について説明します。ここでは以下の内容を扱います。

作業を進める前に、この章全体とリリース ノートを参照してください。この章で説明するタスクはデータベース管理者が実行します。

 


Sybase データベースのコンフィグレーション

以下の手順を実行する前に、「WebLogic Portal のエンタープライズ品質データベース コンフィグレーションの概要」をお読みください。

データベース作成スクリプトによって、ドメイン固有のテーブルがインストールされます。サンプル スクリプトを変更し、各自の Sybase 環境に必要なデータベース ユーザとデバイスを作成する作業は、データベース管理者と共に行うことをお勧めします。

複数のドメインを使用する場合、または同じ Sybase のインスタンスを使用して複数の環境を実行する場合 (1 つの Sybase からテスト環境と業務レベルのシステムを実行する場合など) は、複数のデータベースが必要です。GroupSpace では、コンテンツ管理リポジトリを追加した場合と同様に、独立したデータベースが必要です。

注意 : WebLogic Portal で長いデータを含むテーブルやカラム、サイズの大きいインデックスを使用できるように、最低 8K のページ サイズを指定します。Sybase では、ページ サイズは 2K であり、複数のページにまたがる行を使用できません。Sybase インスタンスのページ サイズが 2K または 4K の場合は、8K の Sybase インスタンスを新たに作成します。Sybase には、ページ サイズが異なるサーバ間でデータを移行するための、移行ユーティリティが用意されています。
注意 : ページ サイズが 8K より小さい Sybase インスタンスを定義すると、WebLogic Portal テーブルは作成されますが、作成時に、行のサイズが行サイズ制限を超える可能性があることを示す警告メッセージが表示されることがあります。これらの警告が原因で、挿入または更新されるデータによって、実行時例外が発生する場合があります。インデックスが Sybase インスタンスの最大ページ サイズより大きい場合、インデックスの作成は失敗します。その結果、データやパフォーマンスに問題が発生する場合があります。

Sybase データベースをコンフィグレーションするには

  1. 新規データベース オブジェクトをインストールする場合は、その前にデータベースをバックアップしてください。詳細については、お使いのデータベース ベンダのドキュメントを参照してください。
  2. WL_HOME\portal\db\sybase\admin ディレクトリにあるサンプル スクリプトを確認します。詳細については、「表 8-1 データベース スクリプトと使用上の注意」およびスクリプト内のコメントを参照してください。
  3. サンプル スクリプトをコピーし、環境に合わせて変更することにより、以下の各データベースを作成します。
    1. メインの WebLogic Portal データベースとデータベース オブジェクトを作成するには、「メインの WebLogic Portal データベースのコンフィグレーション」の手順に従います。
    2. GroupSpace を使用する場合、GroupSpace データベースとデータベース オブジェクトを作成するには、「GroupSpace データベースのコンフィグレーション」の手順に従います。
    3. 別に行動追跡データベースを作成する場合は、「行動追跡の別個のデータベースおよびデータベース オブジェクトの手動による作成」の手順に従います。

 


メインの WebLogic Portal データベースのコンフィグレーション

メインの WebLogic Portal データベースをコンフィグレーションするには、次の手順に従います。

  1. create_devices.sql スクリプトをコピーし、環境に合わせて変更します。詳細については、「表 8-1 データベース スクリプトと使用上の注意」およびスクリプト内のコメントを参照してください。
  2. システム管理者権限を持つユーザ (通常 sa ユーザ) で、変更した create_devices.sql スクリプトを実行します。たとえば、isql を使用して次のように実行します。
  3. isql -Usa -SMYSYBASE -e -icreate_devices.sql -ocreate_devices.log
  4. create_database.sql スクリプトをコピーし、環境に合わせて変更します。詳細については、「表 8-1 データベース スクリプトと使用上の注意」およびスクリプト内のコメントを参照してください。
  5. システム管理者権限を持つユーザ (通常 sa ユーザ) で、変更した create_database.sql スクリプトを実行します。たとえば、isql を使用して次のように実行します。
  6. isql -Usa -SMYSYBASE -e -icreate_database.sql -ocreate_database.log

    create_database.sql の実行結果は、create_database.log に出力されます。次の手順に進む前に、ログ ファイルにエラーが出力されていないことを確認します。

残りの手順は、Configuration Wizard を使用せずに手動でデータベース オブジェクトを作成する場合にのみ実行します。Configuration Wizard を使用して残りの手順を実行する場合は、WebLogic Server のドキュメント『コンフィグレーション ウィザードを使用した WebLogic ドメインの作成』を参照してください。

  1. ドメインの database.properties ファイルを編集用に開きます。
  2. database=sybase と設定します。
  3. メインの WebLogic Portal データベースに合わせて、以下の設定を更新します (@ 記号および @ 記号の間の文字列を正しい値に置き換えます)。
  4. sybase.user=@DB_USER@
    sybase.password=@DB_PASSWORD@
    sybase.url=jdbc:bea:sybase://@DB_HOST@:@DB_PORT@;DatabaseName=@DB_NAME@
  5. データベース オブジェクトを作成します。Configuration Wizard を使用するか、次の手順に従います。
    1. BEA_HOME\user_projects\domains\myPortalDomain ディレクトリに移動します。
    2. 次のコマンドのいずれかを入力します。
      • Windows の場合は、create_db.cmd をダブルクリックします。
      • UNIX の場合は、create_db.sh を実行します。
      • エラー メッセージが表示された場合は、create_db.log ファイルで詳細を確認してください。

        注意 : create_db スクリプトを実行後、データベース管理者のパスワードを更新する必要があります。詳細については、「データベース オブジェクトの作成または更新の注意について」を参照してください。
  6. ドメインの JDBC データ ソース (appsGroupSpaceDataSource を除く) は、デフォルトでは PointBase を指しています。これを、SQL Server を指すデータ ソースに置き換えます。これらは、WebLogic Server Administration Console を使用してコンフィグレーションするか、または、提供されているサンプルから選択し、データベース環境に合わせて変更します。BEA がサポートする各データベースとドライバのサンプルの jdbc.xml 定義ファイルは、WL_HOME\portal\db\jdbc\database_driver ディレクトリにあります。たとえば、sybase_bea です。WL_HOME\portal\db\jdbc\README.txt ファイルで説明している手順に従います。

 


GroupSpace データベースのコンフィグレーション

GroupSpace データベースをコンフィグレーションするには、次の手順に従います。

  1. create_devices.sql スクリプトをコピーし、環境に合わせて変更します。詳細については、「表 8-1 データベース スクリプトと使用上の注意」およびスクリプト内のコメントを参照してください。
  2. システム管理者権限を持つユーザ (通常 sa ユーザ) で、変更した create_devices.sql スクリプトを実行します。たとえば、isql を使用して次のように実行します。
  3. isql -Usa -SMYSYBASE -e -icreate_devices.sql -ocreate_devices.log
  4. create_database.sql スクリプトをコピーし、環境に合わせて変更します。詳細については、「表 8-1 データベース スクリプトと使用上の注意」およびスクリプト内のコメントを参照してください。
  5. システム管理者権限を持つユーザ (通常 sa ユーザ) で、変更した create_database.sql スクリプトを実行します。たとえば、isql を使用して次のように実行します。
  6. isql -Usa -SMYSYBASE -e -icreate_database.sql -ocreate_database.log

    create_database.sql の実行結果は、create_database.log に出力されます。次の手順に進む前に、ログ ファイルにエラーが出力されていないことを確認します。

残りの手順は、Configuration Wizard を使用せずに手動でデータベース オブジェクトを作成する場合にのみ実行します。Configuration Wizard を使用して残りの手順を実行する場合は、WebLogic Server のドキュメント『コンフィグレーション ウィザードを使用した WebLogic ドメインの作成』を参照してください。

  1. ドメインの groupspace_database.properties ファイルを編集用に開きます。
  2. database=sybase と設定します。
  3. GroupSpace データベースに合わせて、以下の設定を更新します (@ 記号および @ 記号の間の文字列を正しい値に置き換えます)。
  4. sybase.user=@DB_USER@
    sybase.password=@DB_PASSWORD@
    sybase.url=jdbc:bea:sybase://@DB_HOST@:@DB_PORT@;DatabaseName=@DB_NAME@
  5. データベース オブジェクトを作成します。
    1. BEA_HOME\user_projects\domains\myPortalDomain ディレクトリに移動します。
    2. 次のコマンドのいずれかを入力します。
    • Windows の場合 :
    • create_db.cmd -database.properties=groupspace_database.properties
    • UNIX の場合 :
    • create_db.sh -database.properties=groupspace_database.properties

      エラー メッセージが表示された場合は、create_db_groupspace.log ファイルで詳細を確認してください。

      注意 : create_db スクリプトを実行後、データベース管理者のパスワードを更新する必要があります。詳細については、「データベース オブジェクトの作成または更新の注意について」を参照してください。
  6. appsGroupSpaceDataSource JDBC データ ソース (デフォルトでは PointBase を参照) を Sybase を参照するデータ ソースで置き換えます。WebLogic Server Administration Console を使用します。または、BEA がサポートする各データベースとドライバ用に WL_HOME\portal\db\jdbc\database_driver ディレクトリに用意されているサンプルの jdbc.xml 定義ファイル、たとえば、sybase_bea を更新します。WL_HOME\portal\db\jdbc\README.txt ファイルで説明している手順に従います。

 


行動追跡の別個のデータベースおよびデータベース オブジェクトの手動による作成

他の WebLogic Portal データベース オブジェクトとは別の場所に行動追跡イベントを保存すると、パフォーマンスを向上させることができます。行動追跡の詳細については、『対話管理ガイド』の「イベントと行動追跡の設定」を参照してください。

注意 : デフォルトでは、行動追跡データベース オブジェクトは他の WebLogic Portal データベース オブジェクトと同じデータベースに作成されます。これらの手順を実行する必要があるのは、行動追跡イベント用に別個のデータベースをコンフィグレーションする場合だけです。

行動追跡用の別個のデータベースを作成するには

  1. スクリプトと「表 8-1 データベース スクリプトと使用上の注意」にある指示に従って、ご使用の環境に合わせて bt_create_devices.sql ファイルと bt_create_database.sql ファイルを変更します。
  2. システム管理者権限を持つユーザとして、bt_create_devices.sql を実行します。たとえば、isql を使用して次のように実行します。
  3. isql -Usa -SMYSYBASE -e -ibt_create_devices.sql -obt_create_devices.log

  4. システム管理者権限を持つユーザとして、bt_create_database.sql を実行します。たとえば、isql を使用して次のように実行します。
  5. isql -Usa -SMYSYBASE -e -ibt_create_database.sql -obt_create_database.log

  6. 環境に応じた適切なデータベース ディレクトリ WL_HOME\portal\db\sybase に移動します。
  7. ユーザ WEBLOGIC_EVENT で接続し、次のスクリプトを実行します。
    • bt_create_tables.sql
    • bt_create_fkeys.sql
    • bt_create_indexes.sql
    • bt_create_triggers.sql
  8. パス WL_HOME\portal\db\data\required から次のスクリプトを実行します。
    • bt_insert_system_data.sql
    • bt9_insert_system_data.sql
  9. WebLogic Server Administration Console を使用して、非 XA JDBC データ ソースが行動追跡データベースにアクセスするようにコンフィグレーションします。JNDI 名 p13n.trackingDataSource をそのデータ ソースに関連付けてから、p13n.trackingDataSourcep13nDataSource から削除します。

 


データベース スクリプトと使用上の注意

表 8-1 で説明するスクリプトを使用して、Sybase データベースをコンフィグレーションできます。

表 8-1 データベース スクリプトと使用上の注意
スクリプト名
説明
create_devices.sql
データベース デバイスを作成する。データベース デバイスは、システム管理者権限を持つユーザ (通常 sa ユーザ) が作成する必要がある。
  1. このスクリプトをコピーして編集し、<<WEBLOGIC>> を、作成する各データベースに適切なデータベース名とデバイス名で置き換える。
  2. D:\DATAFILEE:\LOGFILE および F:\INDEXFILE デバイスが存在する有効なディスクの場所を反映するには、スクリプトを編集する。
  3. 使用している WebLogic Portal 機能によって、必要に応じてファイル サイズを調整する。以下のプロダクション システムの値は一般的なガイドだが、必要に応じてこれらの値を調整できる (例えば、個別の開発者のデータベースには、小さいファイルを指定できる)。
  4. ログ セグメント: 2048mb

    データ セグメント: 2048mb

    インデックス セグメント: 500mb

RAID デバイスを使用している場合を除き、データ、ログ、およびインデックスの各デバイスは、異なる物理ディスク (別のコントローラで制御される) に配置し、すべてのシステム データベース ファイルから切り離しておくことが望ましい。

注意 : WEBLOGIC_INDEX インデックス セグメントの名前は変更しない。

メインの WebLogic Portal データベースの一般的なデバイス名は次のとおり。
  • データ デバイス : WEBLOGIC_DATA
  • ログ デバイス : WEBLOGIC_LOG
GroupSpace データベースの一般的なデバイス名は次のとおり。
  • データ デバイス : WEBLOGIC_GROUPSPACE_DATA
  • ログ デバイス : WEBLOGIC_GROUPSPACE_LOG
create_database.sql
データベースおよびログインを作成する。メインの WebLogic Portal データベースを作成する必要がある。GroupSpace を使用する場合は、そのデータベースを作成する必要がある。追加のコンテンツ管理リポジトリを使用する場合は、それらにもデータベースが必要。create_devices.sql で作成されたデバイスが使用される。インデックスはそれぞれの WEBLOGIC_INDEX セグメントに設定される。データベースのデータベース オーナー (dbo) ユーザにエリアスが追加される。
このスクリプトをコピーして編集し、<<WEBLOGIC>> を、作成する各データベースに適切なデータベース名、データベース ユーザ、パスワードで置き換える。必要に応じて、データベースとログ サイズを調整する。
開発データベースを作成している場合は (つまり、データベースの回復が不必要)、コメントを解除し、truncate log on checkpoint オプションを true に設定できる。
アプリケーションで WebLogic Workshop を使用してデータベースを作成する場合や RowSet コントロールを使用する場合、コメントを解除して DDL in transaction オプションを true に設定する。このようにしないと、create コマンドが正しく機能しない。
メインの WebLogic Portal データベースの一般的な名前は次のとおり。
  • データベース名 : WEBLOGIC
  • データベース スキーマ ユーザ : WEBLOGIC
  • パスワード : WEBLOGIC

注意 : WEBLOGIC_INDEX インデックス セグメントの名前は変更しない。

これらの値でスクリプトを実行すると、WEBLOGIC データベース、WEBLOGIC_INDEX ファイル グループ、および WEBLOGIC データベース オーナー (dbo) ユーザ ログインが作成される。WEBLOGIC をデータベース内の dbo ユーザに設定するためのエリアスが作成される。また、WEBLOGIC データベースが WEBLOGIC ユーザのデフォルトのデータベースとして設定される。
GroupSpace を使用するには、追加のデータベースを作成する必要がある。
GroupSpace データベースの一般的な名前は次のとおり。
  • データベース名 : WEBLOGIC
  • データベース スキーマ ユーザ : WEBLOGIC
  • パスワード : WEBLOGIC

注意 : 追加のコンテンツ管理リポジトリを作成する場合は、そのリポジトリ用に別のユーザ名を作成する必要がある。『コンテンツ管理ガイド』を参照。

statistics_build.sql
statistics.sql を作成して、データベース オプティマイザのテーブルおよびインデックス統計を更新する。統計を定期的に更新する。また、データベースのデータに重要な変更が発生したときは必ず更新する。
install_report_build.sql
install_report_static.sql
WEBLOGIC ユーザによって作成されたデータベース オブジェクトに関する情報インストール レポートを生成する。
bt_create_devices.sql
行動追跡データベース デバイスを作成する。データベース デバイスは、システム管理者権限を持つユーザ (通常 sa ユーザ) が作成する必要がある。
また、D:\DATAFILEE:\LOGFILE、および F:\INDEXFILE の各デバイスの場所が正しいディスクの場所を示すように、スクリプトを編集する必要がある。必要に応じてファイルのサイズも変更する。RAID デバイスを使用している場合を除き、データ、ログ、およびインデックスの各デバイスは、異なる物理ディスク (別のコントローラで制御される) に配置し、すべてのシステム データベース ファイルから切り離しておくことが望ましい。
使用されているデフォルト名は、次のとおり。
  • データ デバイス : WEBLOGIC_EVENT_DATA
  • ログ デバイス : WEBLOGIC_EVENT_LOG
bt_create_database.sql
WEBLOGIC_EVENT データベース、および WEBLOGIC_EVENT データベース オーナー ユーザ ログインを作成する。WEBLOGIC_EVENT をデータベース内のデータベース オーナー (dbo) ユーザに設定するためのエリアスが作成される。
スクリプトを変更し、デバイス名 bt_create_devices.sql を反映させる。自分のサイト固有のニーズに合わせて、データベースとログ サイズを調整する。DATA および LOG ファイルはそれぞれ別の物理ディスクに配置し、システム データベース ファイルと異なる場所に配置する。
使用されているデフォルト値は、次のとおり。
  • データベース名 : WEBLOGIC_EVENT
  • データベース オーナー ユーザ : WEBLOGIC_EVENT
  • パスワード : WEBLOGIC_EVENT


ページ先頭       前  次