Depois que publiquei o artigo Script de Backup (dump) Postgresql – Múltiplos bancos em arquivos separados, onde por meio de um script shell, é gerados dumps de todos os bancos existentes no servidor, cada banco um arquivo separado e compactado, me perguntaram se era possível, com a mesma idéia fazer um script que ao invés de realizar o dump de todas as bases, fosse possível definir quais bancos seriam backupiados.
Pois bem, é bem simples de fazer isso, vejamos:
[shell]
#!/bin/bash
#
# Um simples script de backup
# Autor: Jonas Ferreira
# db_array – lista dos bancos que se deseja fazer o dump
db_array=”banco1 banco2 banco3 banco4″
# logfile – arquivo que grava o log de cada execucao do script
logfile=”/tmp/pgsql-backup.log”
#Diretorio de destino do arquivos
DIR=/tmp/backup
for db in $db_array
do
/usr/bin/pg_dump $db > “$DIR/$db.sql” 1>> $logfile 2>> $logfile
tar zcvf “$DIR/$db.tgz” “$DIR/$db.sql”
rm -rf “$DIR/$db.sql”
done
[/shell]
Simples assim!
mysqldump is very usefull, but it’s too trouble to learn and enter the commands . I found a good software – Automatic Backup Scheduler for MySQL (http://www.databasethink.com) to manage my databases. I use it to back up and restore my databases.
Hope it helps you.