![]() |
![]() |
EnderUNIX İpucuArkadaşıma gönder , Ana Sayfa[ PostgreSQL ] "PgSQL için yedekleme scripti" - Cavit Keskin - (2005-09-17 10:34:33) [3142] Aşağıdaki scripi başıma gelen kötü bir hadiseden sonra yazmıştım. Aslında yedekleme yaparken "hangileri yedeklenecek" yerine "hangileri yedeklenmeyecek" diye sormak daha önemli. Bu script yedeklenmesini istemedikleriniz hariç bütün databaseinizi ayrı ayrı yedekliyor. #!/bin/sh DESTDIR=/mnt/hd/yedek/pgsql/ PSQL=/usr/local/pgsql/bin/psql PGDUMP=/usr/local/pgsql/bin/pg_dump GZIP=/bin/gzip MKDIR=/bin/mkdir CHMOD=/bin/chmod #TARIH=$(date +%Y.%m.%d_%H%M) TARIH=$(date +%Y.%m.%d) echo "Yedekleme Tarihi : " $TARIH $PSQL -A -q -t -c "select datname,datdba,encoding from pg_database order by datname" template1 -U postgres | grep '|' | tr '|' ' ' | \ grep -v '^template0 ' | grep -v '^template1 ' |grep -v '^deneme ' | grep -v '^test ' |\ while read DATABASE DBUSERID ENCODING do #echo $DATABASE $DBUSERNAME $ENCODING $TARIH #FILENAME=$DATABASE.$TARIH.sql.gz if [ ! -d $DESTDIR$TARIH ] then $MKDIR -p $DESTDIR$TARIH $CHMOD 777 $DESTDIR$TARIH fi echo $DATABASE " yedekleniyor..." $PGDUMP -C $DATABASE -U postgres | $GZIP > $DESTDIR$TARIH/$DATABASE.data.gz #$CHMOD 666 $DESTDIR$TARIH/$DATABASE.data.gz $PGDUMP -csd $DATABASE -U postgres | $GZIP > $DESTDIR$TARIH/$DATABASE.sema.gz done echo "Yedekleme tamamlandi." exit 0 Arkadaşıma gönder , Ana Sayfa |
|