6.1. Backup e Restauração no PostgreSQL¶
Introdução ao Backup e Restauro no PostgreSQL¶
O backup e a restauração são partes essenciais da administração de bancos de dados, ajudando a garantir a segurança dos dados em caso de falhas do sistema ou outras situações problemáticas. No PostgreSQL, você pode fazer backup e restauração usando os utilitários pg_dump, pg_restore e psql.
Backup com o pg_dump¶
-
Backup de todo o banco de dados: Utilize o comando
pg_dumppara criar um arquivo de backup do banco de dados inteiro. Abra o terminal e execute o seguinte comando:pg_dump -h <servidor> -U <usuario> -W -F t <nome_do_banco_de_dados> > <caminho/arquivo_de_backup.tar>Substitua
<servidor>pelo nome ou IP do servidor,<usuario>pelo nome do usuário do PostgreSQL,<nome_do_banco_de_dados>pelo nome do banco de dados que deseja fazer o backup e<caminho/arquivo_de_backup.tar>pelo caminho e nome do arquivo de backup que será gerado. Os parâmetros combinados permitem que opg_dumpcrie um arquivo de backup no formato desejado, contendo todas as definições e dados do banco de dados especificado.
Parâmetros do pg_dump¶
- -U: Especifica o nome do usuário do banco de dados (também é possível utilizar
--username). - -W: Força o pedido de senha do usuário para se conectar ao banco de dados (também pode ser utilizado
--password). - -F: Especifica o formato do arquivo de saída (também pode utilizar
--format). Os formatos são:p: Texto simples (SQL)t: Tarball (recomendado para melhor compatibilidade com opg_restore)
- >: Símbolo de redirecionamento do Linux que direciona a saída do comando para um arquivo.
Restaurar DB com o pg_restore¶
-
Restaurar todo o banco de dados: Utilize o comando
pg_restorepara restaurar o arquivo de backup para o banco de dados:pg_restore -h <servidor> -U <usuario> -W -d <nome_do_banco_de_dados> < <caminho/arquivo_de_backup.tar>Substitua
<servidor>pelo nome ou IP do servidor,<usuario>pelo nome do usuário do PostgreSQL,<nome_do_banco_de_dados>pelo nome do banco de dados de destino e<caminho/arquivo_de_backup.tar>pelo caminho e nome do arquivo de backup físico a ser restaurado.
Parâmetros do pg_restore¶
- -U: Especifica o nome do usuário do banco de dados (também é possível utilizar
--username). - -W: Força o pedido de senha do usuário para se conectar ao banco de dados (também pode ser utilizado
--password). - -d: Especifica o nome do banco de dados de destino (também pode utilizar
--dbname). - <: Símbolo de redirecionamento do Linux que direciona o conteúdo do arquivo para a entrada do comando.
Backup e restore com o psql¶
-
Backup de todo o banco de dados: Utilize o comando
pg_dumppara criar um arquivo de backup do banco de dados inteiro com formato SQL: -
Restaurar todo o banco de dados: Utilize o comando
psqlpara restaurar o arquivo de backup SQL para o banco de dados:Substitua
<servidor>pelo nome ou IP do servidor,<usuario>pelo nome do usuário do PostgreSQL,<nome_do_banco_de_dados>pelo nome do banco de dados de destino e<caminho/arquivo_de_backup.sql>pelo caminho e nome do arquivo de backup físico a ser restaurado.
Parâmetros do psql¶
- -U: Especifica o nome do usuário do banco de dados (também é possível utilizar
--username). - -W: Força o pedido de senha do usuário para se conectar ao banco de dados (também pode ser utilizado
--password). - -d: Especifica o nome do banco de dados de destino (também pode utilizar
--dbname).
Dica
Entender o que cada parâmetro faz é importante, pois permite personalizar os comandos de acordo com suas necessidades e garantir que você tenha o máximo de controle ao fazer backup e restaurar seus bancos de dados. Para saber mais sobre o parâmetros de cada comando, utilize o parâmetro (--help), exemplo:
Referências para técnicas avançadas¶
Este guia foca nas técnicas básicas de backup e restauração usando pg_dump, pg_restore e psql. No entanto, o PostgreSQL oferece outras técnicas avançadas, como backups físicos, backups incrementais e Point-In-Time Recovery (PITR).
Para aprender mais sobre esses métodos e quando usá-los, consulte a documentação oficial do PostgreSQL clicando aqui.
Enquanto isso, este guia simples e prático deve ser suficiente para ajudar iniciantes a começarem a trabalhar com o backup e a restauração no PostgreSQL.
Espero que este guia tenha sido útil para você entender como realizar backup e restauração no PostgreSQL usando os utilitários pg_dump, pg_restore e psql. Lembre-se de fazer backups regularmente para garantir a segurança dos seus dados e estar preparado para possíveis situações de falha.