Agendando Backup do PostgreSQL no Windows
Dicas, PostgreSQL, Windows Janeiro 26th. 2008, 2:24pmEstava precisando agendar uma rotina de backup para o PostgreSQL no Windows. Depois de algum tempo pesquisando em forums e alguns blogs, vou postar aqui um passo a passo para uma solução bem rápida e simples.
Criando o arquivo:
Crie um arquivo de lote chamado “rotina_backup.bat” e insira os seguintes comandos:
@echo off
for /f “tokens=1,2,3,4 delims=/ ” %%a in (’DATE /T’) do set hoje=%%b%%c%%d
CD “C:\Arquivos de programas\PostgreSQL\8.1\bin\”
pg_dump -U postgres meu_database > C:\bck_%hoje%.backup
exit
Você deve ter algumas preocupações com o arquivo de lote. A primeira delas é informar onde o arquivo de backup será salvo. Se você deixar o arquivo de lote como está ele criará o backup com seu nome sendo composto pela data atual no diretório “C:” ficando como o seguinte exemplo: “C:\bck_26012008.backup”.
A segunda preocupação é garantir que o arquivo de lote acesse o diretório correto do executável de dump. Se você durante a instalação usou o diretório padrão ele é o seguinte: “C:\Arquivos de programas\PostgreSQL\8.1\bin\”.
Criando a tarefa agendada:
Clique no botão Iniciar - Programas - Acessórios - Ferramentas do sistema - Tarefas agendadas e crie um agendamento para este arquivo de lote.
Caso tenha alguma dúvida de como criar uma tarefa agendada, Clique aqui.
Junho 6th, 2008 at 19:03
Olá,
Eu segui o seu tutorial, porém ele pediu a senha quando eu executo o comando:
pg_dump -U postgres meu_database > C:\bck_%hoje%.backup
você tem alguma idéia de como resolver?
Junho 8th, 2008 at 0:33
Olá Marcos,
você pode editar o arquivo pg_hba.conf e edite a linha abaixo:
host all all 127.0.0.1/32 md5
Mude o md5 por trust e a senha não sera solicitada novamente.
Agosto 13th, 2008 at 16:45
Boa tarde, por acaso voce sabe como eu coloco a hora do backup no arquivo gerado pelo backup?
Faço 2 backups por dia e dessa forma vai sobrepor, não é?