Función BackupClusterDatabase (clusapi.h)
[Esta función está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. La compatibilidad con esta función se quitó en Windows Server 2008 y esta función no hace nada y devuelve ERROR_CALL_NOT_IMPLEMENTED.]
Crea una copia de seguridad de la base de datos del clúster y de todos los puntos de control del Registro.
Sintaxis
DWORD BackupClusterDatabase(
[in] HCLUSTER hCluster,
[in] LPCWSTR lpszPathName
);
Parámetros
[in] hCluster
Identificador del clúster del que se va a realizar una copia de seguridad.
[in] lpszPathName
Cadena Unicode terminada en NULL que especifica la ruta de acceso a donde se debe crear la copia de seguridad. La información de configuración del clúster se guardará en esta ubicación; se trata de datos confidenciales que se deben proteger. Por ejemplo, estos datos se pueden proteger mediante una lista de control de acceso para restringir el acceso a la ubicación donde se almacenan los datos.
Valor devuelto
Si la función se realiza correctamente, devuelve ERROR_SUCCESS.
Si se produce un error en la función, devuelve uno de los códigos de error del sistema.
Comentarios
Idealmente, la ruta de acceso especificada debe ser una ruta de acceso visible para todos los nodos del clúster, como una ruta de acceso UNC. Como mínimo, la ruta de acceso debe ser visible para el nodo que posee actualmente el recurso de cuórum. No incluya un nombre de archivo en la ruta de acceso o se producirá un error en la función y devolverá ERROR_DIRECTORY. La ruta de acceso puede incluir una barra diagonal inversa final.
Una manera de asegurarse de que existe una ruta de acceso adecuada es crear un recurso compartido de red temporal, como se indica a continuación:
- Llame a la función NetShareAdd para crear un recurso compartido de red temporal. Todos los nodos de clúster deben tener acceso de escritura a este recurso compartido.
- Llame a BackupClusterDatabase y especifique el recurso compartido temporal en el parámetro lpszPathName .
- Copie los archivos de copia de seguridad (consulte a continuación) en una o varias ubicaciones de almacenamiento seguras.
- Llame a la función NetShareDel para eliminar el recurso compartido.
Ruta de acceso\Archivo | Descripción |
---|---|
lpszPathName\chk????. Tmp | Archivos de instantáneas. |
lpszPathName\quolog.log | Archivo de registro de cuórum. |
lpszPathName\<GUID de resource>\*. CPT | Los archivos de punto de comprobación del Registro para el recurso identificado por GUID. |
lpszPathName\<GUID de resource>\*. RCP | Los archivos de punto de control criptográfico para el recurso identificado por GUID. |
lpszPathName\Clusbackup.dat | Archivo de marcador de finalización de copia de seguridad (archivo de solo lectura, oculto, de 0 bytes) |
Las operaciones posteriores de BackupClusterDatabase que usan el mismo parámetro lpszPath sobrescribirán los archivos de copia de seguridad existentes.
Si es posible, realice varias copias del directorio de copia de seguridad en diferentes medios y almacene estas copias en ubicaciones independientes.
Ejemplos
En el ejemplo siguiente se muestra una rutina de copia de seguridad estática. Para obtener un ejemplo más completo que incorpore RestoreClusterDatabase, consulte Copia de seguridad y restauración de la configuración del clúster. En este ejemplo se usa el archivo de encabezado ClusDocEx.h definido en la documentación del clúster de conmutación por error.
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 | Value |
---|---|
Cliente mínimo compatible | No se admite ninguno |
Servidor mínimo compatible | Windows Server 2003 Enterprise, Windows Server 2003 Datacenter |
Plataforma de destino | Windows |
Encabezado | clusapi.h |
Library | ClusAPI.lib |
Archivo DLL | ClusAPI.dll |