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
) を作成します。このユーザーに既定のスキーマを指定するには、次の手順に従います。
ALTER USER <confluenceuser> WITH DEFAULT_SCHEMA = dbo
このユーザーが、データベース テーブルの作成、読み取り、書き込みに関する完全な権限を持っていることをご確認ください。Confluence が独自のスキーマを作成できて、トリガーと関数の作成/ドロップを行える必要があります。詳細については、SQL Server のドキュメントをご参照ください。
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 )。 |
両方 | パスワード | 専用データベース ユーザーのパスワードです。 |
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 の既知の問題」をご覧ください。