機械制御/振動騒音
IR情報 会社情報

PERFORCEテクニカルノート033

image_toyo_ss_img_perforce_title_perforce.gif.gif
テクニカルノート033  
image_toyo_ss_img_all_line_yellow.gif.gif

チェックポイントとジャーナル
チェックポイントとジャーナルは必要ですか?

image_toyo_common_spacer.gif.gif
問題
image_toyo_common_spacer.gif.gif
チェックポイントを作成するために時間をかけるべきですか?
image_toyo_common_spacer.gif.gif
最近のチェックポイント・ファイルおよびジャーナル・ファイルを保存するべきですか?
image_toyo_common_spacer.gif.gif
解決策
image_toyo_common_spacer.gif.gif
もちろん、そうするべきです。 「PERFORCE システム管理者ガイド」では、PERFORCE ディポのバックアップとリカバリのための、チェックポイントとジャーナルの使用方法が記述されています。 このテクニカルノートでは、PERFORCE システム管理者向けに、チェックポイントとジャーナルがなぜそれほど重要であるかを記述します。
image_toyo_common_spacer.gif.gif
背景
image_toyo_common_spacer.gif.gif
PERFORCEサーバには、バージョン化ファイルおよびメタデータ(チェンジリスト、作業状態のファイル、ラベルなど)の2種類のデータが格納されています。 これらは共にPERFORCEサーバのルート・ディレクトリに格納されます。バージョン化ファイルはディポのサブディレクトリに格納されます。 PERFORCEインストールにはディポごとに1つのサブディレクトリがあります。 メタデータはPERFORCEデータベースに格納されます。 PERFORCEルート・ディレクトリにある db.* ファイルはそれぞれ、バイナリでエンコードされた単一のデータベース・テーブルです。
image_toyo_common_spacer.gif.gif
ディスク・スペースの不足、ハードウェアの故障、およびシステム障害によって、PERFORCEサーバのファイルが破壊されることがあります。 そのため、PERFORCEディポのディレクトリ構造全体を、通常のファイルシステム・バックアップを使用して定期的にバックアップするべきです。 ディポ・サブディレクトリにあるバージョン化ファイルは、整合性が損なわれることなくバックアップからリストアすることができます。
image_toyo_common_spacer.gif.gif
一方、PERFORCEデータベース・ファイルはシステム・バックアップにコピーされた時点でのトランザクションの整合性が保たれていない可能性があります。 システム・バックアップから db.* ファイルをリストアすると、データベースの整合性が失われる可能性があります。 データベースが破壊された後にその整合性を保証する唯一の方法は、PERFORCEのチェックポイント・ファイルおよびジャーナル・ファイルからデータベースをリストアすることです。
image_toyo_common_spacer.gif.gif
チェックポイント・ファイル
image_toyo_common_spacer.gif.gif
チェックポイントとは、PERFORCEデータベースを再作成するために必要なすべての情報を含むファイルです。 チェックポイントには、バージョン化ファイルの内容が含まれていないことに注意してください。 バージョン化ファイルをチェックポイントからリストアすることはできません。 しかし、チェンジリスト、ラベル、ジョブなどはすべてチェックポイントからリストアすることができます。
image_toyo_common_spacer.gif.gif
チェックポイントは自動的には作成されません。 誰かが、または何らかの手段によって、PERFORCEサーバマシン上でチェックポイント作成コマンドを実行しなければなりません。 チェックポイントを作成するコマンドは、「PERFORCEシステム管理者ガイド」に記述されています。
image_toyo_common_spacer.gif.gif
定期的にチェックポイントを作成するように自動実行プログラムを設定することができます。 プログラム出力を必ずチェックして、チェックポイント作成が成功していることを確認してください。 初めてチェックポイントが必要になったときに、チェックポイントのプログラムが動作していなかったことを発見するのでは遅すぎます。 チェックポイントを作成するときには、稼動中のジャーナルへのパスを指定するのを忘れないでください。
image_toyo_common_spacer.gif.gif
チェックポイント作成コマンド自体が失敗する場合は、ただちに support@perforce.com に連絡してください。 通常、チェックポイントの障害はリソースの問題(ディスク・スペース、パーミッションなど)の兆候であり、適切に処理しなければデータベースに危険をもたらすことがあります。
image_toyo_common_spacer.gif.gif
ジャーナル・ファイル
image_toyo_common_spacer.gif.gif
ジャーナルは、最後のチェックポイント以降のすべてのデータベース変更を記録する、動作中のトランザクション・ログです。 それは2つのチェックポイントの間の架け橋です。 月曜日のチェックポイントと、それ以降水曜日まで収集されたジャーナルがある場合、それらの2つのファイルには水曜日に作られたチェックポイントと同じ情報が含まれます。 したがって、水曜日にディスクが満杯の状態になったためにPERFORCEデータベースが破壊されたのであれば、水曜日のチェックポイントが未作成でもデータベースのリストアが可能です。
image_toyo_common_spacer.gif.gif
ジャーナル・ファイルはリストアに役立つと同時に監査にも役立ちます。 チェックポイントはスナップショットにすぎないため、データベースの状態しか表すことができず、データベースがどのようにしてその状態になったかに関する情報は保持しません。 一方、ジャーナルは、データベースが変更された方法および時期を示します。 ワークスペースが削除されたのがいつであるか、誰がラベルを変更したか、どのユーザが最近アクティブであったか、などの情報を得るには、ジャーナルが必要になります。
image_toyo_common_spacer.gif.gif
現在のジャーナルの場所
image_toyo_common_spacer.gif.gif
デフォルトでは、現在のジャーナル・ファイルの名前は journal であり、P4ROOTディレクトリに配置されています。 しかし、ディスクの障害によりそのルート・ディレクトリが破壊されると、ジャーナル・ファイルにもアクセスできなくなります。 したがって、デフォルトの設定を使用せずに、P4ROOT以外のファイルシステムに書き込まれるようにジャーナル・ファイルを設定すべきです。 PERFORCEサーバのP4JOURNAL環境変数を設定して(またはUNIXの場合は、-Jオプションを付けてPERFORCEを起動)、ジャーナル・ファイルを書き込む場所を指定してください。 (詳しくは、「PERFORCEシステム管理者ガイド」をご覧ください。)
image_toyo_common_spacer.gif.gif
ジャーナル・ファイルの管理
image_toyo_common_spacer.gif.gif
ジャーナル・ファイルはPERFORCEサーバの起動時に自動的に作成されます。 それ以降はチェックポイントの都度、新しいジャーナル・ファイルが作成され、古いジャーナルがリネームされます。 ジャーナル・ファイルの大きさを制御するために、定期的にチェックポイントを作成する必要があります。 現在のジャーナルが非常に大きくなっていると、チェックポイントが必要です。 チェックポイントの後にジャーナル・ファイルが小さく(つまり切り捨て)ならない場合は、テクニカルサポートに連絡してください。
image_toyo_common_spacer.gif.gif
データベースをリストアし、喪失したデータを復元する
image_toyo_common_spacer.gif.gif
システム障害によりPERFORCEルート・ディレクトリのデータが失われた場合、以下のものがあれば完全に復元する準備が整います。
image_toyo_common_spacer.gif.gif
1. 最新のチェックポイント・ファイル
2. 現在のジャーナル・ファイル
3. 最新のP4ROOTディレクトリのバックアップ

image_toyo_common_spacer.gif.gif
「PERFORCEシステム管理者ガイド」の「バックアップとリカバリ」の章を読み返し、「データベースをリカバリするには」の箇所の指示に従ってください。 データベース・ファイルのリストアまたはPERFORCEサーバの再起動において何か問題がある場合は、テクニカルサポートに連絡してください。
image_toyo_common_spacer.gif.gif
ディスク破損によりPERFORCEのルート・ディレクトリ全体をリストアしている場合は、ディポ・ディレクトリに最新のファイル・リビジョンがない可能性があります。 PERFORCEデータベースの復元後に最新のチェンジリストを調べ、最後のシステム・バックアップの後、ディスク破損の前にサブミットされたファイルがないかどうかチェックします。 通常、これらのファイルの最新リビジョンはワークスペースから再度取得できます。 これに関しては、テクニカルサポートに連絡してください。
image_toyo_common_spacer.gif.gif
追加情報
image_toyo_common_spacer.gif.gif
「PERFORCEシステム管理者ガイド」の「バックアップとリカバリ」の章には、p4dコマンドを使用してチェックポイントを作成する方法およびチェックポイントとジャーナルからリカバリを行う方法が記述されています。
image_toyo_common_spacer.gif.gif
「PERFORCEコマンド・リファレンス」の"p4 admin"コマンドの章では、P4コマンドライン・クライアントを使ったチェックポイント作成について説明されています。
image_toyo_common_spacer.gif.gif
Jeff Bowlesにより寄稿されたSystem Administration FAQでは、バックアップとリカバリの戦略、およびいくつかのp4dコマンドの微妙な差異について説明されています。
image_toyo_common_spacer.gif.gif
image_toyo_ss_img_all_btn_yellow_bgwhite2.gif.gif 戻る

PAGE TOP