Sunucu yedekleme stratejisi: neyi, nereye, ne sıklıkla?
Yedekleme, yapıldığı gün değil geri yüklemenin denendiği gün var olmaya başlar. Denenmemiş bir yedek yedek değildir; bir varsayımdır.
3-2-1 kuralı
Kırk yıllık ve hâlâ geçerli:
- 3 kopya (asıl veri + 2 yedek)
- 2 farklı ortam
- 1 kopya fiziksel olarak başka yerde
Oyun sunucusu ölçeğinde pratik karşılığı: sunucuda yerel yedek + başka bir sunucuda veya nesne depolamada uzak yedek.
Aynı makinede tutulan yedek yedek değildir
En sık yapılan hata budur. Aynı diskte duran yedek şu senaryolarda işe yaramaz: disk arızası, dosya sistemi bozulması, yanlışlıkla silinen dizin (yedek de aynı dizinde), fidye yazılımı.
Yerel yedek yalnızca hızlı geri dönüş içindir — yanlış bir yapılandırma değişikliğini beş dakikada geri almak gibi. Gerçek koruma uzak kopyadadır.
Neyi yedeklemeli?
| Oyun / sistem | Kritik veri |
|---|---|
| FiveM / RedM | MySQL veritabanı + resources/ + server.cfg |
| Minecraft | Dünya klasörleri + eklenti yapılandırmaları |
| Rust | server/<identity>/ altındaki kayıtlar |
| Metin2 | account, player, common veritabanları + CONFIG |
| Knight Online / Silkroad | MSSQL veri ve log dosyaları |
| Web hosting | Veritabanı + httpdocs + e-posta |
Veritabanı için dosya kopyalamak yeterli değildir. Çalışan bir MySQL'in dosyalarını kopyalamak tutarsız bir kopya üretir; mysqldump veya tutarlı snapshot gerekir:
mysqldump --single-transaction --quick \
-u kullanici -p veritabani | gzip > yedek-$(date +%F).sql.gz--single-transaction kilit almadan tutarlı kopya alır — canlı sunucuyu durdurmadan yedek alabilmenin yolu budur.
Ne sıklıkla?
Sorunun cevabı tek bir soruyla bulunur: kaç saatlik veri kaybını kabul edebilirsiniz? Yedek sıklığı bu sayıdır, daha azı değil.
- Aktif roleplay sunucusu: 6 saatte bir veritabanı, günde bir tam yedek
- Minecraft/Rust topluluk sunucusu: günde bir
- Web sitesi: günde bir, büyük değişiklikten önce elle bir tane
- Statik içerik: haftada bir
Saklama süresi
Yalnızca en son yedeği tutmak tehlikelidir: bozulma fark edilmeden bir hafta geçerse elinizde yalnızca bozuk kopya kalır. Basit ve yeterli bir düzen: 7 günlük + 4 haftalık + 3 aylık.
Geri yükleme testi
Bu adım atlandığı için yedekler çalışmıyor. Ayda bir:
- Yedeği başka bir dizine (veya test sunucusuna) açın
- Veritabanını geri yükleyip satır sayısını sayın
- Dünya kaydını yükleyip sunucunun açıldığını görün
Test edilmemiş bir yedeğe güvenmek, hiç yedek almamaktan daha kötüdür — çünkü yanlış bir güven yaratır.
Otomatikleştirme
Elle alınan yedek, alınmayan yedektir. systemd zamanlayıcısı veya cron ile otomatikleştirin ve başarısızlık durumunda bildirim kurun. Sessizce çalışmayan bir yedek görevi, aylar sonra fark edilir.
Datafex'te durum
Hizmet detayında snapshot alma seçeneği bulunur ve sipariş sırasında snapshot yedeği eklenebilir. Ama sunucu içindeki uygulama verisinin yedeği sizin sorumluluğunuzdadır — snapshot makinenin tamamının fotoğrafıdır, veritabanı tutarlılığını garanti etmez.