Restaurar backups flexíveis do Banco de Dados do Azure para PostgreSQL (versão prévia)
Este artigo explica como restaurar um backup de servidor flex PostgreSQL do Azure pelo Backup do Azure.
Pré-requisitos
Antes de restaurar dos backups de servidor flexível do Banco de Dados do Azure para PostgreSQL, verifique se você tem as permissões necessárias para a operação de restauração.
Os dados de backup são armazenados no cofre de backup como um blob dentro do locatário da Microsoft. Durante uma operação de restauração, os dados de backup são copiados de uma conta de armazenamento para outra entre locatários. Verifique se a conta de armazenamento de destino da restauração tem a propriedade AllowCrossTenantReplication definida como true.
Restaurar o banco de dados flexível PostgreSQL do Azure
Siga estas etapas:
Vá para Cofre de Backup>Instâncias de Backup. Selecione o servidor flex PostgreSQL a ser restaurado e selecione Restaurar.
Como alternativa, acesse o Centro de backup e selecione Restaurar.
Selecione o ponto no tempo que você gostaria de restaurar usando Selecionar ponto de restauração. Altere o intervalo de datas selecionando Período de tempo.
Escolha a conta de armazenamento e o contêiner de destino na guia Parâmetros de restauração. Selecione Validar para verificar as permissões dos parâmetros de restauração antes da revisão final e da restauração.
Quando a validação for bem-sucedida, selecione Examinar + restaurar.
Após a revisão final dos parâmetros, selecione Restaurar para restaurar o backup do servidor flex PostgreSQL selecionado na conta de armazenamento de destino.
Envie a operação de restauração e acompanhe o trabalho disparado em Trabalhos de backup.
Depois que o trabalho for concluído, os dados de backup serão restaurados na conta de armazenamento. Veja abaixo o conjunto de arquivos recuperados em sua conta de armazenamento após a restauração:
O primeiro arquivo é um arquivo de carimbo de data/hora ou marcador que fornece ao cliente o horário em que o backup foi feito. O arquivo não pode ser restaurado, mas se aberto com um editor de texto deve informar ao cliente a hora UTC em que o backup foi feito.
O segundo arquivo database é um backup de banco de dados individual para o banco de dados chamado tempdata2 feito usando pg_dump. Cada banco de dados tem um arquivo separado com formato – {backup_name}database{db_name}.sql
O terceiro arquivo _roles. Tem funções cujo backup é feito usando pg_dumpall
O quarto arquivo _schemas. backup feito usando pg_dumpall
O quinto arquivo _tablespaces. Tem espaços de tabela cujo backup é feito usando pg_dumpall
Após a conclusão da restauração na conta de armazenamento de destino, você pode usar pg_restore utilitário para restaurar o banco de dados e outros arquivos para um servidor flexível do PostgreSQL. Use o comando a seguir para se conectar a um servidor flexível postgresql e a um banco de dados 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
: Nome da conta de armazenamento de destino.--container-name
: Nome do contêiner de blob.--blob-name
: Nome do blob.--account-key
: Chave da Conta de Armazenamento.-Fd
: o formato do diretório.-j
: o número de trabalhos.-C
: inicie a saída com um comando para criar o próprio banco de dados e, em seguida, reconecte-se a ele.
Se você tiver mais de um banco de dados para restaurar, execute novamente o comando anterior para cada banco de dados.
Além disso, ao usar diversos trabalhos simultâneos -j, é possível reduzir o tempo necessário para restaurar um grande banco de dados em um servidor de destino com vários vCore. O número de trabalhos pode ser igual ou menor que o número de vCPUs alocados para o servidor de destino.
Para restaurar os outros três arquivos (funções, esquema e espaços de tabela), use o utilitário psql para restaurá-los em um servidor flexível do 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 -
Execute novamente o comando acima para cada arquivo.
Próximas etapas
Matriz de suporte para backup de banco de dados flex PostgreSQL usando o Backup do Azure.