Restaurer des sauvegardes flexibles d’Azure Database pour PostgreSQL (préversion)
Cet article explique comment restaurer un serveur flexible d’Azure PostgreSQL sauvegardé par Sauvegarde Azure.
Prérequis
Avant de restaurer à partir des sauvegardes de serveur flexible Azure Database pour PostgreSQL, vérifiez que vous disposez des autorisations requises pour l’opération de restauration.
Les données de sauvegarde sont stockées dans le coffre de sauvegarde en tant qu’objet blob au sein du locataire Microsoft. Pendant une opération de restauration, les données de sauvegarde sont copiées d’un compte de stockage vers un autre entre les locataires. Vérifiez que le compte de stockage cible de la restauration a la propriété AllowCrossTenantReplication définie sur true.
Restaurer une base de données flexible d’Azure PostgreSQL
Procédez comme suit :
Accédez à Coffre de sauvegarde>Instances de sauvegarde. Sélectionnez le serveur flexible de PostgreSQL à restaurer, puis Restaurer.
Vous pouvez également accéder au Centre de sauvegarde et sélectionner Restaurer.
Sélectionnez la limite dans le temps que vous souhaitez restaurer en utilisant Sélectionner un point de restauration. Modifiez la plage de dates en sélectionnant Période.
Choisissez le compte de stockage cible et le conteneur sous l’onglet Restaurer des paramètres. Sélectionnez Valider pour vérifier les autorisations des paramètres de restauration avant l’examen final et la restauration.
Une fois la validation réussie, sélectionnez Vérifier + restaurer.
Après l’examen final des paramètres, sélectionnez Restaurer pour restaurer la sauvegarde de serveur flexible PostgreSQL dans le compte de stockage cible.
Soumettez l’opération de restauration et suivez la tâche déclenchée sous Travaux de sauvegarde.
Une fois le travail terminé, les données sauvegardées sont restaurées dans le compte de stockage. Vous trouverez ci-dessous l’ensemble de fichiers récupérés dans votre compte de stockage après la restauration :
Le premier fichier est un fichier marqueur ou d’horodatage qui indique au client quand la sauvegarde a été effectuée. Le fichier ne peut pas être restauré, mais s’il est ouvert avec un éditeur de texte, indiquez au client l’heure UTC à laquelle la sauvegarde a été effectuée.
Le deuxième fichier base de données est une sauvegarde de base de données individuelle pour la base de données appelée tempdata2 prise à l’aide de pg_dump. Chaque base de données a un fichier distinct au format – {backup_name}base de données{db_name}.sql
Le troisième fichier _roles. A les rôles sauvegardés à l’aide de pg_dumpall
Le quatrième fichier _schemas. a sauvegardé à l’aide de pg_dumpall
Le cinquième fichier _tablespaces. A les espaces de table sont sauvegardés à l’aide de pg_dumpall
Une fois la restauration effectuée sur le compte de stockage cible, vous pouvez utiliser l’utilitaire pg_restore pour restaurer la base de données et d’autres fichiers sur une instance de PostgreSQL - Serveur flexible. Utilisez la commande suivante pour vous connecter à un serveur flexible postgresql existant et à une base de données existante
az storage blob download --container-name <container-name> --name <blob-name> --account-name <storage-account-name> --account-key <storage-account-key> --file - | pg_restore -h <postgres-server-url> -p <port> -U <username> -d <database-name> -v -
--account-name
: nom du compte de stockage cible.--container-name
: nom du conteneur d’objets blob.--blob-name
: nom de l’objet blob.--account-key
: clé de compte de stockage.-Fd
: Format de répertoire.-j
: Nombre de travaux.-C
: Commencez la sortie avec une commande pour créer la base de données elle-même, puis vous y reconnecter.
Si vous avez plusieurs bases de données à restaurer, réexécutez la commande précédente pour chaque base de données.
En outre, à l’aide de plusieurs travaux simultanés -j, vous pouvez réduire le temps nécessaire à la restauration d’une base de données volumineuse sur un serveur cible multi-vCore. Le nombre de travaux peut être égal ou inférieur au nombre de processeurs virtuels alloués pour le serveur cible.
Pour restaurer les trois autres fichiers (rôles, schéma et espaces de table), utilisez l’utilitaire psql afin de les restaurer sur une instance de PostgreSQL - Serveur flexible.
az storage blob download --container-name <container-name> --name <blob-name> --account-name <storage-account-name> --account-key <storage-account-key> --file - | psql -h <hostname> -U <username> -d <db name> -f <dump directory> -v -
Réexécutez la commande ci-dessus pour chaque fichier.