Sun Java System Calendar Server 6 2005Q1 管理ガイド |
第 18 章
削除ログデータベースの管理Calendar Server には、削除された予定や仕事 (作業) を格納するための削除ログデータベース (ics50deletelog.db) が用意されています。
初期のリリースでは、Calendar Server は削除された予定や作業をデータベースに維持していませんでした。どのコンポーネントが削除されたのかを特定するには、ユーザーは予定または仕事 (作業) の一意の識別子 (uid) または定期予定 ID (rid) を必ず保存しなければなりません。この制限は、WCAP コマンドを使用してクライアントユーザーインタフェース (UI) を作成するインストールに直接影響しました。この制限を解決するため、削除ログデータベースが作成されました。
この章で説明する内容は次のとおりです。
削除ログデータベースの作成Calendar Server は、その他の Calendar Server データベースファイルと同様に削除ログデータベース (ics50deletelog.db) を csdb ディレクトリ内に自動的に作成します。Calendar Server は、予定と仕事を次のように削除ログデータベースに書き込みます。
削除ログデータベースの照会削除ログデータベースからエントリを返すには、展開モードまたは圧縮モードの fetch_deletedcomponents WCAP コマンドを使用します。
recurring パラメータが 1 の場合、fetch_deletedcomponents は、繰り返されない予定、および定期的な予定のマスターコンポーネントを返しますが、個々の定期的な予定は返しません。
繰り返しチェーンのすべてのインスタンスを削除すると、マスターコンポーネントは dtstart、dtend、rrules、rdates、exrules、exdates、uid パラメータを返します。
また fetch_deletedcomponents は、削除された繰り返しインスタンスに関連付けられているアクティブな状態のマスターコンポーネントを返しません。アクティブな状態のマスターコンポーネントを返すには、fetchcomponents_by_lasmod WCAP コマンドを使用します。fetch_deletedcomponents コマンドは、fetchcomponents_by_lasmod コマンドと組み合わせて使用する必要があります。
WCAP コマンドの詳細については、『Sun Java System Calendar Server 6 2005Q1 Developer's Guide』を参照してください。
削除ログデータベースの破棄Calendar Server は、削除ログデータベースの自動破棄と削除ログデータベースの手動破棄の両方をサポートしています。
削除ログデータベースの自動破棄
削除ログデータベースのエントリを Calendar Server に自動破棄させることができます。
表 18-1 は、自動破棄を制御する ics.conf ファイルのパラメータを示しています。
たとえば、5 分 (600 秒) おきに、2 日 (172800 秒) を経過した削除ログデータベースのエントリを Calendar Server に自動破棄させるには、表 18-1 のパラメータを次のように設定します。
service.admin.purge.deletelog="yes"
caldb.berkeleydb.purge.deletelog.interval=600
caldb.berkeleydb.purge.deletelog.beforetime=172800パラメータの設定が完了したら、新しい値が適用されるように Calendar Server を再起動します。
削除ログデータベースの手動破棄
削除ログデータベース (ics50deletelog.db) のエントリを手動で破棄するには、cspurge ユーティリティを使用します。
cspurge -e endtime -s starttime
endtime と starttime は、対象範囲の開始と終了を世界標準時形式 (GMT または UTC とも呼ばれる) で指定します。
cspurge を実行するには、Calendar Server を稼動しているユーザーとグループ (デフォルトでは icsuser と icsgroup)、またはスーパーユーザー (root) としてログインする必要があります。
たとえば、2003 年 7 月 1 日から 2003 年 7 月 31 日までのエントリを破棄するには、次のように実行します。
cspurge -e 20030731T235959Z -s 20030701T120000Z
詳細については、付録 D 「Calendar Server のコマンド行ユーティリティのリファレンス」の「cspurge」を参照してください。
削除ログデータベース用の Calendar Server ユーティリティの使用表 18-2 は、削除ログデータベース (ics50deletelog.db) をサポートする Calendar Server ユーティリティを示しています。
これらのユーティリティの構文など、詳細については付録 D 「Calendar Server のコマンド行ユーティリティのリファレンス」を参照してください。