Puede utilizar los comandos BACKUP y RESTORE para exportar copias de seguridad a sus buckets de almacenamiento,
además de crear o restaurar copias de seguridad a través de la interfaz de usuario.
En esta guía se incluyen comandos para los tres CSP.
Requisitos
Necesitará los siguientes datos para exportar/restaurar copias de seguridad en su propio bucket de almacenamiento de CSP:
- Endpoint de AWS S3, con el formato:
s3://<bucket_name>.s3.amazonaws.com/<optional_directory>Por ejemplo:s3://testchbackups.s3.amazonaws.com/Donde:testchbackupses el nombre del bucket de S3 al que se exportarán las copias de seguridad.backupses un subdirectorio opcional.
- Clave de acceso y secreto de AWS. También se admite la autenticación basada en roles de AWS y puede usarse en lugar de la clave de acceso y el secreto de AWS, como se describe en la sección anterior.
- Endpoint de GCS, con el formato:
https://storage.googleapis.com/<bucket_name>/ - Clave de acceso HMAC y secreto HMAC.
- Cadena de conexión de Azure Storage.
- Nombre del contenedor de Azure en la cuenta de almacenamiento.
- Blob de Azure dentro del contenedor.
Copia de seguridad / Restauración de una DB específica
Aquí mostramos cómo hacer la copia de seguridad y la restauración de una sola base de datos. Consulta el resumen de comandos de copia de seguridad para ver los comandos de copia de seguridad completa y restauración.
AWS S3
BACKUP DATABASE test_backups
TO S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)Donde uuid es un identificador único que se utiliza para diferenciar un conjunto de copias de seguridad.
RESTORE DATABASE test_backups
FROM S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)Google Cloud Storage (GCS)
BACKUP DATABASE test_backups
TO S3(
'https://storage.googleapis.com/<bucket>/<uuid>',
'<hmac-key>',
'<hmac-secret>'
)Donde uuid es un identificador único que se usa para identificar la copia de seguridad.
RESTORE DATABASE test_backups
FROM S3(
'https://storage.googleapis.com/<bucket>/<uuid>',
'<hmac-key>',
'<hmac-secret>'
)Azure Blob Storage
BACKUP DATABASE test_backups
TO AzureBlobStorage(
'<cadena de conexión del endpoint de AzureBlobStorage>',
'<contenedor>',
'<blob>/<>'
)Donde uuid es un identificador único que se utiliza para identificar la copia de seguridad.
RESTORE DATABASE test_backups
FROM AzureBlobStorage(
'<cadena de conexión del endpoint de AzureBlobStorage>',
'<contenedor>',
'<blob>/<uuid>'
)Copia de seguridad / Restauración de todo el servicio
Para hacer una copia de seguridad de todo el servicio, use los comandos siguientes. Esta copia de seguridad contendrá todos los datos de usuario y los datos del sistema de las entidades creadas, perfiles de configuración, políticas de roles, cuotas y funciones. A continuación se muestran para AWS S3. Puede utilizar estos comandos con la sintaxis descrita anteriormente para realizar copias de seguridad en GCS y Azure Blob Storage.
BACKUP
TABLE system.users,
TABLE system.roles,
TABLE system.settings_profiles,
TABLE system.row_policies,
TABLE system.quotas,
TABLE system.functions,
ALL EXCEPT DATABASES INFORMATION_SCHEMA, information_schema, system
TO S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)donde uuid es un identificador único que se utiliza para identificar la copia de seguridad.
RESTORE ALL
FROM S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)
SETTINGS restore_access_entities_with_current_grants = 1La configuración restore_access_entities_with_current_grants está disponible a partir de la versión 26.4 de ClickHouse Cloud (compilación 26.4.1.1942 o posterior).
Puede comprobar la versión que ejecuta su servicio con:
SELECT version()Cuando restore_access_entities_with_current_grants está habilitada, los usuarios y roles restaurados tienen sus grants limitados a lo que el usuario que realiza la restauración tiene permitido conceder
(la misma semántica que GRANT CURRENT GRANTS), en lugar de que RESTORE
falle con ACCESS_DENIED cuando la copia de seguridad contiene más permisos de los que el usuario que realiza la restauración puede conceder.
En versiones anteriores a la 26.4, omita la configuración.
FAQ
¿Qué ocurre con las copias de seguridad en mi almacenamiento de objetos en la nube? ¿ClickHouse las limpia en algún momento?
Le ofrecemos la posibilidad de exportar copias de seguridad a su bucket; sin embargo, no limpiamos ni eliminamos ninguna de las copias de seguridad una vez escritas. Usted es responsable de gestionar el ciclo de vida de las copias de seguridad en su bucket, lo que incluye eliminarlas, archivarlas según sea necesario o moverlas a un almacenamiento más económico para optimizar el costo total.
¿Qué ocurre con el proceso de restauración si muevo algunas de las copias de seguridad existentes a otra ubicación?
Si se mueve alguna copia de seguridad a otra ubicación, será necesario actualizar el comando de restauración para que apunte a la nueva ubicación donde se almacenan las copias de seguridad.
¿Qué ocurre si cambio las credenciales necesarias para acceder al almacenamiento de objetos?
Tendrá que actualizar las credenciales modificadas en la UI para que las copias de seguridad vuelvan a realizarse correctamente.
¿Qué ocurre si cambio la ubicación a la que exporto mis copias de seguridad externas?
Tendrá que actualizar la nueva ubicación en la UI, y las copias de seguridad comenzarán a realizarse en esa nueva ubicación. Las copias de seguridad antiguas permanecerán en la ubicación original.
¿Cómo puedo deshabilitar las copias de seguridad externas en un servicio para el que las habilité?
Para deshabilitar las copias de seguridad externas de un servicio, vaya a la pantalla de configuración del servicio y haga clic en Change external backup. En la pantalla siguiente, haga clic en Remove setup para deshabilitar las copias de seguridad externas del servicio.