Mysql – Backup to FTP (PHP Script)

Bir mysql sunucusundan mysqldump ile backup alıp ftp üzerinden uzaktaki bir sunucuya gönderen güzel bir php script.

İçeriği aşağıdaki gibi olan bu scripti kendi sisteminize göre düzenledikten sonra cron job olarak tanımlayabilirsiniz. Böylece periyodik olarak alınan backupları istediğiniz bir lokasyonda muhafaza edebilirsiniz.

Gerekenler

PHP
Bir FTP Hesabı
ve son olarak MYSQL

Uygulanışı

1 – Aşağıdaki script içeriğini serverınızda oluşturacağınız backuptoftp.php isimli bir dosyaya kopyalayın.

Yazinin devami icin tiklayin.


Dump Backup

FreeBSD’de dump ile örneğin /var’ın backup’ını almak icin komut şu şekilde.

dump -0L -f '/bla/bla.dump' -a '/var'

Switchler için, man dump.


MSSQL – Dump Transaction

MSSQL Serverdaki bir database’in log dosyasinin ebadi zaman zaman diskte cok buyuk yerler işgal edecek şekilde büyüyebilir. Bu durumda, log dosyasını küçültmek için dump transaction işlemi yapmak gerekebilir.

Ilgili T-Sql cümlesi şu şekilde:

 dump transaction database_ismi with no_log 

Bu komutla, ilgili database’e ait log dosyasinin icindeki commit edilmiş işlem loglarının tümünü siler. Ancak sadece bu işlemi yapmak diskte yer açmaya yeterli değildir. Zira bu işlemden sonra log dosyasının boyutunda herhangi bir değişiklik olmaz. Log dosyasını fiziksel olarak küçültmek için dump komutunu çalıştırdıktan sonra, user interface’den shrink işlemi yapmak gerekir.

Not: Shrink işlemi başarılı olmazsa, Sql servisini restart edip yeniden shrink denemeniz gerekiyor. Servis restart sonrası sorun çıkmayacaktır.