Ce document explique comment restaurer une instance Cloud SQL à partir d'un coffre de sauvegarde à l'aide de la Google Cloud console ou de Google Cloud CLI. Il décrit comment effectuer une restauration sur une instance nouvelle ou existante, écraser une instance source ou effectuer une récupération à un moment précis.
Pour en savoir plus sur les fonctionnalités conceptuelles du service Backup and DR, consultez la présentation du service Backup and DR . Si vous souhaitez d'abord sauvegarder vos bases de données, consultez Sauvegarder des instances Cloud SQL dans un coffre de sauvegarde.
Reprise après sinistre et résilience
Le service Backup and DR fournit des options de reprise après sinistre pour vos instances Cloud SQL. Les sauvegardes stockées dans un coffre de sauvegarde sont indépendantes du cycle de vie et du projet de l'instance source.
Suppression de projet : vous pouvez restaurer des sauvegardes même si le projet de charge de travail d'origine contenant l'instance Cloud SQL source a été supprimé. En effet, les autorisations de déchiffrement nécessaires pour les sauvegardes chiffrées par une clé CMEK sont accordées à l'agent de service Backup and DR dans le projet du coffre de sauvegarde, et non dans le projet de charge de travail. Cela garantit que vos sauvegardes restent accessibles et restaurables tant que le coffre de sauvegarde et la clé Cloud Key Management Service sont intacts et que l'agent de service dispose des autorisations.
Cibles de restauration flexibles : vous pouvez effectuer une restauration sur une nouvelle instance dans le même projet ou dans un autre, ce qui offre une flexibilité dans les scénarios de récupération.
Avant de commencer
Avant de restaurer une instance Cloud SQL à partir d'un coffre de sauvegarde, assurez-vous de disposer des rôles requis.
Pour obtenir les autorisations nécessaires pour restaurer une instance Cloud SQL à partir d'un coffre de sauvegarde, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Pour créer la cible de restauration :
administrateur Cloud SQL (
roles/cloudsql.admin) sur le projet où se trouve l'instance cible -
Pour lire la sauvegarde à partir du coffre :
utilisateur de sauvegarde et de reprise après sinistre (
roles/backupdr.restoreUser) sur le projet où se trouvent les sauvegardes sources
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour restaurer une instance Cloud SQL à partir d'un coffre de sauvegarde. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Vous devez disposer des autorisations suivantes pour restaurer une instance Cloud SQL à partir d'un coffre de sauvegarde :
-
Pour créer la cible de restauration :
cloudsql.instances.restore -
Pour lire la sauvegarde à partir du coffre :
backupdr.bvbackups.useReadOnlyForCloudSqlInstance
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Restaurer une instance Cloud SQL à partir de la sauvegarde la plus récente
Suivez les instructions ci-dessous pour restaurer une instance Cloud SQL :
Console
Dans la Google Cloud console, accédez à la page Vaulted backups (Sauvegardes dans un coffre).
Accéder à la page "Vaulted backups"
La page Vaulted backups (Sauvegardes dans un coffre) ne répertorie que les ressources de données auxquelles des plans de sauvegarde ont été appliqués et dont les sauvegardes sont stockées dans un coffre de sauvegarde au sein de ce projet.
Sélectionnez la sauvegarde que vous souhaitez restaurer. Sélectionnez Restaurersur la page d'informations de la sauvegarde ou dans le menu.
La page de restauration s'affiche. Vous pouvez y sélectionner les options de restauration suivantes :
Le type de ressource est prérempli avec
Cloud SQL.Dans Nom de la ressource, sélectionnez l'instance Cloud SQL à restaurer.
Lorsque vous cliquez sur Backup (Sauvegarde), un volet s'ouvre et affiche toutes les sauvegardes disponibles. Sélectionnez la sauvegarde spécifique à restaurer.
Pour Choose the restore destination (Choisir la destination de restauration), sélectionnez le projet dans lequel vous souhaitez restaurer l'instance Cloud SQL.
Cliquez sur Continuer.
Lorsque vous êtes invité à Choose restore destination (Choisir la destination de restauration), sélectionnez l’une des options suivantes :
- Restore to a new instance (Restaurer sur une nouvelle instance) : crée une instance basée sur la configuration stockée dans votre sauvegarde. Vous pouvez personnaliser l'instance une fois la restauration terminée. Fournissez un nouvel ID d'instance en utilisant des lettres minuscules, des chiffres et des traits d'union. Commencez par une lettre.
Overwrite an existing instance (Écraser une instance existante) : sélectionnez une instance existante à écraser dans la liste des instances disponibles.
Overwrite the source instance (Écraser l'instance source) : écrase votre instance actuelle. Toutes les données actuelles sur l'instance sélectionnée seront écrasées, y compris les journaux précédents de récupération à un moment précis. Les données écrasées ne pourront pas être récupérées ultérieurement. Cette option n'est pas recommandée pour une utilisation en production.
gcloud
Recherchez la source de données contenant la sauvegarde que vous souhaitez restaurer. Vous pouvez trouver la source de données à partir d'un projet d'instance Cloud SQL ou d'un projet de coffre de sauvegarde :
À partir d'un projet d'instance Cloud SQL : utilisez
data-source-referencegcloud alpha backup-dr data-source-references fetch-for-resource-type sqladmin.googleapis.com/Instance \ --location=LOCATION \ --project=CSQL_INSTANCE_PROJECT_ID \ --filter='dataSourceGcpResourceInfo.cloudSqlInstanceProperties.name="projects/CSQL_INSTANCE_PROJECT_ID/instances/CSQL_INSTANCE_ID"' \ --format="table(RESOURCE_NAME,DATA_SOURCE)"Remplacez les éléments suivants :
LOCATION : emplacement du coffre de sauvegarde.
CSQL_INSTANCE_ID : nom de la base de données de l' instance Cloud SQL.
CSQL_INSTANCE_PROJECT_ID : projet contenant l'instance Cloud SQL.
À partir d'un projet de coffre de sauvegarde : utilisez
data-sourcegcloud backup-dr data-sources list \ --location=LOCATION \ --project=BACKUP_VAULT_PROJECT_ID \ --filter='dataSourceGcpResource.cloudSqlInstanceDatasourceProperties.name=projects/CSQL_INSTANCE_PROJECT_ID/instances/CSQL_INSTANCE_ID' \ --format="table(dataSourceGcpResource.cloudSqlInstanceDatasourceProperties.name:label=RESOURCE_NAME,name:label=DATA_SOURCE)"Remplacez les éléments suivants :
LOCATION : emplacement du coffre de sauvegarde.
CSQL_INSTANCE_ID : nom de l'instance Cloud SQL.
CSQL_INSTANCE_PROJECT_ID : projet contenant l'instance Cloud SQL.
BACKUP_VAULT_PROJECT_ID : projet contenant le coffre de sauvegarde.
Répertoriez et sélectionnez la sauvegarde à restaurer en répertoriant toutes les sauvegardes de la source de données à l'aide de la commande
gcloud backup-dr backups list.gcloud backup-dr backups list --data-source=DATA_SOURCE \ --format="table(consistencyTime,backupType,name:label=BACKUP_NAME)"Restaurez une instance Cloud SQL à l'aide de la commande
gcloud sql backups restore:gcloud sql backups restore BACKUP_NAME \ --restore-instance=RESTORE_INSTANCE \ --project=RESTORE_PROJECT --region=RESTORE_REGIONRemplacez les éléments suivants :
BACKUP_NAME : nom du coffre de sauvegarde à partir duquel vous souhaitez restaurer les données.
RESTORE_INSTANCE : nom de l'instance Cloud SQL cible.
RESTORE_PROJECT : projet dans lequel vous souhaitez restaurer l'instance Cloud SQL.
RESTORE_REGION : région dans laquelle vous souhaitez effectuer la restauration sur une nouvelle instance Cloud SQL. Cette option est facultative pour les sauvegardes régionales. Ne l'utilisez pas lorsque vous effectuez une restauration sur une instance existante.
Facultatif : pour remplacer d'autres propriétés, consultez Présentation des commandes Google Cloud CLI du service Backup and DR.
Restaurer une instance Cloud SQL à un autre moment précis
Suivez les instructions ci-dessous pour restaurer une instance Cloud SQL à un moment précis. Lorsque vous effectuez une restauration à un moment précis, vous créez un clone Cloud SQL.
Dans la Google Cloud console, accédez à la page Vaulted backups (Sauvegardes dans un coffre).
En haut du tableau, sélectionnez Filter table (Filtrer le tableau), puis cliquez sur Resource type (Type de ressource). Sélectionnez Cloud SQL. L'affichage est alors limité aux instances Cloud SQL auxquelles des plans de sauvegarde ont été appliqués et dont les sauvegardes sont stockées dans un coffre de sauvegarde au sein d'un projet.
Cliquez sur Restore from a point in time (Restaurer à partir d'un moment précis). La page Create a clone (Créer un clone) de Cloud SQL s'ouvre.
Suivez les procédures décrites dans Effectuer une récupération à un moment précis à l'aide du coffre de sauvegarde.
Étape suivante
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.