別のデータベースへの移行
このドキュメントでは、Confluence のデータを既存のデータベースから別のデータベースに移行する方法について説明します。以下の手順は、主に評価データベースから本番データベースに移行することを目的としています。
大規模なデータセットの移行には、サードパーティのデータベース移行ツールが必要になります。
本ページでは、次のシナリオを取り上げます。
- 組み込みのテスト用データベースからサポートされた外部データベースへの移行。
- 1 つの外部データベースから別の外部データベースへの移行、たとえば、Oracle から PostgreSQL (データセットが大きくない場合)
- 同じ外部データベースの新しいバージョンへのアップグレード。注意:同じ場所でデータベースをアップグレードする場合、データを移行する必要はありません。
1 つのサーバーから別のサーバーにデータベースを移行する場合、<confluence-home>/confluence.cfg.xml
(JDBC への直接接続を使用している場合)、またはデータソースの定義 (データソース経由で接続している場合) で JDBC URL を変更できます。
MySQL データベースをあるサーバーから別のサーバーに移行する場合は、このページの下部にある注記をご参照ください。
データベース移行の制限事項
データベースの移行
移行を実行する方法には 2 種類あり、どちらも本ページで説明しています。
方法 1 は標準的な手順です。
インストールの添付ファイルの合計サイズが 500 メガバイトを超える場合、方法 2 を使用します。
Amazon Aurora データベースへの移行
Amazon Aurora データベースに移行する場合、「Amazon Aurora を使用するために Confluence Data Center を構成する」を参照してください。このガイドでは、Amazon Aurora クラスタに移行して Confluence Data Center に接続する方法が説明されています。
方法 1 - 標準的な手順
ステップ 1: Marketplace アプリを記録する
ステップ 2: データをバックアップする
- 既存データの XML バックアップを作成します。「サイトを手動でバックアップする」をご確認ください。XML ファイルの置き場所をメモします。このメモは、後で新しいデータベースに Confluence データをインポートするために必要になります。
- Confluence を停止します。
- Confluence ホーム ディレクトリ のコピーを作成します。これは、データが誤って上書きされた場合に、データを回復できるようにするための予防措置です。
- 外部データベースを使用している場合、そのデータベースとともにインストールされたユーティリティを使用して、バックアップを別に作成します。これも予防措置です。
ステップ 3:新しいデータベースを設定する
新しいデータベースのセットアップ手順を選択し、以下の手順にしたがいます。
- データベース サーバーをインストールします。
- 手順にしたがって、データベース サーバーに必要な設定を行います。
- Confluence データベースとユーザーを追加します。このステップで定義したユーザー名とパスワードをメモしておきます。あとで Confluence セットアップ ウィザードを実行するときに、このメモ内容が必要になります。
ステップ 4.新しい場所に Confluence(同じバージョン番号)をインストールする
ここで、別のホームディレクトリ パスとインストール パスを使用して、もう一度 Confluence をインストールします。
注意: 既存のインストールと同じバージョンの Confluence を使用する必要があります。(Confluence をアップグレードする場合は、別のステップとして実行する必要があります。)たとえば、Confluence 5.1.2 を実行している場合、新しいインストールも Confluence 5.1.2 である必要があります。
Confluence インストーラーを実行する場合は、
- カスタム インストールを選択します 。(既存のインストールのアップグレードは選択 しません。)
- 新しいインストール先ディレクトリ を選択します。これが新しい Confluence インストール ディレクトリです。これは既存の Confluence インストールと同じであってはなりません。
- 新しいホーム ディレクトリ を選択します。これが新しい Confluence のデータ ディレクトリです。これは既存の Confluence インストールと同じであってはなりません。
ステップ 5.必要に応じて、データベース ドライバをダウンロードし、インストールする
なお、 Confluence にはデータベース ドライバーがいくつか組み込まれていますが、組み込まれていないドライバーはユーザー自身でインストールする必要があります。新しい データベースのセットアップ手順 にしたがい、必要に応じて、データベース ドライバをダウンロードしてインストールします。
ステップ 6.Confluence のセットアップ ウィザードを実行し、新しいデータベースにデータをコピーする
ステップ 7. Marketplace アプリの再インストール
ステップ 8.新しいマシンの設定を確認する
方法2 - 大容量の添付ファイルをインストールする場合
始める前に
以下の説明は、ファイルシステムに保存されている添付ファイルにのみ適用されます。データベース内に添付ファイルを保存している場合は、添付ファイルの保存設定 を参照して、添付ファイルの保存方法を変更して移行する方法を調べてください。
ステップ 1: Marketplace アプリを記録する
ステップ 2: データをバックアップする
- 既存データの XML バックアップを作成します。「サイトを手動でバックアップする」をご確認ください。XML ファイルの置き場所をメモします。このメモは、後で新しいデータベースに Confluence データをインポートするために必要になります。
- Confluence を停止します。
- Confluence ホーム ディレクトリ内の attachments ディレクトリ (
<CONFLUENCE-HOME-DIRECTORY>\attachments
) のコピーを作成します。このデータは、以降で新しい Confluence インストールに Confluence の添付ファイル データをコピーする際に必要になります。 - 外部データベースを使用している場合、そのデータベースとともにインストールされたユーティリティを使用して、バックアップを別に作成します。これも予防措置です。
ステップ 3:新しいデータベースを設定する
新しいデータベースのセットアップ手順を選択し、以下の手順にしたがいます。
- データベース サーバーをインストールします。
- 手順にしたがって、データベース サーバーに必要な設定を行います。
- Confluence データベースとユーザーを追加します。このステップで定義したユーザー名とパスワードをメモしておきます。あとで Confluence セットアップ ウィザードを実行するときに、このメモ内容が必要になります。
ステップ 4.新しい場所に Confluence(同じバージョン番号)をインストールする
ここで、別のホームディレクトリ パスとインストール パスを使用して、もう一度 Confluence をインストールします。
注意: 既存のインストールと同じバージョンの Confluence を使用する必要があります。(Confluence をアップグレードする場合は、別のステップとして実行する必要があります。)たとえば、Confluence 5.1.2 を実行している場合、新しいインストールも Confluence 5.1.2 である必要があります。
Confluence インストーラーを実行する場合は、
- カスタム インストールを選択します 。(既存のインストールのアップグレードは選択 しません。)
- 新しいインストール先ディレクトリ を選択します。これが新しい Confluence インストール ディレクトリです。これは既存の Confluence インストールと同じであってはなりません。
- 新しいホーム ディレクトリ を選択します。これが新しい Confluence のデータ ディレクトリです。これは既存の Confluence インストールと同じであってはなりません。
ステップ 5.必要に応じて、データベース ドライバをダウンロードし、インストールする
なお、 Confluence にはデータベース ドライバーがいくつか組み込まれていますが、組み込まれていないドライバーはユーザー自身でインストールする必要があります。新しい データベースのセットアップ手順 にしたがい、必要に応じて、データベース ドライバをダウンロードしてインストールします。
ステップ 6. Confluence のセットアップ ウィザードを実行し、新しいデータベースにデータをコピーする
ステップ 7 :添付ファイルをコピーする
attachments ディレクトリ (<CONFLUENCE-HOME-DIRECTORY>\attachments
) のコンテンツを、古い Confluence ホーム ディレクトリから新しい Confluence ホーム ディレクトリにコピーします。
ステップ 8. Marketplace アプリの再インストール
ステップ 9.新しいマシンの設定を確認する
データベース内の大文字と小文字の区別に関する注意
「照合」はデータの並べ替えと比較の方法を決定する一連のルールを指します。大文字と小文字の区別は照合の観点の 1 つです。他の観点としては、仮名(日本語スクリプト)の区別や文字幅(1 バイト文字と 2 バイト文字)の区別があります。
新しい Confluence インスタンスの設定
新しい Confluence インスタンスの場合、Confluence データベースで大文字と小文字を区別する照合を使用することをお勧めします。これは多くのデータベースシステムで使用される既定の照合タイプです。
注意:データベースが大文字と小文字を区別して照合するように設定されている場合でも、Confluence はすべてのユーザー名を小文字に変換してからデータベースに保存します。たとえば、「joebloggs」と「joeBloggs」と「JoeBloggs」は同じユーザー名として扱われることになります。
別のデータベースへの既存の Confluence インスタンスの移行
既定の Confluence 設定では、データベースで大文字と小文字を区別する照合を使用します。これは、既定の条件で作成されたデータベースでは典型的な設定です。このタイプの設定から新しいデータベースに移行する場合、新しいデータベースで大文字と小文字を区別する照合を使用することをお勧めします。データを保存していた元の Confluence サイトでは大文字と小文字の区別が必要であり、移行先で大文字と小文字を区別しない照合を使用する場合、(たとえば、XML インポート経由で)移行した後のデータに整合性の問題が発生する可能性があります。
サーバー間で MySQL データベースを移行する
Confluence 7.11 以降のバージョンでは、データベース トリガーと手順が導入されました。mysqldump
を移行に使用する場合は、mysqldump
コマンドに別のパラメーターを追加する必要があります。詳細については、「Confluence MySQL データベースの移行が原因で「content_procedure_for_denormalised_permissions は存在しません」エラーが発生する」をご参照ください。
さらに、Confluence は、サーバーのユーザー情報とホスト名/IP をハードコードした項 DEFINER
をそのプロシージャに使用します。データベース ダンプが生成されると、DDL にユーザー名 / アカウントが入ったプロシージャがエクスポートされます。同じユーザー名 / アカウントに同じ権限が付与されていないデータベースにダンプをインポートすると、エラーが発生します。詳細については、「MySQL エラー1449: 定義者として指定されたユーザーが存在しない」をご参照ください。
トラブルシューティング
XML バックアップを復元することができない場合は、トラブルシューティング ガイド を参照してください。