Bu görevi otomatikleştirmenin en kolay yolu MySQL Dökümleri ve bir cronjob kombinasyonu olacaktır. Bu konuda ve diğer internet sitelerinde bu konuda birçok bilgi bulabilirsiniz, ancak tamamlama uğruna:
Mysqldump.sh dosyası oluşturma
Bir cron işinde zamanlayacağımız mysql dökümü komutunu içerir (ortamınıza uyacak şekilde kullanıcı, şifre ve yolu değiştirin):
mysqldump -u root -p<mysql_root_password> --all-databases | gzip > /desired/backup/folder/mysqldb_`date +%F`.sql.gz
Düzenleme: Betiğin yedeklemeyi uzak bir yerde saklamasını istiyorsanız, karşılık gelen aygıtı bağlamanız veya betiğin bağlama yolunu paylaşmanız ve kullanmanız yeterlidir.
Komut dosyasını test edin
Komut dosyasının yürütme izinlerine sahip olduğundan emin olun:
chmod +x /path/to/mysqldump.sh
Komut dosyasını yürütün:
sh /path/to/mysqldump.sh
Ve düzgün çalıştığını test edin (Yedekleme dosyası belirtilen yedekleme klasöründe oluşturulacaktır).
Yeni bir cron işi oluşturma ve planlama
Komut istemine şunu yazın
sudo crontab -e
Ve aşağıdaki satırı dosyanın altına ekleyin:
30 23 * * * /path/to/mysqldump.sh
Bu komut dosyasını her gün 23: 30'da çalıştıracaktır.
Bu basit komut dosyasını genişlet
Bu basit yedekleme yöntemini geliştirmek için yapabileceğiniz birçok şey var:
- Başka bir sisteme yedekleme
- Disk alanını izleyin
- E-posta raporlaması
- ...
Yani burada bitmiyor ve deney yapmayın! :-)
Yedekleme araçlarını veya bulut tabanlı yedekleme hizmetlerini kullanın
Yukarıdaki yöntem en kolay yöntemlerden biri olmasına rağmen ve özel ihtiyaçlarınıza uyacak şekilde genişletilebilse de, başka alternatifler olduğunu belirtmek gerekir:
- Yedeklemelerinizin E-posta bildirimi, sıkıştırma, şifreleme, döndürme ve türünü (örn. artımlı) yapılandırma işlemini kolaylaştırabilecek açık kaynaklı bir uygulama olan AutoMySQLBackup gibi yedekleme araçları. Mai 2018'e gelince, APunt aracılığıyla Ubuntu Sunucusu için kullanılabilir.
- birkaç veritabanı sunucusunu yönetiyorsanız ve tüm yedeklemelerini merkezi olarak yönetmek istiyorsanız ilginç olabilecek, BackupBird, myRepono, Bitcan vb. bulut tabanlı yedekleme hizmetleri.
Lütfen yukarıda belirtilen çözümlerin ve hizmetlerin hiçbiriyle ilgili olmadığımı ve bunları yalnızca referans olarak listelediğimi unutmayın, bu yüzden bunları kendi sorumluluğunuzda kullanın.
Yararlı Linkler / Referanslar:
Cron -> https://en.wikipedia.org/wiki/Cron
MySQL Dökümü -> https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html
date +%F
- otomatik olarak kullanıcının yerel ayarına uygun yıl + ay + tarih kombinasyonunu seçer (örneğin, alacağımYYYY-MM-DD
).