Sun Java System Calendar Server 6 2005Q4 管理指南

Procedure重建行事曆資料庫 (caldb) – 無 GSE

若要回復已損毀的行事曆資料庫 (caldb),請使用 csdb 公用程式的 rebuild 指令。rebuild 指令將掃描所有行事曆資料庫,以檢查是否有損毀。如果 rebuild 指令找到不一致性,其會在 cal_svr_base/SUNWics5/cal/sbin/rebuild_db 目錄中產生重建行事曆資料庫 (.db 檔案)。

rebuild 指令可產生大量資訊,因此請考量將所有輸出 (包括 stdout stderr) 重新導向至一個檔案。

在以下說明中,rebuild 指令不能重建群組排程引擎 (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/ 參數為重建資料庫指定目標目錄。


    備註 –

    請始終使用最新的備份複本重建您的行事曆資料庫。

    然而,如果您的資料大量遺失,而您已經定期備份了資料庫並有多個複本可用,請從最新的複本到最舊的複本進行重建。(唯一的缺點是已刪除的行事曆元件將重新出現在重建資料庫中。)

    例如,如果您有三組備份行事曆資料庫檔案,分別在目錄 db_0601db_0615db_0629 中,請按以下序列執行 rebuild 指令:

    1. ./csdb rebuild db_0629

      然後檢查是否有損毀,如果此備份副本也已毀壞,則在下一個備份副本上執行重建。

    2. ./csdb rebuild db_0615

      然後檢查是否有損毀,如果此備份副本也已毀壞,則在下一個備份副本上執行重建。

    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 成功之後,請從 rebuild_db 目錄中將重建資料庫 (.db) 檔案複製到生產資料庫。

  8. 如果您有任何已毀壞資料庫的共用 (__db.*) 檔案,請將其移至其他目錄。

  9. 重新啟動 Calendar Server。