Restauración de copias de seguridad flexibles de Azure Database for PostgreSQL (versión preliminar)
En este artículo se explica cómo restaurar un servidor flexible de Azure PostgreSQL respaldado mediante la copia de seguridad de Azure Backup.
Requisitos previos
Antes de restaurar desde copias de seguridad del servidor flexible de Azure Database for PostgreSQL, asegúrese de que tiene los permisos necesarios para la operación de restauración.
Los datos de copia de seguridad se almacenan en el almacén de Backup como un blob dentro del inquilino de Microsoft. Durante una operación de restauración, los datos de copia de seguridad se copian de una cuenta de almacenamiento a otra entre inquilinos. Asegúrese de que la cuenta de almacenamiento de destino de la restauración tenga la propiedad AllowCrossTenantReplication establecida en true.
Restauración de una base de datos flexible de Azure PostgreSQL
Siga estos pasos:
Vaya a Almacén de Backup>Instancias de Backup. Seleccione el servidor flexible de PostgreSQL que se va a restaurar y seleccione Restaurar.
Como alternativa, vaya al centro de copia de seguridad y seleccione Restaurar.
Seleccione el momento dado que desea restaurar mediante Seleccionar punto de restauración. Cambie el intervalo de fechas seleccionando Período de tiempo.
Elija la cuenta de almacenamiento de destino y el contenedor en la pestaña Restaurar parámetros. Seleccione Validar para comprobar los permisos de parámetros de restauración antes de la revisión y restauración final.
Si la validación es correcta, seleccione Revisar y restaurar.
Después de la revisión final de los parámetros, seleccione Restaurar para restaurar la copia de seguridad del servidor flexible de PostgreSQL seleccionada en la cuenta de almacenamiento de destino.
Envíe la operación de restauración y haga un seguimiento del trabajo desencadenado en Trabajos de copia de seguridad.
Una vez finalizado el trabajo, los datos de copia de seguridad se restauran en la cuenta de almacenamiento. A continuación se muestra el conjunto de archivos recuperados en la cuenta de almacenamiento después de la restauración:
El primer archivo es un marcador o un archivo de marca de tiempo que proporciona al cliente la hora en la que se realizó la copia de seguridad. El archivo no se puede restaurar, pero si se abre con un editor de texto debe indicar al cliente la hora UTC en la que se realizó la copia de seguridad.
La segunda base de datosde archivos es una copia de seguridad de base de datos individual para la base de datos denominada tempdata2 tomada mediante pg_dump. Cada base de datos tiene un archivo independiente con formato : {backup_name}base de datos{db_name}.sql
El tercer archivo _roles. Ha realizado una copia de seguridad de roles mediante pg_dumpall
El cuarto archivo _schemas. copia de seguridad mediante pg_dumpall
El quinto archivo _tablespaces. Tiene las copias de seguridad de los espacios de tablas mediante pg_dumpall
Después de la finalización de la restauración en la cuenta de almacenamiento de destino, puede usar la utilidad pg_restore para restaurar la base de datos y otros archivos en un servidor flexible de PostgreSQL. Use el siguiente comando para conectarse a un servidor flexible de Postgresql existente y a una base de datos existente
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
: nombre de la cuenta de almacenamiento de destino.--container-name
: nombre del contenedor de blobs.--blob-name
: nombre del blob.--account-key
: clave de la cuenta de almacenamiento.-Fd
: el formato de directorio.-j
: el número de trabajos.-C
: comience la salida con un comando para crear la propia base de datos y volver a ella.
Si tiene más de una base de datos para restaurarla, vuelva a ejecutar el comando anterior para cada base de datos.
Además, con varios trabajos simultáneos-j, puede reducir el tiempo de restauración de una base de datos grande en un servidor de destino de varios núcleos virtuales. El número de trabajos puede ser igual o menor que el número de vCPU asignadas al servidor de destino.
Para restaurar los otros tres archivos (roles, esquemas y espacios de tablas), use la utilidad psql para restaurarlos en un servidor flexible de PostgreSQL.
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 -
Vuelva a ejecutar el comando anterior para cada archivo.