PostgreSQL - Dump
Exportando e restaurando uma base de dados PostgreSQL
O que é o Processo de Dump de uma base de dados?
Segundo a documentação do próprio Postgres:
"O dump é um método utilizado para gerar um arquivo com
comandos SQL que, quando executados novamente no
servidor, permitam recriar a base de dados com o mesmo
estado que tinha no momento do dump."
https://www.postgresql.org/docs/10/static/backup-dump.h
tml
O Postgres dispõe um utilitário, o pg_dump e a forma
mais simples de executá-lo é:
pg_dump base > arquivo.sql
Isso fará com que o pg_dump acesse a "base" determinada
e gere os comandos sql dentro do "arquivo.sql"
E como posso fazer o DUMP ?
E PARA RECUPERAR
como devo proceder ?
De posse do arquivo SQL gerado pelo Dump, primeiro
crie a base de dados:
postgres=# CREATE DATABASE minhabase;
Existe mais de uma forma de restaurar uma base,
mas serão apresentadas apenas duas, considerando
que o arquivo se encontra no mesmo diretório onde
será executado o comando:
1a. Dentro da base
minhabase=# i arquivo.sql
2a. Pela linha de comando usando o psql
psql -h127.0.0.1 -Uusuario minhabase < arquivo.sql
ATENÇÃO
Em alguns casos a conexão de banco
de dados exige informar o usuário da
base e o servidor ao qual deseja se
conectar.
Para isso é necessário o uso dos
atributos:
-h <endereço_servidor>
-U <usuário>
Por exemplo, usando o usuário
'postgres' no servidor '127.0.0.1'
psql -Upostgres -h 127.0.0.1
pg_dump -Upostgres -h 127.0.0.1
Demonstração - Dump e Restore
Momento 1 - Fazendo o dump
Momento 2 - Restaurando a base em um servidor novo
Atributos do
comando pg_dump
O comando pg_dump tem diversos atributos,
porém os mais comuns são:
Atributos de conexão:
-h, --host=MÁQUINA endereço do servidor
-p, --port=PORTA porta do servidor
-U, --username=USUÁRIO usuário do banco
Opções gerais:
-f, --file=ARQUIVO nome do arquivo ou
diretório de saída
-F, --format=c|d|t|p formato do arquivo de
saída (personalizado, diretório, tar, texto)
Para mais atributos execute pg_dump --help
ATENÇÃO
Tome muito cuidado para não
confundir o DUMP com o processo de
Backup.
O Dump sim pode ser considerado uma
parte da estratégia de backup da sua
base de dados.
Mais informações na matéria "Dump
não é Backup" -
http://www.savepoint.blog.br/2010/05
/06/dump-nao-e-backup/

PostgreSQL Dump e Restor - O básico

  • 1.
    PostgreSQL - Dump Exportandoe restaurando uma base de dados PostgreSQL
  • 2.
    O que éo Processo de Dump de uma base de dados? Segundo a documentação do próprio Postgres: "O dump é um método utilizado para gerar um arquivo com comandos SQL que, quando executados novamente no servidor, permitam recriar a base de dados com o mesmo estado que tinha no momento do dump." https://www.postgresql.org/docs/10/static/backup-dump.h tml
  • 3.
    O Postgres dispõeum utilitário, o pg_dump e a forma mais simples de executá-lo é: pg_dump base > arquivo.sql Isso fará com que o pg_dump acesse a "base" determinada e gere os comandos sql dentro do "arquivo.sql" E como posso fazer o DUMP ?
  • 4.
    E PARA RECUPERAR comodevo proceder ? De posse do arquivo SQL gerado pelo Dump, primeiro crie a base de dados: postgres=# CREATE DATABASE minhabase; Existe mais de uma forma de restaurar uma base, mas serão apresentadas apenas duas, considerando que o arquivo se encontra no mesmo diretório onde será executado o comando: 1a. Dentro da base minhabase=# i arquivo.sql 2a. Pela linha de comando usando o psql psql -h127.0.0.1 -Uusuario minhabase < arquivo.sql
  • 5.
    ATENÇÃO Em alguns casosa conexão de banco de dados exige informar o usuário da base e o servidor ao qual deseja se conectar. Para isso é necessário o uso dos atributos: -h <endereço_servidor> -U <usuário> Por exemplo, usando o usuário 'postgres' no servidor '127.0.0.1' psql -Upostgres -h 127.0.0.1 pg_dump -Upostgres -h 127.0.0.1
  • 6.
    Demonstração - Dumpe Restore Momento 1 - Fazendo o dump Momento 2 - Restaurando a base em um servidor novo
  • 7.
    Atributos do comando pg_dump Ocomando pg_dump tem diversos atributos, porém os mais comuns são: Atributos de conexão: -h, --host=MÁQUINA endereço do servidor -p, --port=PORTA porta do servidor -U, --username=USUÁRIO usuário do banco Opções gerais: -f, --file=ARQUIVO nome do arquivo ou diretório de saída -F, --format=c|d|t|p formato do arquivo de saída (personalizado, diretório, tar, texto) Para mais atributos execute pg_dump --help
  • 8.
    ATENÇÃO Tome muito cuidadopara não confundir o DUMP com o processo de Backup. O Dump sim pode ser considerado uma parte da estratégia de backup da sua base de dados. Mais informações na matéria "Dump não é Backup" - http://www.savepoint.blog.br/2010/05 /06/dump-nao-e-backup/