PostgreSQL pg_restore
O `pg_restore` do PostgreSQL é um utilitário para restaurar um banco de dados PostgreSQL a partir de um arquivo criado pelo `pg_dump`. É usado para reconstruir o banco de dados em seu estado original a partir de um arquivo de backup.
Uso
A ferramenta `pg_restore` é utilizada quando você precisa restaurar dados de um arquivo de backup em um banco de dados PostgreSQL. Ele oferece suporte a vários formatos de arquivo (por exemplo, personalizado, diretório, tar) e opções para controlar o que é restaurado.
bash
pg_restore [options] backup_file
Nessa sintaxe, `backup_file` especifica o arquivo a ser restaurado e `[options]` inclui vários sinalizadores para ajustar o processo de restauração.
Exemplos
1. Restauração básica
bash
pg_restore -d mydatabase mybackup.dump
Isso restaura todo o conteúdo do `mybackup.dump` no banco de dados `mydatabase`.
2. Restaurar com esquema específico
bash
pg_restore -d mydatabase --schema=public mybackup.dump
Esse comando restaura somente o esquema `public` de `mybackup.dump` para `mydatabase`, permitindo a restauração seletiva.
3. Restauração com trabalhos paralelos
bash
pg_restore -d mydatabase -j 4 mybackup.dump
Aqui, a opção `-j 4` permite o processamento paralelo com quatro trabalhos, o que acelera a restauração de grandes bancos de dados.
4. Restaurar com tabela específica
bash
pg_restore -d mydatabase --table=mytable mybackup.dump
Esse comando restaura somente a tabela `mytable` do `mybackup.dump` para o `mydatabase`.
5. Restauração somente de dados
bash
pg_restore -d mydatabase --data-only mybackup.dump
Essa opção restaura somente os dados, sem criar nenhum objeto de esquema de banco de dados.
6. Restauração somente de esquema
bash
pg_restore -d mydatabase --schema-only mybackup.dump
Essa opção restaura somente os objetos de esquema, excluindo os dados.
Dicas e práticas recomendadas
- Use o formato correto. Certifique-se de que o formato de arquivo do arquivo de backup corresponda aos recursos do `pg_restore`.
- Teste as restaurações regularmente. Execute restaurações de teste para verificar se os backups são válidos e podem ser restaurados conforme o esperado.
- Aproveite os trabalhos paralelos. Use a opção `-j` para acelerar a restauração, especialmente em bancos de dados grandes.
- Restauração seletiva. Use opções como `--table`, `--schema`, `--data-only` ou `--schema-only` para restaurar partes específicas do banco de dados quando a restauração completa não for necessária.
- Verifique as dependências. Esteja ciente das dependências de objetos ao restaurar tabelas ou esquemas específicos para evitar que você perca referências. Considere o uso da opção `--disable-triggers` para gerenciar as dependências de forma eficaz durante as restaurações somente de dados.
- Tratamento de erros. Os erros comuns durante a restauração incluem tablespaces ou funções ausentes. Certifique-se de que o ambiente do banco de dados de destino corresponda à configuração original. Use arquivos de registro para diagnosticar e solucionar erros.