記載日:2006/09/24
Subversion 1.2.3 FedoraCore 5

1.svnadmin:dump/load によるリポジトリのバックアップとリストア

ここでは、Subversion のリポジトリをバックアップ、リストアする手順を紹介します。バックアップには dump コマンドリストアには load コマンドを使用しました。dump と load コマンドはリポジトリが保存してある PC 上で実行します。リポジトリを保存してある PC が遠隔地にある場合は、telnet や ssh で接続することになります。

今回は以下の設定で実行しました。

設定項目 設定値
リポジトリのディレクトリ /var/repository/testRepos/
ダンプファイルのパス /home/repository/testRepos.dmp

2.バックアップ(svnadmin:dump)

svnadmin の dump コマンドを実行すると、リポジトリの内容が標準出力に出力されます。それをファイルにリダイレクトすればダンプファイルとして書き出すことができます。

svnadmin dumpリポジトリのディレクトリ) > (ダンプファイルのパス

今回の設定で dump コマンドを実行した結果は以下となります。 dump コマンド実行後、何も出力されずにプロンプトが表示されればダンプファイルの作成は成功です。

$ svnadmin dump /var/repository/testRepos > /home/repository/testRepos.dmp
$

3.リストア(svnadmin:load)

svnadmin の load コマンドを実行すると、標準入力の内容が指定したリポジトリにロードされます。標準入力の代わりにリダイレクトでダンプファイルを入力とすれば、dump で出力したファイルの内容をリポジトリに取り込むことができます。

svnadmin loadリポジトリのディレクトリ) < (ダンプファイルのパス

リストアの手順は、先に空のディレクトリを作成してそこに新規のリポジトリを作成します。続けて load コマンドに作成したリポジトリを指定してダンプファイルのロードを行います。

3-1.新規リポジトリを作成

新しくディレクトリを作成して、そこに svnadmin の create コマンドでリポジトリを作成しました。 create コマンドについては、 リポジトリ新規作成(svnadmin) に記事を掲載してあります。

$ cd /var/repository/
mkdir testRepos
$ svnadmin create testRepos --fs-type fsfs

3-2.ダンプファイルを新規リポジトリにロード

svnadmin の load コマンドに、新規に作成したリポジトリを指定してダンプファイルのロードを行いました。 ここでは load コマンドで出力される load 状況を表示しないように /dev/null にリダイレクトしています。そのため何も出力されずにプロンプトが表示されればダンプファイルの作成は成功です。

$ svnadmin load /var/repository/testRepos < /home/repository/testRepos.dmp > /dev/null
$