ClickHouse Cloud prend en charge l’export de sauvegardes vers votre propre compte auprès d’un fournisseur de services cloud (CSP) (AWS S3, Google Cloud Storage ou Azure Blob Storage). Pour en savoir plus sur le fonctionnement des sauvegardes dans ClickHouse Cloud, y compris les sauvegardes « complètes » et « incrémentielles », consultez la documentation sur les sauvegardes. Notez que les sauvegardes vers votre propre compte cloud se distinguent des sauvegardes Cloud sur place sur un point important : elles ne peuvent pas utiliser la copie native (voir la note ci-dessous).
Dans ce guide, nous montrons des exemples de création de sauvegardes complètes et incrémentielles vers le stockage objet AWS, GCP et Azure, ainsi que la procédure de restauration à partir de ces sauvegardes.
Prérequis
Avant d'exécuter une commande BACKUP, assurez-vous que votre utilisateur ClickHouse dispose du privilège BACKUP. Le default_role de ClickHouse Cloud n'inclut pas ce privilège. Contactez ClickHouse Support pour en faire la demande avant d'exporter des sauvegardes.
Vous aurez besoin des informations suivantes pour exporter/restaurer des sauvegardes vers le bucket de stockage de votre propre CSP.
AWS
- Endpoint S3 AWS, au format :
s3://<bucket_name>.s3.amazonaws.com/<directory>Par exemple :
s3://testchbackups.s3.amazonaws.com/backups/Où :
testchbackupsest le nom du bucket S3 vers lequel exporter les sauvegardes.backupsest un sous-répertoire facultatif.
- La clé d’accès AWS et la clé secrète AWS. L’authentification basée sur les rôles AWS est également prise en charge et peut être utilisée à la place de la clé d’accès AWS et de la clé secrète AWS.
Azure
- Chaîne de connexion au stockage Azure.
- Nom du conteneur Azure dans le compte de stockage.
- Blob Azure dans le conteneur.
Google Cloud Storage (GCS)
-
Endpoint GCS, au format :
https://storage.googleapis.com/<bucket_name>/ -
Clé d’accès HMAC et secret HMAC.
Sauvegarde / restauration
Sauvegarde / restauration vers un bucket S3 sur AWS
Effectuer une sauvegarde d’une base de données
Sauvegarde complète
BACKUP DATABASE test_backups
TO S3('https://testchbackups.s3.amazonaws.com/backups/<uuid>', '<key id>', '<key secret>')uuid désigne ici un identifiant unique permettant de distinguer un ensemble de sauvegardes.
Sauvegarde incrémentielle
BACKUP DATABASE test_backups
TO S3('https://testchbackups.s3.amazonaws.com/backups/<uuid>', '<key id>', '<key secret>')
SETTINGS base_backup = S3('https://testchbackups.s3.amazonaws.com/backups/<base-backup-uuid>', '<key id>', '<key secret>')Restaurer depuis une sauvegarde
RESTORE DATABASE test_backups
AS test_backups_restored
FROM S3('https://testchbackups.s3.amazonaws.com/backups/<uuid>', '<key id>', '<key secret>')Voir : Configurer BACKUP/RESTORE pour utiliser un endpoint S3 pour plus de détails.
Sauvegarde / restauration vers Azure Blob Storage
Effectuer une sauvegarde d’une base de données
Sauvegarde complète
BACKUP DATABASE test_backups
TO AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>');où uuid correspond à un identifiant unique servant à distinguer un ensemble de sauvegardes.
Sauvegarde incrémentielle
BACKUP DATABASE test_backups
TO AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>/my_incremental')
SETTINGS base_backup = AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>')Restaurer depuis une sauvegarde
RESTORE DATABASE test_backups
AS test_backups_restored_azure
FROM AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>')Voir : Configurer BACKUP/RESTORE pour utiliser un endpoint AzureBlobStorage pour plus de détails.
Sauvegarde / restauration sur Google Cloud Storage (GCS)
Effectuer une sauvegarde d’une base de données
Sauvegarde complète
BACKUP DATABASE test_backups
TO S3('https://storage.googleapis.com/<bucket>/<uuid>', <hmac-key>', <hmac-secret>)Ici, uuid est un identifiant unique servant à distinguer un ensemble de sauvegardes.
Sauvegarde incrémentielle
BACKUP DATABASE test_backups
TO S3('https://storage.googleapis.com/test_gcs_backups/<uuid>/my_incremental', 'key', 'secret')
SETTINGS base_backup = S3('https://storage.googleapis.com/test_gcs_backups/<uuid>', 'key', 'secret')Restaurer depuis une sauvegarde
RESTORE DATABASE test_backups
AS test_backups_restored_gcs
FROM S3('https://storage.googleapis.com/test_gcs_backups/<uuid>', 'key', 'secret')