Restaurer une instance

Cette page explique comment restaurer une instance à partir d'une sauvegarde et effectuer une récupération à un moment précis.

Pour plus d'informations sur les opérations de restauration ou la récupération à un moment précis ainsi que pour connaître les bonnes pratiques et les conditions requises les concernant, consultez la section Présentation de la restauration d'une instance.

Restaurer à partir d'une sauvegarde à la demande ou automatisée

Vous pouvez utiliser une sauvegarde à la demande ou automatique dans les scénarios suivants:

  • Restaurer sur une autre instance du même projet
  • Restaurer sur la même instance à partir de laquelle la sauvegarde a été effectuée
  • Restaurer sur une autre instance dans un autre projet ou une autre région

Si la récupération à un moment précis (PITR) est activée, vous pouvez rétablir votre instance à un moment spécifique, en fonction des paramètres de conservation des journaux de votre instance.

Effectuer une restauration sur une autre instance

Lorsque vous restaurez des données à partir d'une sauvegarde sur une autre instance, les données de l'instance cible sont mises à jour selon l'état de l'instance source au moment de la sauvegarde. Pour en savoir plus, consultez les sections Conseils généraux pour effectuer une restauration et Conseils et prérequis pour restaurer sur une autre instance.

Si vous avez besoin d'une liste de sauvegardes pour le projet et que vous ne pouvez pas les consulter sur la page de présentation de l'instance en raison d'une panne, vous pouvez utiliser l'API backupRuns.list avec un caractère générique (-). Cette option permet de récupérer la liste de toutes les sauvegardes de toutes les instances du projet. Pour en savoir plus, consultez la section Afficher les sauvegardes en cas de panne.

Console

  1. Dans Google Cloud Console, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Si l'instance cible comporte des instances dupliquées avec accès en lecture, supprimez-les depuis le menu "Autres actions" Icône Plus.
  3. Pour ouvrir la page Présentation d'une instance, cliquez sur son nom.
  4. Dans le menu de navigation SQL, sélectionnez Sauvegardes.
  5. Recherchez la sauvegarde à partir de laquelle vous souhaitez effectuer la restauration, puis cliquez sur Restaurer.
  6. Sur la page Restaurer une instance à partir d'une sauvegarde, vérifiez que vous avez sélectionné la bonne sauvegarde dans la section Vérifier les détails de la sauvegarde.
  7. Dans Choisir la destination de la restauration, sélectionnez Écraser une instance existante.
  8. Dans le menu Instance à remplacer, sélectionnez l'instance à utiliser pour la restauration. L'instance que vous sélectionnez et toutes ses données sont écrasées.
  9. Pour confirmer votre sélection, saisissez le nom de l'instance à écraser dans le champ ID de l'instance de destination.
  10. Pour démarrer le processus de restauration, cliquez sur Restaurer.
  11. Pour vérifier l'état de l'opération de restauration, accédez à la page Opérations de l'instance.
  12. Une fois l'opération de restauration terminée, recréez les instances dupliquées que vous avez supprimées dans cette procédure.

gcloud

  1. Pour déterminer si l'instance cible comporte des réplicas avec accès en lecture, utilisez la commande gcloud sql instances describe:
    gcloud sql instances describe TARGET_INSTANCE_NAME

    Notez toutes les instances listées dans la colonne replicaNames.

  2. Pour supprimer tous les réplicas, utilisez la commande gcloud sql instances delete:
    gcloud sql instances delete REPLICA_NAME

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour répertorier les sauvegardes de l'instance source, utilisez la commande gcloud sql backups list:
    gcloud sql backups list \
    --instance SOURCE_INSTANCE_NAME
  4. Recherchez la sauvegarde que vous souhaitez utiliser, puis enregistrez sa valeur ID.
  5. Pour restaurer l'instance cible à partir de la sauvegarde, utilisez la commande gcloud sql backups restore:
    gcloud sql backups restore BACKUP_ID \
    --restore-instance=TARGET_INSTANCE_NAME \
    --backup-instance=SOURCE_INSTANCE_NAME
  6. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

REST v1

  1. Pour déterminer si l'instance comporte des instances dupliquées avec accès en lecture et obtenir les ID de ces instances dupliquées, listez toutes les instances dupliquées de l'instance cible.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Supprimez toutes les instances dupliquées.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • REPLICA_ID: ID de l'instance dupliquée

    Méthode HTTP et URL :

    DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_ID

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour obtenir l'ID de la sauvegarde que vous souhaitez utiliser, listez les sauvegardes de l'instance source.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • project-id : ID du projet
    • instance-id : ID de l'instance.

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    -OU-

    Si votre instance se trouve dans une région ayant subi une panne, répertoriez toutes les sauvegardes d'un projet.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID: ID d'instance, ou - pour obtenir la liste de toutes les sauvegardes du projet.

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/-/backupRuns

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Recherchez la sauvegarde de l'instance à restaurer.
  4. Restaurez l'instance cible à partir de la sauvegarde.

    Avant d'utiliser les données de requête, effectuez les remplacements suivants :

    • project-id : ID du projet
    • target-instance-id : ID de l'instance cible
    • source-instance-id : ID de l'instance source
    • backup-id : ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/target-instance-id/restoreBackup

    Corps JSON de la requête :

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  5. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

REST v1beta4

  1. Pour déterminer si l'instance comporte des instances dupliquées avec accès en lecture et obtenir les ID de ces instances dupliquées, listez toutes les instances dupliquées de l'instance cible.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Supprimez toutes les instances dupliquées.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • REPLICA_ID: ID de l'instance dupliquée

    Méthode HTTP et URL :

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_ID

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour obtenir l'ID de la sauvegarde que vous souhaitez utiliser, listez les sauvegardes de l'instance source.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • project-id : ID du projet
    • instance-id : ID de l'instance.

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  4. Restaurez l'instance cible à partir de la sauvegarde.

    Avant d'utiliser les données de requête, effectuez les remplacements suivants :

    • project-id : ID du projet
    • target-instance-id : ID de l'instance cible
    • source-instance-id : ID de l'instance source
    • backup-id : ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/target-instance-id/restoreBackup

    Corps JSON de la requête :

    {
      "restoreBackupContext":
      {
        "backupRunId": backup-id,
        "instanceId": "source-instance-id"
      }
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  5. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

Effectuer une restauration sur la même instance

Lorsque vous restaurez des données à partir d'une sauvegarde sur la même instance, les données de cette instance sont rétablies à l'état existant au moment de la sauvegarde. Pour en savoir plus sur la restauration d'une instance, consultez la section Conseils généraux pour effectuer une restauration.

Console

  1. Dans Google Cloud Console, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Si l'instance cible comporte des instances dupliquées avec accès en lecture, supprimez-les depuis le menu "Autres actions" Icône Plus.
  3. Pour ouvrir la page Présentation d'une instance, cliquez sur son nom.
  4. Dans le menu de navigation SQL, sélectionnez Sauvegardes.
  5. Recherchez la sauvegarde que vous souhaitez utiliser, puis cliquez sur Restaurer.
  6. Sur la page Restaurer une instance à partir d'une sauvegarde, vérifiez que vous avez sélectionné la bonne sauvegarde dans la section Vérifier les détails de la sauvegarde.
  7. Dans Choisir la destination de la restauration, sélectionnez Écraser l'instance source.

    Vérifiez que le nom de l'instance source est spécifié entre parenthèses.

  8. Pour confirmer votre sélection, saisissez le nom de l'instance dans le champ ID de l'instance de destination.
  9. Pour démarrer le processus de restauration, cliquez sur Restaurer.
  10. Pour vérifier l'état de l'opération de restauration, accédez à la page Opérations de l'instance.
  11. Une fois l'opération de restauration terminée, recréez les instances dupliquées que vous avez supprimées dans cette procédure.

gcloud

  1. Pour déterminer si l'instance comporte des réplicas avec accès en lecture, utilisez la commande gcloud sql instances describe:
    gcloud sql instances describe INSTANCE_NAME

    Notez toutes les instances listées dans la colonne replicaNames.

  2. Pour supprimer tous les réplicas, utilisez la commande gcloud sql instances delete:
    gcloud sql instances delete REPLICA_NAME

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour lister les sauvegardes de l'instance, utilisez la commande gcloud sql backups list:
    gcloud sql backups list --instance INSTANCE_NAME
  4. Recherchez la sauvegarde que vous souhaitez utiliser, puis enregistrez sa valeur ID.
  5. Pour restaurer l'instance à partir de la sauvegarde spécifiée, utilisez la commande gcloud sql backups restore:
    gcloud sql backups restore BACKUP_ID \
    --restore-instance=INSTANCE_NAME
  6. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

REST v1

  1. Pour déterminer si l'instance possède des instances dupliquées avec accès en lecture et obtenir les ID de ces instances dupliquées, listez toutes les instances dupliquées de l'instance.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Supprimez toutes les instances dupliquées.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • REPLICA_ID: ID de l'instance dupliquée

    Méthode HTTP et URL :

    DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_ID

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour obtenir l'ID de la sauvegarde que vous souhaitez utiliser, listez les sauvegardes de l'instance.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • project-id : ID du projet
    • instance-id : ID de l'instance.

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  4. Restaurez l'instance à partir de la sauvegarde spécifiée.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance
    • BACKUP_ID : ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID/restoreBackup

    Corps JSON de la requête :

    {
      "restoreBackupContext":
      {
        "backupRunId": "BACKUP_ID",
      }
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  5. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

REST v1beta4

  1. Pour déterminer si l'instance possède des instances dupliquées avec accès en lecture et obtenir les ID de ces instances dupliquées, listez toutes les instances dupliquées de l'instance.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Supprimez toutes les instances dupliquées.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • REPLICA_ID: ID de l'instance dupliquée

    Méthode HTTP et URL :

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_ID

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour obtenir l'ID de la sauvegarde que vous souhaitez utiliser, listez les sauvegardes de l'instance.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • project-id : ID du projet
    • instance-id : ID de l'instance.

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  4. Restaurez l'instance à partir de la sauvegarde spécifiée.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance
    • BACKUP_RUN_ID: code temporel indiquant la date et l'heure auxquelles Cloud SQL restaure l'instance à partir de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID/restoreBackup

    Corps JSON de la requête :

    {
      "restoreBackupContext":
      {
        "backupRunId": "BACKUP_RUN_ID",
      }
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  5. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

Effectuer une restauration sur une instance d'un autre projet

Le paramètre project vous permet de restaurer des données sur une instance d'un autre projet que celui où la sauvegarde a été effectuée. Lorsque vous utilisez le paramètre project, appelez restoreBackup dans le projet et sur l'instance sur laquelle vous souhaitez restaurer les données. Lorsque vous effectuez une restauration à partir d'une sauvegarde sur une autre instance, les données de l'instance cible sont mises à jour selon l'état de l'instance source au moment de la sauvegarde.

Autorisations

L'utilisateur qui restaure sur un autre projet doit disposer de l'autorisation cloudsql.instances.restoreBackup pour le projet cible et de l'autorisation cloudsql.backupRuns.get pour l'instance source. Ces autorisations sont incluses dans le rôle Cloud SQL Admin.

Pour restaurer les données sur une instance d'un autre projet :

gcloud

  1. Répertoriez les sauvegardes de l'instance.

    gcloud sql backups list --instance INSTANCE_NAME

    Remplacez INSTANCE_NAME par le nom de l'instance.

  2. Recherchez la sauvegarde que vous souhaitez utiliser, puis enregistrez sa valeur ID.
  3. Restaurez les données sur une instance d'un autre projet.

    gcloud sql backups restore BACKUP_ID \
    --restore-instance=TARGET_INSTANCE_NAME \
    --backup-instance=SOURCE_INSTANCE_NAME \
    --backup-project=SOURCE_INSTANCE_PROJECT

    Effectuez les remplacements suivants :

    • BACKUP_ID: ID de la sauvegarde. Vous avez obtenu cet ID précédemment dans cette procédure.
    • TARGET_INSTANCE_NAME: instance du projet de destination vers laquelle vous restaurez les données.
    • SOURCE_INSTANCE_NAME: instance du projet source contenant les données que vous souhaitez restaurer dans l'instance du projet de destination.
    • SOURCE_INSTANCE_PROJECT: projet contenant l'instance source.

REST v1

Pour obtenir l'identifiant backupId, exécutez la commande suivante.

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • project-id : ID du projet
  • instance-id : ID de l'instance.

Méthode HTTP et URL :

GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/backupRuns

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Restaurez la sauvegarde sur une instance dans un autre projet :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • source-project-id : ID du projet source
  • target-project-id : ID du projet cible
  • target-instance-id : ID de l'instance cible
  • source-instance-id : ID de l'instance source
  • backup-id : ID de la sauvegarde

Méthode HTTP et URL :

POST https://sqladmin.googleapis.com/v1/projects/target-project-id/instances/target-instance-id/restoreBackup

Corps JSON de la requête :

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Pour en savoir plus sur la propriété project, consultez la section sur restoreBackup

REST v1beta4

Pour obtenir l'identifiant backupId, exécutez la commande suivante.

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • project-id : ID du projet
  • instance-id : ID de l'instance.

Méthode HTTP et URL :

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/backupRuns

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Restaurez la sauvegarde sur une instance dans un autre projet :

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • source-project-id : ID du projet source
  • target-project-id : ID du projet cible
  • target-instance-id : ID de l'instance cible
  • source-instance-id : ID de l'instance source
  • backup-id : ID de la sauvegarde

Méthode HTTP et URL :

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/target-project-id/instances/target-instance-id/restoreBackup

Corps JSON de la requête :

{
  "restoreBackupContext":
  {
    "backupRunId": backup-id,
    "project": "source-project-id",
    "instanceId": "source-instance-id"
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Pour en savoir plus sur la propriété project, consultez la section sur restoreBackup

Restaurer à partir d'une sauvegarde finale

Vous pouvez utiliser une sauvegarde finale dans les scénarios suivants:

  • Restaurer la sauvegarde finale sur une nouvelle instance
  • Restaurer sur une nouvelle instance dans un autre projet ou une autre région

Étant donné que vous utilisez une sauvegarde finale d'une instance supprimée pour restaurer votre instance, vous pouvez également utiliser cette sauvegarde pour créer une instance avec la configuration de l'instance supprimée et récupérer vos données.

Restaurer dans une nouvelle instance

Lorsque vous créez une instance à partir d'une sauvegarde finale, Cloud SQL utilise les paramètres de configuration de l'instance à partir de laquelle la sauvegarde finale est effectuée. Une fois l'instance créée, Cloud SQL restaure les données à l'état de la sauvegarde finale.

Console

  1. Dans la console Google Cloud, accédez à la page Sauvegardes Cloud SQL.

    Accéder à "Sauvegardes Cloud SQL"

    Cette page liste toutes les sauvegardes, y compris les sauvegardes finales, associées à un projet Google Cloud.

  2. Cliquez sur la sauvegarde finale contenant les données que vous souhaitez restaurer sur une nouvelle instance.
  3. Dans la boîte de dialogue Sauvegarde finale, cliquez sur Restaurer.
  4. Sur la page Restaurer une instance à partir d'une sauvegarde, vérifiez que vous avez sélectionné la bonne sauvegarde dans la section Vérifier les détails de la sauvegarde.
  5. Dans Choisir la destination de la restauration, sélectionnez Restaurer dans une nouvelle instance.
  6. Dans le menu Région, sélectionnez la région de la nouvelle instance.
  7. Dans le champ ID d'instance, saisissez un ID pour la nouvelle instance.
  8. Pour démarrer le processus de restauration, cliquez sur Restaurer.
  9. Pour vérifier l'état de l'opération de restauration, accédez à la page Opérations de l'instance.

gcloud

  1. Pour lister les sauvegardes finales de l'instance source, utilisez la commande gcloud sql backups list:
    gcloud sql backups list \
    --filter='type:FINAL instance: SOURCE_INSTANCE_NAME'
  2. Recherchez la sauvegarde que vous souhaitez utiliser, puis enregistrez sa valeur NAME.
  3. Pour restaurer une nouvelle instance à partir de la sauvegarde finale spécifiée, utilisez la commande gcloud sql backups restore:
    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=TARGET_INSTANCE_NAME 

REST v1

  1. Pour obtenir l'ID de la sauvegarde que vous souhaitez utiliser, listez les sauvegardes finales de l'instance source.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Restaurez une nouvelle instance à partir de la sauvegarde finale spécifiée.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • TARGET_INSTANCE_ID : ID de l'instance cible
    • BACKUP_ID: ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    Corps JSON de la requête :

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
      restore_instance_settings: {}
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

REST v1beta4

  1. Pour obtenir l'ID de la sauvegarde que vous souhaitez utiliser, listez les sauvegardes finales de l'instance source.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Restaurez une nouvelle instance à partir de la sauvegarde finale spécifiée.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • TARGET_INSTANCE_ID : ID de l'instance cible
    • BACKUP_ID: ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    Corps JSON de la requête :

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
      restore_instance_settings: {}
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

Restaurer sur une instance existante

Lorsque vous restaurez les données d'une sauvegarde finale sur une instance existante, les données de l'instance cible sont mises à jour selon l'état de l'instance source au moment de la sauvegarde. Pour en savoir plus, consultez les sections Conseils généraux pour effectuer une restauration et Conseils et prérequis pour restaurer sur une autre instance.

Si vous avez besoin d'une liste de sauvegardes pour le projet et que vous ne pouvez pas les consulter sur la page de présentation de l'instance en raison d'une panne, vous pouvez utiliser l'API backupRuns.list.

Console

  1. Dans Google Cloud Console, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Si l'instance cible comporte des instances dupliquées avec accès en lecture, supprimez-les depuis le menu "Autres actions" Icône Plus.
  3. Dans la console Google Cloud, accédez à la page Sauvegardes Cloud SQL.

    Accéder à "Sauvegardes Cloud SQL"

    Cette page liste toutes les sauvegardes, y compris les sauvegardes finales, associées à un projet Google Cloud.

  4. Cliquez sur la sauvegarde finale contenant les données que vous souhaitez restaurer sur une autre instance.
  5. Dans la boîte de dialogue Sauvegarde finale, cliquez sur Restaurer.
  6. Sur la page Restaurer une instance à partir d'une sauvegarde, vérifiez que vous avez sélectionné la bonne sauvegarde dans la section Vérifier les détails de la sauvegarde.
  7. Dans Choisir la destination de la restauration, sélectionnez Écraser une instance existante.
  8. Dans le menu Instance à remplacer, sélectionnez l'instance à utiliser pour la restauration. L'instance que vous sélectionnez et toutes ses données sont écrasées.

  9. Pour confirmer votre sélection, saisissez le nom de l'instance à écraser dans le champ ID de l'instance de destination.
  10. Pour démarrer le processus de restauration, cliquez sur Restaurer.
  11. Pour vérifier l'état de l'opération de restauration, accédez à la page Opérations de l'instance.
  12. Une fois l'opération de restauration terminée, recréez les instances dupliquées que vous avez supprimées dans cette procédure.

gcloud

  1. Pour déterminer si l'instance cible comporte des réplicas avec accès en lecture, utilisez la commande gcloud sql instances describe:
    gcloud sql instances describe TARGET_INSTANCE_NAME

    Notez toutes les instances listées dans la colonne replicaNames.

  2. Pour supprimer tous les réplicas, utilisez la commande gcloud sql instances delete:
    gcloud sql instances delete REPLICA_NAME

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour lister les sauvegardes finales de l'instance source, utilisez la commande gcloud sql backups list:
    gcloud sql backups list \
    --filter='type:FINAL instance: SOURCE_INSTANCE_NAME'
  4. Recherchez la sauvegarde que vous souhaitez utiliser, puis enregistrez sa valeur NAME.
  5. Pour restaurer l'instance cible à partir de la sauvegarde, utilisez la commande gcloud sql backups restore:
    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=TARGET_INSTANCE_NAME
  6. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

REST v1

  1. Pour déterminer si l'instance comporte des instances dupliquées avec accès en lecture et obtenir les ID de ces instances dupliquées, listez toutes les instances dupliquées de l'instance cible.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Supprimez toutes les instances dupliquées.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • REPLICA_ID: ID de l'instance dupliquée

    Méthode HTTP et URL :

    DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/REPLICA_ID

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour obtenir l'ID de la sauvegarde finale que vous souhaitez utiliser, listez les sauvegardes de l'instance source.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Recherchez la sauvegarde de l'instance à restaurer.
  4. Restaurez l'instance cible à partir de la sauvegarde.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • TARGET_INSTANCE_ID : ID de l'instance cible
    • BACKUP_ID: ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    Corps JSON de la requête :

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  5. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

REST v1beta4

  1. Pour déterminer si l'instance comporte des instances dupliquées avec accès en lecture et obtenir les ID de ces instances dupliquées, listez toutes les instances dupliquées de l'instance cible.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID?fields=replicaNames

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  2. Supprimez toutes les instances dupliquées.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • REPLICA_ID: ID de l'instance dupliquée

    Méthode HTTP et URL :

    DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/REPLICA_ID

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Répétez l'opération pour chaque instance dupliquée.

  3. Pour obtenir l'ID de la sauvegarde finale que vous souhaitez utiliser, listez les sauvegardes de l'instance source.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • INSTANCE_ID : ID de l'instance

    Méthode HTTP et URL :

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

    Recherchez la sauvegarde de l'instance à restaurer.
  4. Restaurez l'instance cible à partir de la sauvegarde.

    Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

    • PROJECT_ID : ID du projet
    • TARGET_INSTANCE_ID : ID de l'instance cible
    • BACKUP_ID: ID de la sauvegarde

    Méthode HTTP et URL :

    POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

    Corps JSON de la requête :

    {
      backup: projects/PROJECT_ID/backups/BACKUP_ID
    }
    

    Pour envoyer votre requête, développez l'une des options suivantes :

    Vous devriez recevoir une réponse JSON de ce type :

  5. Une fois l'opération de restauration terminée, recréez les réplicas que vous avez supprimés dans cette procédure.

Effectuer une restauration sur une instance d'un autre projet

L'utilisateur qui restaure des données sur une instance d'un autre projet doit disposer de l'autorisation cloudsql.instances.restoreBackup pour le projet cible et de l'autorisation cloudsql.backupRuns.get pour l'instance source. Ces autorisations sont incluses dans le rôle Cloud SQL Admin.

Pour restaurer les données sur une instance d'un autre projet :

REST v1

Pour obtenir l'backupId de la sauvegarde finale, exécutez la commande suivante:

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • INSTANCE_ID : ID de l'instance

Méthode HTTP et URL :

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Restaurez la sauvegarde sur une instance dans un autre projet :

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • TARGET_INSTANCE_ID : ID de l'instance cible
  • BACKUP_ID: ID de la sauvegarde

Méthode HTTP et URL :

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

Corps JSON de la requête :

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Pour en savoir plus sur la propriété project, consultez la section sur restoreBackup

REST v1beta4

Pour obtenir l'backupId de la sauvegarde finale, exécutez la commande suivante:

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • INSTANCE_ID : ID de l'instance

Méthode HTTP et URL :

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Restaurez la sauvegarde sur une instance dans un autre projet :

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • TARGET_INSTANCE_ID : ID de l'instance cible
  • BACKUP_ID: ID de la sauvegarde

Méthode HTTP et URL :

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

Corps JSON de la requête :

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Pour en savoir plus sur la propriété project, consultez la section sur restoreBackup

Restaurer dans une nouvelle instance d'une autre région

L'utilisateur qui restaure des données sur une nouvelle instance dans une autre région doit disposer de l'autorisation cloudsql.instances.restoreBackup pour le projet cible et de l'autorisation cloudsql.backupRuns.get pour l'instance source. Ces autorisations sont incluses dans le rôle Cloud SQL Admin.

De plus, pour créer une instance dans une autre région, vous devez respecter les critères des règles d'administration de cette région.

Pour restaurer des données sur une nouvelle instance dans une autre région:

gcloud

  1. Pour lister les sauvegardes finales de l'instance source, utilisez la commande gcloud sql backups list:
    gcloud sql backups list \
    --filter='type:FINAL instance: SOURCE_INSTANCE_NAME'
  2. Recherchez la sauvegarde que vous souhaitez utiliser, puis enregistrez sa valeur NAME.
  3. Pour utiliser la sauvegarde finale pour restaurer des données sur une nouvelle instance dans une autre région, utilisez la commande gcloud sql backups restore:
    gcloud sql backups restore BACKUP_NAME \
    --restore-instance=TARGET_INSTANCE_NAME \
    --region=TARGET_REGION 

REST v1

Pour obtenir l'backupId de la sauvegarde finale, exécutez la commande suivante:

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • INSTANCE_ID : ID de l'instance

Méthode HTTP et URL :

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Restaurez la sauvegarde sur une nouvelle instance dans une autre région:

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • TARGET_INSTANCE_ID : ID de l'instance cible
  • BACKUP_ID: ID de la sauvegarde
  • REGION: région de l'instance cible (par exemple, us-central1)

Méthode HTTP et URL :

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

Corps JSON de la requête :

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {
    region: REGION
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Pour en savoir plus sur la propriété project, consultez la section sur restoreBackup

REST v1beta4

Pour obtenir l'backupId de la sauvegarde finale, exécutez la commande suivante:

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • INSTANCE_ID : ID de l'instance

Méthode HTTP et URL :

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter='type:FINAL AND instance:INSTANCE_ID'

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Restaurez la sauvegarde sur une nouvelle instance dans une autre région:

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID du projet
  • TARGET_INSTANCE_ID : ID de l'instance cible
  • BACKUP_ID: ID de la sauvegarde
  • REGION: région de l'instance cible (par exemple, us-central1)

Méthode HTTP et URL :

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/TARGET_INSTANCE_ID/restoreBackup

Corps JSON de la requête :

{
  backup: projects/PROJECT_ID/backups/BACKUP_ID
  restore_instance_settings: {
    region: REGION
  }
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

Pour en savoir plus sur la propriété project, consultez la section sur restoreBackup

Effectuer une récupération à un moment précis

Pour effectuer une récupération à un moment précis, consultez la section Récupération à un moment précis.

Identifier la position de récupération

Pour pouvoir effectuer une récupération à un moment précis, vous devez avoir identifié le nom du fichier journal binaire ainsi que la position correspondant au moment auquel vous souhaitez restaurer l'instance.

Pour effectuer cette tâche, consultez la section Identifier la position de récupération.

Étape suivante