quarta-feira, 8 de fevereiro de 2017

PostgreSql Backup/Restore

Fonte: http://tsdn.tecnospeed.com.br/blog-do-desenvolvimento-tecnospeed/post/como-fazer-o-backup-e-restore-do-banco-postgresql


Como fazer o backup binário do banco postgres
O banco de dados PostgreSQL nos disponibiliza algumas ferramentas, que são pequenos executáveis que fazem esse serviço de backup e restore.
Através do prompt de comando:
  1. Localize a pasta de instalação do PostgreSQL (c:\Arquivos de Programas\PostgreSQL\9.0\bin) especificamente a basta bin, dentro dela está localizado o executável pg_dump.exe que fará a exportação (dump).
  2.  Digite o comando: pg_dump.exe --host localhost --port 5432 --username postgres --format tar --file c:\nome_arquivo_que_sera_gerado.backup ManagerEDoc
O comando é auto explicativo, porém vamos ver em mais detalhes:
  --host localhost : define o local onde o banco se encontra, pode ser localmente ou externamente em outra rede.
  --port 5432 : é definida a porta utilizada, nesse caso a padrão postgres 5432.
  --username postgres : define qual é o usuário utilizado na comunicação.
  --format tar : o tipo de compressão do arquivo gerado.
  --file nomedoarquivo.backup : define com qual nome e caminho completo do arquivo que será gerado.
  ManagerEDoc : por último vai o nome do banco que se estará exportando, atenção neste ponto, pois é case sensitive, ou seja ele considera letras maiúsculas e minúsculas.
  1. Pronto, basta executar o comando e verificar se o arquivo exportado, está conforme definido no nome do arquivo.
Como fazer o restore binário do banco postgres
Através do prompt de comando:
  1. Localize a pasta de instalação do PostgreSQL (c:\Arquivos de Programas\PostgreSQL\9.0\bin) especificamente a basta bin, dentro dela está localizado o executável pg_restore.exe que fará o restore.
  2. Digite o comando: pg_restore.exe --host localhost --port 5432 --username postgres --dbname ManagerEDoc c:\nome_arquivo_exportado.backup
O comando é auto explicativo, porém vamos ver em mais detalhes:
  --host localhost : define o local onde o banco se encontra, pode ser localmente ou externamente em outra rede.
  --port 5432 : é definida a porta utilizada, nesse caso a padrão postgres 5432.
  --username postgres : define qual é o usuário utilizado na comunicação.
  --dbname ManagerEDoc : o nome do banco que se estará exportando, atenção neste ponto, pois é case sensitive, ou seja ele considera letras maiúsculas e minúsculas.
  por último, vai o caminho completo do arquivo que deseja restaurar.
  1. Pronto, basta executar o comando e verificar se o banco foi restaurado com sucesso.
Como realizar a exportação do sql de um banco com inserts
Este modo de dump, é arriscado pois muitas tabelas possuem relacionamentos, handles e sequences em andamento o que pode comprometer inserir em um novo banco de dados, porém pode ser útil em determinado momento. 
Ele consiste em fazer o dump de uma tabela em específico, segue abaixo um exemplo do comando.
1 - Localize a pasta de instalação do PostgreSQL (c:\Arquivos de Programas\PostgreSQL\9.0\bin) especificamente a basta bin, dentro dela está localizado o executável pg_dump.exe que fará a exportação (dump).  
2 - Estando lá, basta executar o seguinte comando:
    pg_dump.exe --host localhost --port 5432 --username postgres --format plain --data-only --inserts --column-inserts  --table "public.\"TspdNFCe\"" --file c:\TspdNFCe.sql ManagerEDoc
O TspdNFCe se refere à qual tabela será feito dump
3 - Feito isso, será gerado o arquivo com todos os inserts da tabela solicitada, conforme definido.

Nenhum comentário:

Postar um comentário