wiki:TracBackup

バックアップ

Trac はバックエンドにデータベースを使用しているため、安全に プロジェクトの Environment のバックアップを作成するためには、何らかの配慮が必要になります。 trac-admin に用意されている hotcopy コマンドを使用するとバックアップの作成を簡単に行なう事ができます。

Note: Trac では、 Trac と Subversion 両方を管理するときに分かりやすいよう、  Subversion にあわせて、 hotcopy という用語にしました。

バックアップの作成

稼働中の TracEnvironment をバックアップするためには、以下のコマンドを実行してください:

  $ trac-admin /path/to/projenv hotcopy /path/to/backupdir

trac-admin はバックアップを行っている間、データベースをロックします。

バックアップされたディレクトリは、 tardump/restore のような通常のファイルベースのバックアップツールで、安全に取り扱うことができます。

Note: hotcopy コマンドはバックアップ先ディレクトリが存在していた場合、上書きを行うことが出来ないため、次のエラーで失敗します: Command failed: [Errno 17] File exists: この問題は  本家チケット 3198 で議論されています。(訳注: 上書きを行わない動作のまま変更されない方向で議論が進んでいます。同チケットで運用回避の手順が示されています。)

バックアップからの復元

バックアップは、 SQLite データベースを含む プロジェクトの Environment ディレクトリ配下の全体のスナップショットです。

Environment をバックアップから復元する場合、 Trac を起動しているプロセス (Web サーバ、または tracd) を停止してから、コンテンツをバックアップ (path/to/backupdir) から プロジェクトの Environment ディレクトリに書き戻して、サービスを再起動します。

Note: バックエンドのデータベースとして SQLite を使用しない環境の自動バックアップは現時点ではサポートされていません。回避策として、データベースシステムがどんなメカニズムを提供しているとしても、サーバを停止し、環境のディレクトリ構造をコピーし、データベースの稼働中にバックアップを取ることをお勧めします。


See also: TracAdmin, TracEnvironment, TracGuide,  TracMigrate