Sun Java System Calendar Server 6 2005Q4 管理ガイド

Procedureカレンダデータベース (caldb) を再構築するには ? GSE がない場合

破損してしまったカレンダデータベース (caldb) を復元するときは、csdb ユーティリティーの rebuild コマンドを使用します。rebuild コマンドで、すべてのカレンダデータベースを走査して破損の発生を調べます。不整合が検出されると、rebuild コマンドは再構築したカレンダデータベース (.db ファイル) を cal_svr_base/SUNWics5/cal/sbin/rebuild_db ディレクトリに生成します。

rebuild は大量の情報を生成する可能性があるので、stdoutstderr を含むすべての出力をファイルとして書き出すことをお勧めします。

次に示す手順では、rebuild コマンドは GSE (グループスケジューリングエンジン) データベースを再構築しません。

GSE データベースなしにカレンダデータベースを再構築するには、次のように実行します。

手順
  1. Calendar Server がインストールされているシステムの管理権限を持つユーザーとしてログインします。

  2. Calendar Server を停止します。

  3. カレンダデータベースのコピーをまだ作成していない場合は、コピーを作成します。データベース (.db) ファイルとログ (log.*) ファイルをコピーします。共有ファイル (__db.*) をコピーする必要はありません。

  4. cal_svr_base/SUNWics5/cal/sbin ディレクトリに移動します。たとえば、Solaris オペレーティングシステムでは次のように入力します。


    cd /opt/SUNWics5/cal/sbin

    sbin ディレクトリのディスク容量が問題となる場合は、別のディレクトリで rebuild コマンドを実行します。

  5. カレンダデータベースのコピーに対して rebuild コマンドを実行します。


    ./csdb rebuild /tmp/db /tmp/

    データベースディレクトリを指定しない場合、現在のディレクトリに格納されているデータベースに対して rebuild が実行されます。上記の例では、/tmp/ パラメータは、再構築したデータベースの出力先ディレクトリを指定しています。


    注 –

    カレンダデータベースを再構築するときは、常に最新のバックアップコピーを使用してください。

    ただし、膨大なデータが失われ、データベースの定期バックアップで複数のコピーを利用できるときは、最新のコピーから最も古いコピーの順に再構築を行います。この方法の唯一の欠点は、すでに削除されているカレンダコンポーネントが再構築されたデータベースに再表示されることです。

    たとえば、3 つのバックアップカレンダデータベースファイルが db_0601db_0615、および db_0629 というディレクトリに格納されている場合は、次の順序で rebuild コマンドを実行します。

    1. ./csdb rebuild db_0629

      Then check for corruption. If this backup copy is also corrupt, then run rebuild on the next backup copy.

    2. ./csdb rebuild db_0615

      Then check for corruption. If this backup copy is also corrupt, then run rebuild on the next backup copy.

    3. ./csdb rebuild db_0601

      ... etc.

    rebuild コマンドは再構築したデータベースを cal_svr_base/SUNWics5/cal/sbin/rebuild_db ディレクトリに書き込みます。


  6. rebuild の実行が完了したら、rebuild.out ファイルを確認します。再構築が正常に完了した場合、rebuild.out ファイルの最後の行は次のようになります。


    Calendar database has been rebuilt
  7. rebuild の成功を確認したら、再構築したデータベース (.db) ファイルを rebuild_db ディレクトリから運用データベースにコピーします。

  8. 破損したデータベースのディレクトリに共有ファイル (__db.*) が含まれていた場合は、それも運用ディレクトリに移動します。

  9. Calendar Server を再起動します。