Pular para o conteúdo principal
Versão 3.1.0

Restauração de backups

Sintaxe do Comando
Terminal input
pgsmart backup restore [Flags]

Flags:

  • -a, --agent=<agent>`` => Alias, hostname ou IP do servidor onde o PgSmart Agent desejado está instalado.
  • -b, --backup=<valor> [default: Todos] => Identificador do backup.
  • -h, --help => Ajuda.
  • -q, --quiet => Execução não interativa para as operações de backup (exec|info|restore). Usada em conjunto com as opções --site e --agent.
  • -s, --site=<valor> [default: Todos] => Nome do ambiente de backup.
  • -t, --type=(full|diff|incr) [default: incr] => Tipo do backup.
    • full (Completo) Backup de todos os arquivos da instância.
    • diff (Diferencial) Backup dos arquivos da instância alterados desde o último backup completo.
    • incr (Incremental) Backup dos arquivos da instância alterados desde o último backup, independentemente do tipo.
  • --disable-archive => Indica que é para desabilitar o arquivamento dos WALs no backup restaurado. Usada em conjunto com a opção --quiet.
  • --restore-path=<valor> [default: Diretório de dados do ambiente de backup] => Local onde será restaurado o backup.Usada em conjunto com a opção --quiet.
  • --restore-type=(delta|force) => Tipo de sobrescrita que será usada, quando existirem arquivos no local onde será restaurado o backup.Usada em conjunto com a opção --quiet.
    • delta Sobrescrever os arquivos usando checksums.
    • force Sobrescrever o diretório completamente.
Execução Não-Interativa
Terminal input
  pgsmart backup restore -a <agente> -site <nome-do-ambiente-de-backup> --backup <nome-do-backup> --quiet --restore-type=[delta|force]
Execução Interativa
Terminal input
pgsmart backup restore
  1. Selecione o Agente do PgSmart desejado (ou Registrar novo Agente).

  2. O PgSmart fará uma verificação, validando se existe um ambiente de backup cadastrado. Em caso negativo, permitirá o cadastramento de um novo ambiente.

  3. Selecione o ambiente de backup.

nota

O PgSmart fará a validação do ambiente, checando se o serviço do Banco de Dados está em execução, por exemplo. Entretanto, não impedirá que a operação prossiga (qualquer irregularidade encontrada será apenas informativa). Isto porque o restore independe da situação do ambiente.

3.1. O PgSmart apresentará uma lista de backups para que seja selecionado o backup desejado. (indicando o mais recente).

  1. Selecione o backup desejado.
nota

O id dos backups é criado pelo pgBackRest e sua composição é:

  • Um prefixo indicando o timestamp (data e hora) da criação do backup no formato aammdd-hhmmss.

  • Um sufixo "f", "i" ou "d", indicando o tipo do backup (full, diferencial, incremental).

  • Caso o backup seja do tipo incremental ou diferencial, antes do id do backup corrente, existirá o id do backup completo que o mesmo deriva.

Exemplo:

  • (full) 20230520-130807F

  • (incr) 20230520-130807F_20230520-130816I

  • (diff) 20230520-130807F_20230523-180002D

  • (full) 20230523-192605F (Backup mais recente)

  1. Após selecionar o backup, confirme se deseja utilizar o PGDATA padrão do ambiente de backup selecionado.
nota

Caso o diretório de restauração seja o mesmo que aquele configurado para o backup, o PgSmart verificará a existência de serviços em execução na instância (para os quais será necessário confirmar a interrupção, pois a restauração só pode ser realizada com o(s) serviço(s) offline).

  1. O PgSmart verificará a existência de arquivos no diretório e, no caso de identificados, será necessário informar a ação desejada.
nota

As ações possíveis são:

  • Sobrescrever usando checksums: os arquivos do diretório destino que estão iguais aos arquivos do backup serão mantidos e restaurados apenas os arquivos diferentes. O resultado da restauração será um diretório igual ao do backup. (backup Delta com verificações realizadas por meio dos checksums)

  • Sobrescrever completamente: Todos os arquivos serão apagados e criados novamente a partir do backup. O resultado da restauração será um diretório igual ao do backup, da mesma forma.

Embora ambas opções levem ao mesmo resultado, a diferença entre as duas é tempo de restauração. A sobrescrita será mais rápida, já que apenas as diferenças serão tratadas.

  1. Confirme se o arquivamento de WAL deve ser desabilitado.

  2. Confirme a execução da restauração.

    Figura 1 - Restauração de Backup
    Figura 1 - Restauração de Backup
Notas Finais
nota

Caso o diretório de restauração seja diferente daquele configurado para o backup, o PgSmart verificará o diretório para restauração e, no caso de não existir, confirmará a sua criação. Se a criação não for confirmada, o PgSmart suspende a operação e retorna ao menu inicial.

nota
  • Como o arquivamento de WAL já está habilitado (o ambiente de backup já está em execução), ou seja, os logs transacionais já estão sendo gerados dentro do repositório de backup, a restauração do backup em um novo ambiente irá restaurar o estado dos parâmetros de configuração do PostgreSQL.

  • Para evitar que os logs transacionais sejam gravados em um ambiente indesejado (no ambiente de produção quando a restauração está sendo feita em um ambiente de homologação, por exemplo), é necessário desabilitar o arquivamento de WAL. Isto fará com que o PgSmart gere os logs transacionais, reciclando-os dentro do diretório da instância, sem gerar riscos para o ambiente.

nota
  • A restauração pode ser verificada diretamente no diretório:
Terminal input
cd /var/lib/pgsql/15/datann
  • Para confirmar os parâmetros de configuração do restore:
Terminal input
cat postgresql.auto.conf