Функция CertSrvBackupTruncateLogs (certbcli.h)

Функция CertSrvBackupTruncateLogs устраняет избыточные записи и сокращает дисковое пространство, используемое файлами журнала. Перед усечением файлов журнала убедитесь, что резервная копия всех файлов, возвращенных CertSrvBackupGetDatabaseNames и CertSrvBackupGetBackupLogs , защищена.

Синтаксис

HRESULT CERTBCLI_API CertSrvBackupTruncateLogs(
  [in] HCSBC hbc
);

Параметры

[in] hbc

Дескриптор контекста резервного копирования служб сертификатов.

Возвращаемое значение

Возвращаемое значение — HRESULT. Значение S_OK указывает на успешное выполнение.

Комментарии

После защиты резервной копии файлов базы данных и журналов файлы журналов при необходимости можно усечить. Объем файла журнала увеличивается с активностью базы данных, а усечение файлов журнала приведет к сокращению избыточных записей в файлах журнала (тем самым уменьшая дисковое пространство, используемое для хранения файлов журнала).

Файлы журналов предоставляются для обеспечения целостности и эффективности базы данных. Если в приложении служб сертификатов происходит менее корректное завершение работы, при следующем запуске служб сертификатов база данных воспроизводит файлы журнала, чтобы предотвратить повреждение данных в базе данных.

В зависимости от объема файлов журнала воспроизведение файла журнала может занять много времени. Во время этого воспроизведения центр сертификации будет недоступен для других действий. Обратите внимание, что если приложение служб сертификатов должным образом остановлено (например, при остановке службы или при правильном завершении работы операционной системы), файлы журнала не будут воспроизводиться при следующем запуске.

Примечание Если вы вызываете CertSrvBackupTruncateLogs без резервного копирования всех файлов, возвращенных из CertSrvBackupGetDatabaseNames и CertSrvBackupGetBackupLogs, вы не сможете успешно восстановить резервный набор данных, в результате чего компьютер служб сертификатов станет непригодным для использования. Поэтому вызовите CertSrvBackupTruncateLogs , только если резервный набор данных содержит все файлы, возвращенные из CertSrvBackupGetDatabaseNames и CertSrvBackupGetBackupLogs.
 

Примеры

FNCERTSRVBACKUPTRUNCATELOGS* pfnTruncateLogs;
char * szTruncateLogsFunc = "CertSrvBackupTruncateLogs";

HRESULT    hr=0;

// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnTruncateLogs = (FNCERTSRVBACKUPTRUNCATELOGS*)GetProcAddress( hInst,
                                           szTruncateLogsFunc );
if ( NULL == pfnTruncateLogs )
{
    printf("Failed GetProcAddress - %s, error=%d\n",
           szTruncateLogsFunc,
           GetLastError() );
    exit(1); // Or other appropriate error action.
}

// After they have been backed up, truncate the logs.
// hCSBC is a previously set HCSBC variable.
hr = pfnTruncateLogs(hCSBC);
if (FAILED(hr))
{
    printf("Failed pfnTruncateLogs call [%x]\n", hr);
    exit(1); // Or other appropriate error action.
}
else
    printf("Logs truncated\n");

Требования

Требование Значение
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header certbcli.h (включая Certsrv.h)
Библиотека Certadm.lib
DLL Certadm.dll

См. также раздел

CertSrvBackupGetBackupLogs

Использование функций резервного копирования и восстановления служб сертификатов