Udostępnij przez


Tworzenie kopii zapasowej serwera usługi Active Directory

Kopia zapasowa serwera usługi Active Directory wymaga utworzenia kopii zapasowej bazy danych i dzienników transakcji. Ten temat zawiera przewodnik po tym, jak aplikacja kopii zapasowej wykonuje kopię zapasową usługi katalogowej Active Directory.

Obiekt wywołujący te funkcje kopii zapasowej musi mieć uprawnienia SE_BACKUP_NAME. Możesz użyć funkcji DsSetAuthIdentity, aby ustawić kontekst zabezpieczeń, w którym są wywoływane funkcje tworzenia/przywracania kopii zapasowej katalogu.

Aby utworzyć kopię zapasową serwera usługi Active Directory, wykonaj następujące kroki

  1. Wywołaj funkcję DsIsNTDSOnline, aby określić, czy usługi Active Directory Domain Services są uruchomione.
  2. Jeśli usługi Active Directory Domain Services są uruchomione, wywołaj funkcję DsBackupPrepare w celu zainicjowania dojścia kontekstu kopii zapasowej. Jeśli usługi Active Directory Domain Services nie są uruchomione, nie można utworzyć kopii zapasowej i aplikacja kopii zapasowej musi zakończyć się niepowodzeniem operacji tworzenia kopii zapasowej.
  3. Wywołaj funkcję DsBackupGetDatabaseNames, aby uzyskać listę plików do utworzenia kopii zapasowej. Aby zwolnić pamięć zwróconą przez tę funkcję, wywołaj funkcję DsBackupFree.
  4. Dla każdej nazwy na zwróconej liście plików wywołaj funkcję DsBackupOpenFile, po której następuje powtarzające się wywołania funkcji dsBackupReadDsBackupRead do momentu odczytania całego pliku. Po zakończeniu odczytywania pliku wywołaj funkcję DsBackupClose, aby ją zamknąć.
  5. Po utworzeniu kopii zapasowej wszystkich plików bazy danych wywołaj funkcję DsBackupGetBackupLogs, aby uzyskać listę dzienników transakcji. Ta lista jest obsługiwana tak samo jak lista plików bazy danych.
  6. Po zakończeniu tworzenia kopii zapasowej dziennika transakcji wywołaj funkcję DsBackupTruncateLogs, aby usunąć wszystkie zatwierdzone dzienniki transakcji, których kopia zapasowa została utworzona.
  7. Zapisz zawartość tokenu wygaśnięcia dostarczonego przez funkcję DsBackupPrepare. Można to zapisać w pliku lub w innej pamięci trwałej. Ten token należy przekazać do funkcji DsRestorePrepare w celu zainicjowania operacji przywracania.
  8. Zwolnij pamięć dla tokenu wygasania, przekazując wskaźnik tego tokenu do funkcji DsBackupFree.
  9. Na koniec wywołaj funkcję DsBackupEnd, aby wszystkie zasoby skojarzone z dojściem kontekstu kopii zapasowej zostały zwolnione.