Agendando Backup do PostgreSQL no Windows

5 Comments

Estava 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.

Compartilhe
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • DZone
  • LinkedIn
  • Live
  • MySpace
  • RSS
  • email
  • FriendFeed
  • Twitter

5 comentários (+add yours?)

  1. Marcos Sousa
    Jun 06, 2008 @ 19:03:04

    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?

  2. igocoelho
    Jun 08, 2008 @ 00:33:18

    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.

  3. André
    Aug 13, 2008 @ 16:45:08

    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 é?

  4. Carlos Jr
    Sep 21, 2009 @ 09:32:43

    Ola Marco, muito legal, funcionou, agora vc poderia mostrar o inverso, para quando ocorrer um erro (espero que nao) e eu poder restaurar o backup

  5. Zanolla
    Dec 17, 2009 @ 13:54:20

    Parceiro o seguinte…

    o laço for da data esta finalizando o meu .bat …

    oq faço?

Leave a Reply