From: | Devrim GÜNDÜZ <devrim(at)gunduz(dot)org> |
---|---|
To: | Can Şirin <sirincan(at)itu(dot)edu(dot)tr> |
Cc: | 'Postgre Bulten' <pgsql-tr-genel(at)postgresql(dot)org> |
Subject: | Re: Yedekleme Planlaması |
Date: | 2013-05-17 10:09:32 |
Message-ID: | 1368785372.5368.6.camel@lenovo01-laptop03.gunduz.org |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-tr-genel |
Merhaba,
On Tue, 2013-05-14 at 16:21 +0300, Can Şirin wrote:
<...>
>
> Ya da en azından pitr için yedekleme planlamasının nasıl yapılacağı
> konusunda temel mantık nedir ve varsa tecrübelerinizden örnekler verebilir
> misiniz.
Sana geçenlerde bir müşteriye yazdığım scriptin 2 bölümünü yazayım.
Değişkenler zaten kendi kendini açıklıyor. Bu mantığı seversen scripting
geri kalanını yazabilirsin:
===============================================================================
take_base_backup()
{
# Use pg_basebackup to take base backups -- it avoids extra manual steps.
# Check whether pg_basebackup binary exists or not:
[ -f "$PGINSTDIR/pg_basebackup" ] || do_error_check "pg_basebackup binary is not found! Exiting.";
# Create backup directory
mkdir -p $ARCHIVEDIR/$BACKUPDATE
# Now run pg_basebackup. We use -Ft as default, otherwise script will fail
# if it is run on the same machine where the PostgreSQL.
# We also prefer to run spreaded checkpoints, rather than fast ones, to
# avoid performance issues.
# Finally, gzip is used to compress the data.
echo "Starting taking base backup"
$PGINSTDIR/pg_basebackup -D $ARCHIVEDIR/$BACKUPDATE -P -Ft -x -z -Z9 -c spread -l $HOSTNAME -h $PGHOSTNAME -p $PORT -U $BACKUPUSER > "$BASEBACKUPLOG" 2>&1 < /dev/null
do_error_check "Error taking base backup!";
print_success "Base backup is taken successfully";
}
# Func: Remove old backups
remove_old_backups()
{
if [ ! -d "$ARCHIVEDIR" ] || [ ! -d "$XLOGARCHIVEDIR" ]
then
do_error_check "Base backup directory and/or xlog archive directory does not exist!";
fi
echo "Starting to purge data that is more than $BACKUPKEEPDAYS days old"
find $ARCHIVEDIR/ -mtime +$BACKUPKEEPDAYS -exec /bin/rm -rf {} \;
find $XLOGARCHIVEDIR/ -mtime +$BACKUPKEEPDAYS -exec /bin/rm -rf {} \;
echo "Old data purged"
echo
}
===============================================================================
İyi çalışmalar,
--
Devrim GÜNDÜZ
Principal Systems Engineer @ EnterpriseDB: http://www.enterprisedb.com
PostgreSQL Danışmanı/Consultant, Red Hat Certified Engineer
Community: devrim~PostgreSQL.org, devrim.gunduz~linux.org.tr
http://www.gunduz.org Twitter: http://twitter.com/devrimgunduz
From | Date | Subject | |
---|---|---|---|
Next Message | Uygar UZUNHASAN | 2013-05-17 12:29:30 | Yan: [pgsql-tr-genel] kullanıcı silme |
Previous Message | Devrim GÜNDÜZ | 2013-05-17 10:04:16 | Re: kullanıcı silme |