Tüm Dbleri yedeklemek

August 7th, 2009

Bugün bir bash Script sunacagim, bir serverdeki tüm db leri teker teker yedekleye bilmek icin.

CODE:
  1. #!/bin/bash
  2. echo "Save all db's:"
  3. DBASELIST=`mktemp`
  4. # tüm db lerin isimleri ni topla
  5. # sifreburaya yazan yere root sifrenizi girin (script de iki kez kullaniliyor)
  6. mysqlshow -sifreburaya | awk '{print $2}' | grep -v Databases | sort>$DBASELIST
  7. #Backup hagi klasör icine yüklensin
  8. cd /data
  9. mkdir -p `date +%Y%m%W`
  10. cd `date +%Y%m%W`
  11. for x in `cat $DBASELIST`; do
  12.     echo "Db: $x yedekleniyor";
  13.     mysqldump --opt -psifreburaya $x>$x.sql;
  14. done;
  15. echo "Eski .gz-dosyalarini sil"
  16. rm *.gz
  17. echo "dosyalari SIKISTIR:"
  18. gzip *

bukadar bunu linux makinanida herhangi bir yere yükleyin dosyayi .sh diye kayit edin ardindan
chmod 777 dosya.sh

elden calistirmak icin
sh dosya.sh

cronjob olarakda calistira bilirsiniz.
kolay gelsin

Categories: Linux, Veritabani

Tags: , Leave a comment

Comments Feed2 Comments

  1. Gökçe YALÇIN

    fakat şöyle bir şey var:
    mysqldump –all-databases

    Bir de böyle bir sql dosyasından, veritabanlarını tek tek alma işi arada gerekebiliyor:

    http://www.gokceyalcin.com/mysql-dump-dosyasindan-teker-teker-dbleri-cikartma

  2. Skorp

    mysqldump –all da sorun iste yazinda belirttigin gibi dosya cok sise bilior sonra ayikla pirincin tasini:) ama vermis oldugun yöntem bu sorunu yasiyanlara güzel bir (en iyi) cözüm.
    yinede ben dbleri tek tke kayit etmeye devam:)
    sagol

Leave a comment

You must be logged in to post a comment.

Feed

http://www.skorp.eu / Tüm Dbleri yedeklemek