Backup
O backup é uma das coisas mais importantes que deve ser realizada de forma periódica, assegurando que, em caso de falha, o risco de perda de dados seja minimizado.
O comando de backup no PostgreSQL em um servidor Linux é:
pg_dump -Fc tmprd -v -U postgres > tmprd_backup.dump
O pg_dump é um utilitário para fazer cópias de segurança de um banco de dados do PostgreSQL. São feitas cópias de segurança consistentes, mesmo que o banco de dados esteja sendo utilizado ao mesmo tempo. O pg_dump não bloqueia os outros usuários que estão acessando o banco de dados (realizando operações de leitura ou escrita).
O comando acima irá realizar o backup na unidade que você estiver logado no Sistema Operacional. É recomendada a criação de uma unidade separada do banco de dados e sistema operacional, e que possua backup externo configurado, garantindo, assim, um backup fora do servidor de banco de dados.
Opções utilizadas:
-F formato --format=formato c | Gera um arquivo personalizado adequado para servir de entrada para o pg_restore. Este é o formato mais flexível porque permite a reordenação da restauração dos dados, assim como das definições dos objetos. Além disso, este formato é comprimido por padrão. |
-v --verbose | Especifica o modo "verboso", que faz o pg_dump colocar comentários detalhados sobre os objetos e os tempos de início/fim no arquivo de cópia de segurança, além de mensagens de progresso na saída de erro padrão. |
-U nome_do_usuário | Conectar-se como o usuário especificado. |
Restore
Tão importante quanto realizar o backup é realizar o restore de forma satisfatória.
Segue o comando de restore no PostgreSQL:
pg_restore -d p12hml -v -c -U p12hml < tmprd_backup.dump
Onde temos pg_restore, que é o comando solicitando o restore do arquivo: “tmprd_backup.dump”.
-d = dbname | Esse é o banco de dados onde deve ser restaurado o backup. |
-v = verbose | Especifica o modo verbose. |
-c = clean | Limpar os objetos do banco de dados antes de recriá-lo. |
-U = Username | Usuário para a conexão no banco de dados. |
O comando acima irá realizar o restore. Se você estiver na unidade do Sistema Operacional em que o arquivo se encontra, indicamos a criação de uma unidade separada do banco de dados e sistema operacional, e que possua backup externo configurado, garantindo, assim, um backup fora do servidor de banco de dados.
Links de referência: