Faydalı Bilgiler

Media Temple (mt), Grid Service (gs)’de bulunan Sitenin ve mySQL’in yedeklenmesi

  • 0 Comment
  • 28 Temmuz 2011
About Hakan Demirel

Özel bir şirkette Front-end Developer olarak çalışmakta. Twitter üzerinden @hakandemirel hesabını takip edebilir yada hakandemirel.com adresinden daha fazla bilgi alabilirsiniz.

Social Links

Grid Service (gs), Media Temple (mt) kullanıcılarının genellikle tercih ettiği en ucuz reseller hizmetidir.

Bu hizmeti kullananlar farketmişlerdir (mt)’nin diğer hizmetlerine oranla biraz daha yavaş ve kısıtlıdır. Fakat https://kb.mediatemple.net/ adresini detaylı bir şekilde inceleyecek olursak aslında kısıtlama değil de güvenlik açısından bu şekilde olduğunu ve yetkili bir biçimde nasıl işlem yapacağımızı öğrenmiş oluruz.

Gelelim en büyük külfet olan yedekleme işlemlerinin (mt)’nin (gs) hizmetinde nasıl yapılacağına.

Öncelikle yapmamız gerekn şey;
Account Centre‘a giriş yapmak daha sonra  Server Administrator bölümüne girerek “SSH option:Please enable for SSH access” bölümünü Enable konumuna getirmek.

Bu işlemden sonra bağlantı kurmak için gerekli olan bir SSH arayüzüne ihtiyacımız var bunun içinse Putty‘i kullanabilirsiniz. Putty kullanımı ile ilgili gerekli bilgilerede buradan ulaşabilirsiniz.

Şimdi gelelim SSH üzerinden nasıl yedekleme yapılır.
Web dosyalarınızı yedeklemek için öncelikle SSH ile login olmalısınız. Login olduktan sonra kullanacağınız komut;

cd /home/#####/data

daha sonra burada dosyaları yedekleyeceğiniz bir klasör oluşturmak ve bu klasöre izinler vermelisiniz. Bunun için kullanacağınız komutlar ise;

mkdir sites-backup
chmod sites-backup

Klasörü oluşturduktan sonra kullanılabilir hale getirmek için;

touch sites-backup.sh
chmod +x sites-backup.sh

Daha önce açmış olduğumuz klasörün içine girer aşağıda ki kodu kendinize uyarlayıp komut ekranına yapıştırın ve çalıştırın.

#!/bin/bash
today=$(date '+%d_%m_%y')
echo "* Performing domain backup…"
tar czf /home/#####/data/sites-backup/DOMAIN_"$today".tar.gz -C / home/#####/domains/DOMAIN
# Remove backups older than 7 days:
MaxFileAge=7
find /home/#####/data/sites-backup/ -name '*.gz' -type f -mtime +$MaxFileAge -exec rm -f {} \;
echo "* Backed up…"

Bu basit komut ile oluşturduğunuz klasöre yedekleme işleminiz tarih etkieti ile yerleştirilir ve tar.gz uzantılı bir dosya olarak kaydeder. Ayrıca ayarlamalarınız sayesinde ve gereksiz kirliliğin önüne geçebilmek için yedekleme işlemini 7günden eski olan yedek dosyalarını siler.. Yedek işlemini doğrulamak için panelinizden file maganer yardımı ile onaylayabilirsiniz. Eğer gerekli komutlar elinizde varsa Account Centre’dan cron script kullanarak yedekleme işleminide gerçekleştirebilirsiniz.

Web dosyalarını yedekledikten sonra gelelim mySQL yedeğinin alınmasına.

Bu işlemler içinde kullanacağınız komutlar aşağıda ki gibidir. Komutların hepsini kopyalayıp yine SSH ekranında çalıştırmanız yetecektir. Gerekli bilgileri Server Guide bölümünden de bulabilirsiniz (mysql kullanıcı adı, şifre, local bilgileri vb).

#!/bin/sh
#############################
SQLHOST="internal-db.s#####.gridserver.com"
SQLDB="db#####_NAME-OF-DATABASE"
SQLUSER="USERNAME"
SQLPASS="PASSWORD"
SQLFILE="DATABASENAME_$(date '+%d_%m_%y').sql"
LOCALBACKUPDIR="/home/#####/data/db-backup"
#############################
echo "* Performing SQL dump…"
cd $LOCALBACKUPDIR
mysqldump -h $SQLHOST --add-drop-table --user="$SQLUSER" --password="$SQLPASS" $SQLDB > $SQLFILE
# Remove backups older than 7 days:
MaxFileAge=7
find /home/90929/data/db-backup/ -name '*.sql' -type f -mtime +$MaxFileAge -exec rm -f {} \;
echo "* Backed up…"
exit

Bu şekilde mySQL için bir yedekleme dosyası oluşturur ve 7 günden eski olan yedekleri de siler.

Leave a Comment