Ana içeriğe atla

Yedeklemenin Önemi

Yedekleme işlemi, sistem güvenliği ve veri bütünlüğü açısından hayati bir rol oynar:

Veri Kaybını Önleme

Sistem arızası, donanım hatası veya yanlışlıkla yapılan silme işlemlerinde verilerinizi korur.

Hızlı Kurtarma

Olası bir veri kaybı durumunda, yedekten hızlıca geri yükleme yaparak sisteminizi kısa sürede çalışır hale getirebilirsiniz.

Versiyon Kontrolü

Farklı zamanlarda alınan yedekler sayesinde, sisteminizin farklı versiyonlarını saklayabilir ve gerektiğinde geri dönebilirsiniz.

İş Sürekliliği

Kritik sistemlerde iş sürekliliğini sağlar ve olası kesintilerin etkisini minimize eder.

MongoDB Yedekleme İşlemi

Apinizer, Replica Set MongoDB veritabanı ile çalışmaktadır. MongoDB sunucusu üzerinden backup alırken bu duruma dikkat edilmesi gerekmektedir.

Yedekleme Komutu

Aşağıdaki komut kullanılarak MongoDB veritabanı yedeklenebilir:
mongodump
mongodump \
  --host=<PRIMARY_MONGODB_IP> \
  --port=<PRIMARY_MONGODB_PORT> \
  --authenticationDatabase admin \
  --username apinizer \
  --password <MONGO_PASSWORD> \
  --db <DATABASE_NAME> \
  --gzip \
  --archive=/home/apinizer/apinizer-backup--v<CURRENT_VERSION>--<BACKUP_DATE>--01.archive
Parametreler:
ParametreTipZorunluAçıklama
--hoststringEvetPrimary MongoDB sunucusunun IP adresi
--portnumberEvetMongoDB port numarası
--authenticationDatabasestringHayırKimlik doğrulama veritabanı (varsayılan: admin)
--usernamestringEvetMongoDB kullanıcı adı
--passwordstringEvetMongoDB şifresi
--dbstringEvetYedeklenecek veritabanı adı
--gzipbooleanHayırYedek dosyasını sıkıştırır
--archivestringEvetYedek dosyasının kaydedileceği yol ve dosya adı

Yedekleme Dosya İsimlendirmesi

Yedekleme dosya isimlendirmesinde yedeğin alındığı tarih ve Apinizer sürüm bilgisinin kullanılması önerilir.
Önerilen Dosya Adı Formatı: apinizer-backup--v<CURRENT_VERSION>--<BACKUP_DATE>--01.archiveBu format sayesinde:
  • Hangi yedeğin hangi sistem versiyonuna ait olduğu kolayca anlaşılır
  • Geri yükleme işlemlerinde versiyon uyumsuzlukları önlenir
  • Arşivlenen yedeklerin yönetimi kolaylaşır

Koleksiyonları Hariç Tutma

Eğer uygulama logları ya da audit logları gibi yüksek yer kaplayabilecek kısımlar dahil edilmek istenmezse, şu komutla ayrılabilirler:--excludeCollection apinizer_log --excludeCollection audit_eventAncak bu işlem verinin yedeksizliğine yol açacağı için önerilmemektedir.

Yedekleme En İyi Uygulamaları

Düzenli Yedekleme

Yedeklemeleri düzenli aralıklarla (günlük, haftalık) alın

Otomatikleştirme

Yedekleme işlemlerini otomatikleştirin (cron job, scheduled task)

Farklı Konumlarda Saklama

Yedekleri farklı fiziksel konumlarda saklayın

Test Etme

Yedeklerin düzenli olarak geri yükleme testlerini yapın

Versiyon Bilgisi

Yedek dosyalarında mutlaka sürüm bilgisi bulundurun

Güvenlik

Yedek dosyalarını güvenli bir şekilde saklayın ve erişim kontrolü uygulayın

Detaylı Bilgi

Detaylı bilgi için MongoDB dökümantasyonunu inceleyebilirsiniz.