Pessoal ta ai um shell script que faz o seguinte!
Cada vez que é executado realiza a copia fisica do banco de dados salva em uma 
pasta determinada, e comeca do zero o sistema de backup utilizando wal.
Ele salva os wal files anteriores para caso de algum imprevisto movendo para 
uma pasta

Coloque no cron!

Comentários rápidos!

SAVE_BASE_DIR= onde eu salvo os data files!
PGDATA acho que não precisa comentar!
WAL_DIR onde eu setei no postgresql o archive command
WAL_DIR/wal_anterior diretorio que salva os wals correntes para a constituição 
de novos wal files

Espero que possa ajudar a quem precisar!



#!/bin/bash

#### Diretório de dados do postgresql ######
PGDATA=/data
SAVE_BASE_DIR=/home/postgres/arquivosbase
data=$(date +'%d%m%y')

#### Diretorio setado para o Wal Files no postgresql.conf ####
WAL_DIR=/wallfiles

### A cada novo backup ele remove Diretorio $WAL_DIR/anterior ###
rm  $WAL_DIR/wal_anterior/*

### Move os Wal gerados anterior e salva para caso de falha #####
mv  /$WAL_DIR/* /$WAL_DIR/wal_anterior

export PGPASSWORD="meupassword"
psql -U postgres -h localhost -c 'select pg_start_backup('$data');' template1 
&& \
tar -czvf $SAVE_BASE_DIR/$data.tar.gz $PGDATA && psql -U postgres -h localhost 
-c 'select pg_stop_backup();' template1
unset PGPASSWORD
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a