Compartilhar via


Função CertSrvBackupTruncateLogs (certbcli.h)

A função CertSrvBackupTruncateLogs elimina registros redundantes e reduz o espaço de armazenamento em disco usado pelos arquivos de log. Antes de truncar os arquivos de log, verifique se um backup de todos os arquivos retornados por CertSrvBackupGetDatabaseNames e CertSrvBackupGetBackupLogs foi protegido.

Sintaxe

HRESULT CERTBCLI_API CertSrvBackupTruncateLogs(
  [in] HCSBC hbc
);

Parâmetros

[in] hbc

Um identificador para um contexto de backup dos Serviços de Certificados.

Retornar valor

O valor retornado é um HRESULT. Um valor de S_OK indica êxito.

Comentários

Depois de proteger um backup do banco de dados e dos arquivos de log, opcionalmente, os arquivos de log podem ser truncados. O volume do arquivo de log aumenta com a atividade do banco de dados e truncar os arquivos de log reduzirá os registros redundantes nos arquivos de log (diminuindo assim o espaço em disco usado para armazenar os arquivos de log).

Os arquivos de log são fornecidos para integridade e eficiência do banco de dados. Se ocorrer uma saída menos normal com o aplicativo Serviços de Certificados, na próxima vez que os Serviços de Certificados forem iniciados, o banco de dados reproduzirá os arquivos de log para evitar que dados corrompidos sejam introduzidos no banco de dados.

Dependendo do volume dos arquivos de log, a reprodução do arquivo de log pode ser um processo demorado. Durante essa reprodução, a autoridade de certificação não estará disponível para outras atividades. Observe que, se o aplicativo de Serviços de Certificados for interrompido corretamente (por exemplo, interrompendo o serviço ou desligando o sistema operacional corretamente), os arquivos de log não serão reproduzidos na próxima vez que ele for iniciado.

Nota Se você chamar CertSrvBackupTruncateLogs sem fazer backup de todos os arquivos retornados de CertSrvBackupGetDatabaseNames e CertSrvBackupGetBackupLogs, não será possível restaurar o conjunto de backup com êxito, resultando em um computador inutilizável dos Serviços de Certificados. Portanto, chame CertSrvBackupTruncateLogs somente quando o conjunto de backup contiver todos os arquivos retornados de CertSrvBackupGetDatabaseNames e CertSrvBackupGetBackupLogs.
 

Exemplos

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");

Requisitos

Requisito Valor
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho certbcli.h (inclua Certsrv.h)
Biblioteca Certadm.lib
DLL Certadm.dll

Confira também

CertSrvBackupGetBackupLogs

Usando as funções de backup e restauração dos Serviços de Certificados