5.4.3 SQL Server データベースの作成

LiveCycle が実行時データと設定データを格納するために使用する SQL Server データベースを作成することができます。SQL Server データベースの作成について詳しくは、SQL Server のマニュアルを参照してください。LiveCycle では、SQL Server 2005 SP2 および 2008 R2(英語および日本語)がサポートされます。

SQL Server データベースを作成し、アプリケーションサーバー上でデータソースを設定する際に使用するユーザーアカウントを作成し、DB_OWNER の権限を割り当てます。データベースおよびユーザーの作成について詳しくは、SQL Server のマニュアルを参照してください。

アプリケーションサーバーでデータソースを設定する場合は、次の情報が必要です。

  • データベース名

  • SQL Server ユーザーアカウントのユーザー名とパスワード

  • データベースサーバーのホスト名または IP アドレス

  • SQL Server ポート番号

5.4.3.1 LiveCycle 用の SQL Server のセットアップ

LiveCycle データベースを作成する前に、次の設定を変更して SQL Server を最適化します。

5.4.3.1.1 メモリの拡張

SQL Server のデフォルトの設定では、積極的なメモリ割り当ては行われていません。この場合、SQL Server データベースのほとんどのデプロイメントでパフォーマンスが大きく低下します。

注意: この節の処理は実行することをお勧めしますが、省略することもできます。
  1. Microsoft SQL Server Management Studio を使用して、LiveCycle データベースをホストするデータベースサーバーに接続します。

  2. データベースサーバー接続を右クリックして、「Properties」をクリックします。

  3. Memory ページを選択し、「Minimum Server Memory (in MB)」ボックスにサーバー上の空きメモリのサイズと等しいサイズを入力します。

  4. SQL Server データベースを再起動します。

5.4.3.1.2 プロセッサーの優先度の設定

専用のデータベースサーバー(LiveCycle の実稼働環境へのインストールに推奨)上では、SQL Server プロセスはシステムの CPU リソースを過度に消費しないように設定されます。

注意: この節の処理は実行することをお勧めしますが、省略することもできます。
  1. Microsoft SQL Server Management Studio を使用して、LiveCycle データベースをホストするデータベースサーバーに接続します。

  2. データベースサーバー接続を右クリックして、「Properties」をクリックします。

  3. Processors ページを選択し、「Boost SQL Server Priority」を選択します。

  4. SQL Server データベースを再起動します。

5.4.3.1.3 復旧間隔の拡張

この設定では、クラッシュの後、回復までデプロイメントを待機する時間を指定します。SQL Server のデフォルトの設定は 1 分です。この設定値を大きくすると、データベースログからデータベースファイルに変更を書き込む頻度が低くなるので、パフォーマンスが向上します。この設定では、トランザクションの動作が損なわれることはありませんが、起動時に再生されるログファイルのサイズは影響を受けます。

注意: この節の処理は実行することをお勧めしますが、省略することもできます。
  1. Microsoft SQL Server Management Studio を使用して、LiveCycle データベースをホストするデータベースサーバーに接続します。

  2. データベース接続を右クリックして、「Properties」をクリックします。

  3. Database Settings ページを選択し、「Recovery Interval (Minutes)」ボックスに 5 を入力します。

  4. SQL Server データベースを再起動します。

5.4.3.2 統合セキュリティ

注意: これはオプション設定です。

SQL Server 統合セキュリティを使用する場合は、SQL Server データベースを混合モードまたは Windows 認証モードに設定する必要があります。ただし、Windows 認証モードを使用する場合は、Windows 上に統合セキュリティを設定して SQL Server との信頼できる接続を確立する必要があります(5.4.3.2.1 Windows ログインの LiveCycle データベースユーザーへのマップを参照)。

注意: Windows 認証モードを使用した場合、Configuration Manager でデータベース接続の検証に失敗します。したがって、部分的な自動インストールでは、認証タイプを SQL Server に設定する必要があります。Configuration Manager でデータベース接続の検証が完了したら、Windows 認証モードを有効にすることができます。

5.4.3.2.1 Windows ログインの LiveCycle データベースユーザーへのマップ

  1. Microsoft SQL Server Management Studio を使用して、LiveCycle データベースをホストするデータベースサーバーに接続します。

  2. 認証モードを「Windows 認証」に設定します。

  3. セキュリティログインで Windows ドメインユーザーに対して新しいアカウントを作成し、「Windows 認証」を選択します。

  4. ログイン - 新規作成画面で「ユーザーマッピング」をクリックして、新しいユーザーのデータベースおよびデフォルトスキーマを設定します。

  5. データベースロールとして「db_owner」を選択し、「OK」をクリックします。

ユーザーを作成したことを確認するには、ツリーで LiveCycle データベースを展開し、セキュリティユーザーを開きます。新しいユーザーがユーザーのリストに表示されます。

5.4.3.2.2 SQL Server データベースドライバーのインストール

注意: まだ実行していない場合は、Microsoft の Web サイトの Microsoft ダウンロードセンターから SQL Server JDBC Driver 3.0(全プラットフォーム用)をダウンロードしてください。LiveCycle のインストール先のサーバーに、SQL Server データベースドライバーをインストールしてください。
この Web サイトの指示に従って、ドライバーをダウンロードし、インストールします。システム上でドライバーをインストールしたディレクトリの場所を控えておいてください。
注意: Microsoft SQL Server 2005 SP2 および Microsoft SQL Server 2008 のどちらに対しても SQL Server JDBC Driver 3.0 を使用します。

5.4.3.2.3 Windows 上での統合セキュリティの設定

注意: JBoss サービスは、5.4.3.2.1 Windows ログインの LiveCycle データベースユーザーへのマップで設定した Windows ユーザーとして実行する必要があります。JBoss がサービスとして実行されていない場合は、そのユーザーとして Windows にログインし、コマンドプロンプトから JBoss を起動する必要があります。
  1. [appserverroot]¥server¥lc_sqlserver¥deploy にある adobe-ds.xml および mssql-ds.xml ファイルを変更します。次の例に示すように、integratedSecurity=true を接続 URL に追加します。jdbc:sqlserver://<hostname>:<port>;databaseName=<db-name>;integratedecurity=true

  2. 上述の例の太字の値を、データベースサーバーに適した値に置き換えます。

  3. JBoss を実行しているコンピューターの Windows システムパス(C:\Windows)に sqljdbc_auth.dll ファイルを追加します。sqljdbc_auth.dll ファイルは、Microsoft SQL JDBC 3.0 ドライバーのインストール先(32 ビットオペレーティングシステムの場合のデフォルトは [SQL_root]¥sqljdbc_3.0¥enu¥auth¥x86、64 ビットオペレーティングシステムの場合のデフォルトは [SQL_root]¥sqljdbc_3.0¥enu¥auth¥x64)と同じ場所にあります。
    注意: Microsoft SQL Server 2008 に対しては SQL Server JDBC Driver 3.0 を使用します。
  4. 設定した JBoss for Adobe LiveCycle ES3 サービスまたは JBoss サービスのプロパティを開き、「ログオン」タブをクリックします。

  5. 「アカウント」を選択し、5.4.3.2.1 Windows ログインの LiveCycle データベースユーザーへのマップでマップしたユーザーアカウントの値を入力します。コマンドラインから JBoss を実行する場合は、このユーザーとしてログインする必要があります。

5.4.3.3 SQL Server データベースのサイズ変更

SQL Server で提供されるデフォルトのデータベースサイズは、LiveCycle には小さすぎます。データベースが自動拡張に設定されている場合でも、データベースが大きくなると、または大きくなってディスクがフラグメント化し始めると、パフォーマンスの低下などの予期しない結果が生じることがあります。デプロイメント要件に合わせて、作成時に事前にデータベースサイズを割り当てることをお勧めします。

中規模のデプロイメント:LDAP ディレクトリ内におよそ 100,000 のユーザーと 10,000 のグループが存在する環境。「Database Data Initial Size」を 1 GB に設定し、自動拡張を 250 MB に設定します。

大規模のデプロイメント:LDAP ディレクトリ内におよそ 350,000 のユーザーと 10,000 を超えるグループが存在する環境。「Database Data Initial Size」を 2 GB に設定し、自動拡張を 1 GB に設定します。

注意: データベースの拡張が、常に特定のサイズに制限されます。管理者は、LiveCycle データベースのリソース利用状況を監視して、限定された領域、すなわちデータベースが存在するディスク上で使用可能な領域が失われないことを確認します。

5.4.3.4 LiveCycle データベースユーザー、スキーマおよびログインの作成

LiveCycle データベースユーザー、スキーマおよびログインを作成する準備が整いました。

重要: LiveCycle のデータベースインスタンスを作成するときには、必ず SQL_Latin1_General_CP1_CI_AS 照合(データベースを日本語環境で実行する場合は Japanese_CI_AS 照合)を使用してください。それ以外の照合を使用すると、データベースの初期化に失敗する場合があります。LiveCycle データベースインスタンスに使用する照合には、SQL Server データベースの作成時に使用した照合と異なるものを使用できます。
  1. Microsoft SQL Server Management Studio で「Server」をクリックし、「Database」を右クリックして「New Database」を選択します。

  2. 任意のデータベース名を入力します。

    注意: データベース名は非常に重要です。指定した名前は、以降の手順で一貫して使用する必要があります。以降の手順では database_name として参照します。
  3. (SQL Server 2005 のみ)Use Full-Text Indexing」が選択解除されていることを確認します。

  4. Database Data Initial Size MB」ボックスに適切な値を入力します。

  5. Database DataAutogrowth」ボックスに、50 %と入力します。

  6. Database LogInitial Size」ボックスに適切な値を入力します。

  7. Database LogAutogrowth」ボックスに、50 %と入力します。

  8. OK」をクリックすると、データベースが作成されます。

5.4.3.4.1 SQL Server での LiveCycle ユーザーの作成

以下の手順では、[database_name] はデータベースの作成時に指定した名前を表し、[database_username] は新規ユーザーに指定する名前を表します。

  1. Microsoft SQL Server Management Studio を使用して、LiveCycle データベースを作成したデータベースサーバーに接続します。

  2. ServerSecurity をクリックし、「Logins」を右クリックして、「New Login」を選択します。

  3. ログイン名 [database_username] を入力し、次に、「SQL Server Authentication」を選択して、新しいパスワードを入力します。

  4. Enforce Password Expiration, User must change password on next login」が選択解除されていることを確認します。

  5. デフォルトのデータベースは「Master」のままにし、「OK」をクリックします。

  6. ServerDatabases/[database_name]/Security をクリックし、「Schemas」を右クリックして、「New Schema」を選択します。

  7. Schema Name」ボックスに [database_username] を入力し、「OK」をクリックします。

  8. ServerDatabases/[database_name]/Security をクリックし、「Users」を右クリックして、「New User」を選択します。

  9. New User ダイアログボックスで、ログイン名とユーザー名 [database_username] を入力します。

  10. デフォルトのスキーマを [database_username] に設定します。

    注意: スキーマ名は [database_username] と同じである必要があります。
  11. 「Schemas Owned By This User」領域で、[database_username] スキーマを選択します。

  12. 「Database Role Membership」領域で、「db_owner」を選択します。

5.4.3.4.2 LiveCycle ユーザーとデータベースとの関連付け

LiveCycle ユーザーを作成した後に、このユーザーを LiveCycle データベースに関連付けます。

  1. SecurityLogins をクリックし、[database_username] を右クリックして、「Properties」をクリックします。

  2. Login Properties の General ページで、ユーザーのデフォルトのデータベースを [database_name] に設定します。

  3. User Mapping ページを選択し、「Users Mapped To This Login」セクションで、[database_name] が選択されていること、「User」が [database_username] に設定されていること、「Default Schema」が [database_username] に設定されていることを確認します。

  4. 「Users Mapped To This Login」テーブルで [database_name] が選択されていることを確認し、「Database Role Membership For [database_name]」テーブルで「db_owner」および「public」が選択されていることを確認して、「OK」をクリックします。

5.4.3.4.3 LiveCycle データベースの分離レベルの設定

LiveCycle では、長時間実行されているトランザクションと同時期に短時間の読み取りが何度も発生する場合のデッドロックを管理するために、固有の分離レベルが必要です。

重要: MS SQL Server で分離レベルを設定し、デッドロックの問題を回避する必要があります。
  1. Databases」をクリックし、[database_name] を右クリックして、「New Query」を選択します。

    注意: [database_name] は、データベースの作成時に指定した名前を表します。
  2. Query パネルで、次のテキストを入力します。

    ALTER DATABASE [database_name] SET READ_COMMITTED_SNAPSHOT ON GO

  3. Execute」をクリックします。応答がメッセージパネルに表示されます。