Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
[Essa função está disponível para uso nos sistemas operacionais especificados na seção Requisitos. O suporte para essa função foi removido no Windows Server 2008 e essa função não faz nada e retorna ERROR_CALL_NOT_IMPLEMENTED.]
Cria um backup do banco de dados de cluster e de todos os pontos de verificação do Registro.
Sintaxe
DWORD BackupClusterDatabase(
[in] HCLUSTER hCluster,
[in] LPCWSTR lpszPathName
);
Parâmetros
[in] hCluster
Manipule para o cluster a ser copiado em backup.
[in] lpszPathName
Cadeia de caracteres Unicode terminada em nulo especificando o caminho para onde o backup deve ser criado. As informações de configuração do cluster serão salvas nesse local; são dados confidenciais que devem ser protegidos. Por exemplo, esses dados podem ser protegidos usando uma lista de controle de acesso para restringir o acesso ao local onde os dados são armazenados.
Retornar valor
Se a função for bem-sucedida, ela retornará ERROR_SUCCESS.
Se a função falhar, ela retornará um dos códigos de erro do sistema.
Comentários
Idealmente, o caminho especificado deve ser um caminho visível para todos os nós de cluster, como um caminho UNC. No mínimo, o caminho deve estar visível para o nó que atualmente possui o recurso de quorum. Não inclua um nome de arquivo no caminho ou a função falhará, retornando ERROR_DIRECTORY. O caminho pode incluir uma barra invertida à direita.
Uma maneira de garantir que exista um caminho apropriado é criar um compartilhamento de rede temporário, da seguinte maneira:
- Chame a função NetShareAdd para criar um compartilhamento de rede temporário. Todos os nós de cluster devem ter acesso de gravação a esse compartilhamento.
- Chame BackupClusterDatabase, especificando o compartilhamento temporário no parâmetro lpszPathName .
- Copie os arquivos de backup (veja abaixo) para um ou mais locais de armazenamento seguros.
- Chame a função NetShareDel para excluir o compartilhamento.
| Path\File | Descrição |
|---|---|
| lpszPathName\chk????. Tmp | Arquivos de instantâneo. |
| lpszPathName\quolog.log | O arquivo de log de quorum. |
| lpszPathName\<GUID de resource>\*. CPT | Os arquivos de ponto de verificação do Registro para o recurso identificado pelo GUID. |
| lpszPathName\<GUID de resource>\*. CPR | Os arquivos de ponto de verificação de criptografia para o recurso identificado pelo GUID. |
| lpszPathName\Clusbackup.dat | Arquivo de marcador de conclusão de backup (somente leitura, oculto, arquivo de 0 byte) |
As operações BackupClusterDatabase subsequentes que usam o mesmo parâmetro lpszPath substituirão os arquivos de backup existentes.
Se possível, faça várias cópias do diretório de backup em diferentes mídias e armazene essas cópias em locais separados.
Exemplos
O exemplo a seguir ilustra uma rotina de backup estático. Para obter um exemplo mais completo incorporando RestoreClusterDatabase, consulte Fazendo backup e restaurando a configuração do cluster. Este exemplo usa o arquivo de cabeçalho ClusDocEx.h definido na documentação do Cluster de Failover.
int main( void )
{
HCLUSTER hCluster = NULL;
WCHAR szClusterName[] = L"CLUSTER_NAME";
WCHAR szPath[] = L"\\\\ClusBack\\19991215";
DWORD dwResult = ERROR_SUCCESS;
if( ( hCluster = OpenCluster( szClusterName ) ) != NULL )
{
dwResult = BackupClusterDatabase( hCluster, szPath );
CloseCluster( hCluster );
}
else
dwResult = GetLastError();
if( dwResult == ERROR_SUCCESS )
{
wprintf( L"\nDone. The cluster database has been backed up to %s. ", szPath );
wprintf( L"The backup consists of the following files:\n chk????.tmp\n"
L" quolog.log\n *.cpt\n *.cpr\n\n" );
return 0;
}
else
{
wprintf( L"The operation failed (%d)\n", dwResult );
return 1;
}
}
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte | Nenhum compatível |
| Servidor mínimo com suporte | Windows Server 2003 Enterprise, Windows Server 2003 Datacenter |
| Plataforma de Destino | Windows |
| Cabeçalho | clusapi.h |
| Biblioteca | ClusAPI.lib |
| DLL | ClusAPI.dll |