Anasayfa > Kodlar > Python ile otomatik SQL yedeği almak

Python ile otomatik SQL yedeği almak

Yedek alan betiğimiz de gerekli ayarları yaptıktan sonra sunucu da /etc/cron.daily/ dizinine kopyalayın ve chmod 0755 /etc/cron.daily/dosya_adi.py şeklinde chmod u ayarlayın ve koltuğunuza yaslanın. Artık server her gün bu betiği çalıştırcak ve sql yedeğiniz otomatik olarak belirttiğiniz dizine gzip ile sıkıştırılarak alınmış olucak…

Quote: #!/usr/bin/env python
#-*-coding:utf-8-*-

# Ceviz.Net SQL Dumper v2.0
# Raiden – 2008-12-19

# Tarih, OS ve Time Modulunu Yukle
# ———————————————————— —-
import datetime, os, time

# Dump Edilen SQL Dosyasının Tasinacagi Dizin
# ———————————————————— ————-
dizin = “/root/BACKUP/mysql/”

# MySQL Veritabanı Bilgileri
# ————————————–
user = “root”
passwd = “123456”
dbname = “test”

class cevizBackup:
def __init__(self,dizin,user,passwd,dbname):
self.dizin = dizin
self.user = user
self.passwd = passwd
self.db = dbname
self.bugun = datetime.date.today().strftime(“%Y-%m-%d”)
self.sqlFileName = self.bugun + “.ysfkc.com.sql”

def cevizYedekAl(self):
if os.path.isdir(self.dizin) == False:
print “%s Dizini bulunamadı oluşturuluyor..” % self.dizin
os.mkdir(self.dizin)
else:
os.system(“mysqldump -u%s -p%s %s > %s%s” % (self.user, self.passwd, self.db, self.dizin, self.sqlFileName))
print “%s dizinine %s dosyası yedek olarak alındı” % (self.dizin, self.sqlFileName)
os.system(“gzip %s%s” % (self.dizin, self.sqlFileName))
print “%s dosyası gzip ile sıkıştırılarak boyutu küçültülüyor…” % self.sqlFileName

# Gecmis Dosyalar Silinerek Son Iki Gun Bırakılıyor
# ———————————————————— ———————–
def dosyaSil(self):
for dosya in os.listdir(self.dizin):
if os.stat(self.dizin + dosya).st_ctime < (time.time()-86400):
os.remove(self.dizin + dosya)

yedek = cevizBackup(dizin,user,passwd,dbname)
yedek.dosyaSil()
yedek.cevizYedekAl()


Yazar : Raiden

Kategoriler:Kodlar Etiketler:, , , , , ,
  1. Henüz yorum yapılmamış.
  1. 24/07/2015, 12:38

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: