Translate

Pesquisar este blog

terça-feira, 7 de outubro de 2014

Fazendo backup do PostgreSQL

O PostgreSQL é conhecido por sua facilidade de fazer backups.
Ao contrário do MyIsam do MySQL, ele é capaz de fazer o dump sem bloquear as tabelas. E de versões antigas do Firebird,  o backup não costuma sair corrompido.

ATENÇÃO: O dump do banco só deve ser feito se os dados não forem críticos demais e o volume dos dados não for alto demais. Caso contrário deve-se fazer um backup contínuo, que é mais seguro.


1-)Fazendo um dump da database.
O dump  pode ser gerado em formato custom, tar ou plain (SQL).

Chama-se o utilitário pg_dump , ou o PgAdmin3 para fazer o dump.

# pg_dump -b -h myhost -U myuser mydatabase > mybackup.backup
Existem outras opções, por isso pode ser preciso chamar pg_dump --help.


2-)Restaurando o backup:

2.1-)Para um backup em texto:
# cat /mnt/backup/backup.sql|psql -U myuser -h myhost mydatabase

2.2-)Para um backup custom, é necessário descompactar o backup com o comando pg_restore primeiro:
# pg_restore /mnt/backup/backup.backup|psql -U myuser -h myhost mydatabase