備份 Active Directory 伺服器
Active Directory 伺服器備份會要求您備份資料庫和事務歷史記錄。 本主題提供備份應用程式如何備份 Active Directory 目錄服務的逐步解說。
這些備份函式的呼叫端必須具有 SE_BACKUP_NAME 許可權。 您可以使用 DsSetAuthIdentity 函式來設定呼叫目錄備份/還原函式的安全性內容。
若要備份 Active Directory 伺服器,請執行下列步驟
- 呼叫 DsIsNTDSOnline 函式,以判斷 Active Directory 網域服務 是否正在執行。
- 如果 Active Directory 網域服務 正在執行,請呼叫 DsBackupPrepare 函式來初始化備份內容句柄。 如果 Active Directory 網域服務 未執行,則無法備份,而且備份應用程式必須失敗備份作業。
- 呼叫 DsBackupGetDatabaseNames 函式,以取得要備份的檔案清單。 若要釋放此函式傳回的記憶體,請呼叫 DsBackupFree 函式。
- 針對傳回檔案清單中的每個名稱,呼叫 DsBackupOpenFile 函式,然後重複呼叫 DsBackupRead 函式,直到讀取整個檔案為止。 當您完成讀取檔案之後,請呼叫 DsBackupClose 函式來關閉它。
- 備份所有資料庫檔案之後,請呼叫 DsBackupGetBackupLogs 函式以取得事務歷史記錄清單。 此清單的處理方式就像資料庫檔案清單一樣。
- 當您完成事務歷史記錄備份之後,請呼叫 DsBackupTruncateLogs 函式來刪除所有已備份的認可事務歷史記錄。
- 儲存 DsBackupPrepare 函式所提供的到期令牌內容。 這可以儲存在檔案或其他持續性記憶體中。 此令牌必須傳遞至 DsRestorePrepare 函 式,才能起始還原作業。
- 將令牌指標傳遞至DsBackupFree函式,以釋放過期令牌的記憶體。
- 最後,呼叫 DsBackupEnd 函式以釋放與備份內容句柄相關聯的所有資源。