Резервное копирование сервера 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 , чтобы освободить все ресурсы, связанные с дескриптором контекста резервного копирования.