SQL Server データベースセットアップ
このページでは、Microsoft SQL Server データベースを利用する場合の Confluence の設定に関して説明します。
始める前に
始める前に、以下の内容を確認します:
- ご使用の SQL Server のバージョンがサポート対象であるかどうかについては、「サポート対象プラットフォーム」を参照してください。Confluence をインストールする前にデータベースのアップグレードが必要になる場合があります。
- 別のデータベース (組み込みの評価データベースを含む) から切り替える場合、「別のデータベースへの移行」をお読みください。
1. SQL Server をインストールする
Microsoft SQL Server がインストールされていない場合、ダウンロードしてインストールします。手順については、MSDN の「SQL Server のインストール」を参照してください。
2. データベースとデータベース ユーザーを作成する
SQL Server をインストールしたら、次のように、Confluence 用のデータベース ユーザーとデータベースを作成します。
- SQL の管理者権限を使用し、新しいデータベース (例:
confluence
) を作成します。 データベースの既定の照合順序を SQL_Latin1_General_CP1_CS_AS (大文字と小文字を区別) に設定します。
ALTER DATABASE <database-name> COLLATE SQL_Latin1_General_CP1_CS_AS
"database could not be exclusively locked to perform the operation" エラーが表示された場合は、データベースをシングル ユーザー モードに変更して他のユーザーからの接続を拒否する必要がある場合があります。
ALTER DATABASE <database-name> SET SINGLE_USER WITH ROLLBACK IMMEDIATE; <your ALTER DATABASE query> ALTER DATABASE <database-name> SET MULTI_USER;
READ_COMMITTED_SNAPSHOT のデータベース分離レベルが ON になっていることを確認します。
SELECT is_read_committed_snapshot_on FROM sys.databases WHERE name= 'database-name'
このクエリが 1 を返した場合、 READ_COMMITTED_SNAPSHOT は ON になっており、先へ進むことができます。
このクエリが 0 を返した場合、READ_COMMITTED_SNAPSHOT オプションは OFF になっており、次のようにオンにする必要があります。ALTER DATABASE <database-name> SET READ_COMMITTED_SNAPSHOT ON WITH ROLLBACK IMMEDIATE;
SQL の管理者権限を使用し、Confluence 用の新しい SQL ユーザー アカウント (例:
confluenceuser
) を作成します。このユーザーには、データベース テーブルの作成、読み取り、書き込みに関する完全なパーミッションを付与します。Confluence が独自のスキーマを作成できる必要があります。この方法については、SQL Serrver ドキュメントを参照してください。
3. Confluence のインストール
お使いのオペレーティング システムに Confluence をインストールするための詳細な手順については、Confluence インストール ガイドを確認してください。
4. データベースの詳細を入力する
Confluence セットアップ ウィザードを利用して、お使いのデータベースに Confluence を接続できます。
JDBC 接続を使用する (既定)
データベースへの接続には JDBC の使用を推奨します。
Confluence セットアップ ウィザードは 2 つのセットアップ オプションを提供します。
- シンプル - 最も簡単にデータベースに接続する方法です。
- 接続文字列を使用 - 追加パラメーターを指定する必要があり、データベース URL の作成に慣れている場合は、このオプションを使用します。
セットアップ タイプに応じて、次の情報を求めるプロンプトが表示されます。
セットアップ タイプ | フィールド | 説明 |
---|---|---|
simple | ホスト名 | データベース サーバーのホスト名または IP アドレス。 |
simple | ポート | SQL Server のポートです。SQL Server をインストールした際にポートを変更していなければ、既定の 1433 になります。 |
simple | データベース名 | Confluence データベースの名前 (上記の例では confluence )。 |
simple | インスタンス名 | インスタンス名を見つけるには、データベースへ接続して次のいずれかを実行します。
SQL Server 内にデフォルト名のインスタンス セットアップがある場合、このパラメーターを指定する必要はありません。 |
接続文字列を使用 | データベース URL | データベース URL は次の形式で入力されます。jdbc:sqlserver://<hostname>:<port>;databaseName=<database> 例: |
両方 | ユーザ名 | 専用データベース ユーザーのユーザー名 (上記の例では confluenceuser )。 |
両方 | パスワード | 専用データベース ユーザーのパスワードです。 |
JNDI データソースを使用する
JNDI データソースを使用したい場合、Confluence をセットアップする前に必要な手順を「データソース接続の設定」で確認してください。セットアップ ウィザードは Tomcat 構成内のデータソースを検出した場合にのみ、データソースを使用するオプションのみを提供します。
5. データベース接続のテスト
データベースのセットアップ画面で [テスト接続] ボタンをクリックすると、次の点をチェックできます。
- Confluence データベースがご利用のデータベース サーバーに接続できること
- データベースの照合順序と分離レベルが正しいこと
- データベース ユーザーがデータベースに対する適切な権限を持っていること
テストが成功したら、[次へ] をクリックして Confluence のセットアップ プロセスを続行します。
データベース ドライバの変更
Confluence 6.6 で、Microsoft SQL Server 用のオープンソースの jTDS ドライバーを、公式の Microsoft JDBC Driver for SQL Server に変更しました。6.6 以降にアップグレードすると、新しいドライバに自動的に移行されます。
何らかの理由で自動移行に失敗する場合 (データソース接続を使用している場合など)、この変更を手動で行う必要があります。「Confluence 6.4 以降で jTDS ドライバからサポートされている Microsoft SQL Server ドライバへ移行する」をご覧ください。
トラブルシューティング
次のエラー メッセージが表示された場合は、
localhost
から接続する際に必要となる全てのデータベース権限をconfluenceuser
ユーザーに付与したかどうかを確認します。Could not successfully test your database: : Server connection failure during transaction. Due to underlying exception: 'java.sql.SQLException: Access denied for user 'confluenceuser'@'localhost' (using password: YES)'
- 追加のポート開放が必要になる場合があります。SQL Server 用に必要なポートについては、Microsoft ナレッジベースを参照してください。
- Confluence 用に SQL Server データベースをセットアップする際の一般的な問題に関しては、「SQL Server の既知の問題」をご覧ください。