Backlog サーバの移行手順をおしえてください (オンプレミス プロフェッショナル エディション)

Backlogサーバーを移行する手順は次のとおりです。
1. システム要件
移行先に、移行元と同バージョンのデータベースがインストール済みであること
移行先に、移行元と同バージョンのBacklogがインストール済みであること

Backlogのインストール方法は インストールガイド をご参照ください。移行先にはインストールガイドの「4. インストール」までを済ませてください。
2. 概要
移行の必要があるデータは次のとおりです。

データベース
アイコン画像を保管しているディレクトリ
Subversionのデータを保管しているディレクトリ
Gitのデータを保管しているディレクトリ
検索インデックスのデータを保管しているディレクトリ
共有ファイル(WebDAV)のデータを保管しているディレクトリ

各保管ディレクトリは、/opt/backlog/data(以下、データ領域ディレクトリ)の下に存在します。
3. 移行手順
次の手順に沿って移行作業を行ってください。

移行元
Backlogを停止します
データベースのダンプファイルを作成します
データ領域ディレクトリを圧縮します

移行先
移行元からダンプファイルとデータ領域の圧縮ファイルを取得します
Backlogを停止します
インストール時に作成したデータベースを削除し、あらたにデータベースを作成します
データ領域ディレクトリを空にします
データベースのダンプファイルをリストアします
データ領域の圧縮ファイルを解凍し、移行元のデータ領域にコピーします
Backlogを起動します

詳細な手順を説明しますが、次の例でコマンドなどを記載しています。

データベースbacklog
データベースユーザーbacklog
移行先サーバーでの移行データ格納場所/mnt

移行元
1. Backlogを停止します
Red Hat Enterprise Linux 6serverまたはCentOS 6の場合
service backlog-www stop
service backlog-app stop
service backlog-mobile stop 廃止されました
service backlog-git stop
service backlog-api stop

Red Hat Enterprise Linux 7またはCentOS 7の場合
systemctl stop backlog.target

2. データベースのダンプファイルを作成します
PostgreSQLの場合
pg_dump -U backlog backlog > backlog-dump.sql

MySQLの場合
mysqldump -ubacklog -p --opt backlog > backlog-dump.sql

3. データ領域のディレクトリを9つ圧縮します
cd /opt/backlog/data
tar cvf backlog-data-image.tar image
tar cvf backlog-data-svn.tar svn
tar cvf backlog-data-git.tar git

cd lucene
tar cvf backlog-data-lucene-index.tar index

cd ../solr/issue
tar cvf backlog-data-solr-issue-data.tar data
cd ../wiki
tar cvf backlog-data-solr-wiki-data.tar data
cd ../pull_request
tar cvf backlog-data-solr-pull_request-data.tar data
cd ../shared_file
tar cvf backlog-data-solr-shared_file-data.tar data

cd ../../share
tar cvf backlog-data-share-dav.tar dav

移行先
4. 移行元からダンプファイルと圧縮ファイルを取得します
移行先からscpなどで/mntなどに保管します。

5. Backlogを停止します
Red Hat Enterprise Linux 6 serverまたはCentOS 6の場合
service backlog-www stop
service backlog-app stop
service backlog-mobile stop 廃止されました
service backlog-git stop
service backlog-api stop

Red Hat Enterprise Linux 7またはCentOS 7の場合
systemctl stop backlog.target

6. インストール時に作成したデータベースを削除し、あらたにデータベースを作成します
PostgreSQLの場合
dropdb -U backlog backlog
createdb -U backlog -E UTF8 backlog

MySQLの場合
mysqladmin -u backlog -p drop backlog
mysqladmin -u backlog -p create backlog

7. データ領域ディレクトリを空にします
rm -rf /opt/backlog/data/image
rm -rf /opt/backlog/data/svn
rm -rf /opt/backlog/data/git
rm -rf /opt/backlog/data/lucene/index
rm -rf /opt/backlog/data/solr/issue/data
rm -rf /opt/backlog/data/solr/wiki/data
rm -rf /opt/backlog/data/solr/pull_request/data
rm -rf /opt/backlog/data/solr/shared_file/data
rm -rf /opt/backlog/data/share/dav

8. 移行元で作成したデータベースのダンプファイルをリストアします
PostgreSQLの場合
psql -U backlog backlog < /mnt/backlog-dump.sql

MySQLの場合
mysql -ubacklog -p backlog < /mnt/backlog-dump.sql

9. データ領域をリストアします
mkdir /mnt/backlog-data
mkdir /mnt/backlog-data/image
tar xvf /mnt/backlog-data-image.tar -C /mnt/backlog-data/image
cp -r /mnt/backlog-data/image/image /opt/backlog/data

mkdir /mnt/backlog-data/svn
tar xvf /mnt/backlog-data-svn.tar -C /mnt/backlog-data/svn
cp -r /mnt/backlog-data/svn/svn /opt/backlog/data

mkdir /mnt/backlog-data/git
tar xvf /mnt/backlog-data-git.tar -C /mnt/backlog-data/git
cp -r /mnt/backlog-data/git/git /opt/backlog/data

mkdir /mnt/backlog-data/lucene-index
tar xvf /mnt/backlog-data-lucene-index.tar -C /mnt/backlog-data/lucene-index
cp -r /mnt/backlog-data/lucene-index/index /opt/backlog/data/lucene

mkdir /mnt/backlog-data/solr-issue-data
tar xvf /mnt/backlog-data-solr-issue-data.tar -C /mnt/backlog-data/solr-issue-data
cp -r /mnt/backlog-data/solr-issue-data/data /opt/backlog/data/solr/issue

mkdir /mnt/backlog-data/solr-wiki-data
tar xvf /mnt/backlog-data-solr-wiki-data.tar -C /mnt/backlog-data/solr-wiki-data
cp -r /mnt/backlog-data/solr-wiki-data/data /opt/backlog/data/solr/wiki

mkdir /mnt/backlog-data/solr-pull_request-data
tar xvf /mnt/backlog-data-solr-pull_request-data.tar -C /mnt/backlog-data/solr-pull_request-data
cp -r /mnt/backlog-data/solr-pull_request-data/data /opt/backlog/data/solr/pull_request

mkdir /mnt/backlog-data/solr-shared_file-data
tar xvf /mnt/backlog-data-solr-shared_file-data.tar -C /mnt/backlog-data/solr-shared_file-data
cp -r /mnt/backlog-data/solr-shared_file-data/data /opt/backlog/data/solr/shared_file

mkdir /mnt/backlog-data/share-dav
tar xvf /mnt/backlog-data-share-dav.tar -C /mnt/backlog-data/share-dav
cp -r /mnt/backlog-data/share-dav/dav /opt/backlog/data/share

データ領域ディレクトリの所有者とグループに、 backlog を指定します。
chown -R backlog.backlog /opt/backlog/data

10. Backlogを起動します
Red Hat Enterprise Linux 6 serverまたはCentOS 6の場合
service backlog-app start
service backlog-git start
service backlog-mobile start 廃止されました
service backlog-www start
service backlog-api start

Red Hat Enterprise Linux 7またはCentOS 7の場合
systemctl start backlog.target

以上でデータの移行が完了します。起動した初回のアクセス時にはスペース設定 > スペースの編集にてスペースURLの確認と設定をしてください。