narbulut

MongoDB Veritabanı Nasıl Yedeklenir?

17 May, 2026

Verileriniz işinizin en değerli varlığı. Bir donanım arızası, yanlışlıkla silinen bir koleksiyon ya da bir fidye yazılımı saldırısı, yıllarca biriktirdiğiniz veriyi saniyeler içinde yok edebilir. MongoDB gibi modern, esnek bir veritabanı kullanıyorsanız, düzenli ve doğru bir yedekleme stratejisi tercih değil, zorunluluktur.

Bu rehberde MongoDB yedeklemenin üç temel yöntemini — basitten gelişmişe — herkesin anlayabileceği bir dille ele alacağız: mantıksal yedekleme (mongodump), fiziksel yedekleme (anlık görüntü / snapshot) ve bulut tabanlı yönetilen yedekleme. Hangisinin size uygun olduğuna karar vermenize de yardımcı olacağız.

Önce Temel Kavramlar

MongoDB’de yedekleme yöntemini seçerken iki şey belirleyicidir: veritabanınızın boyutu ve kurulum tipiniz (tek sunucu, replica set ya da sharded cluster). Küçük bir veritabanı için en basit yöntem yeterliyken, büyük ve dağıtık sistemler farklı yaklaşımlar gerektirir.

Yedekleme yöntemleri kabaca üçe ayrılır:

  • Mantıksal yedekleme: Veriyi okunabilir/taşınabilir bir formata aktarır. Esnek ama büyük verilerde yavaştır.
  • Fiziksel yedekleme: Veritabanı dosyalarının doğrudan kopyasını alır. Çok hızlıdır, büyük veriler için idealdir.
  • Bulut / yönetilen yedekleme: Yedekleme işini bir servise devreder. Kurulum derdi yoktur, otomatiktir.
Önemli bir kural: Hiçbir yöntem tek başına her senaryoya uymaz. Üretim ortamları genellikle birden fazla yöntemi katmanlı olarak birlikte kullanır.

Yöntem 1: mongodump ile Mantıksal Yedekleme

En yaygın ve başlangıç için en uygun yöntem budur. mongodump aracı, çalışan veritabanınıza bağlanır ve veriyi BSON formatında dosyalara aktarır; mongorestore ise bu dosyaları geri yükler. Tüm sunucuyu, tek bir veritabanını veya hatta tek bir koleksiyonu yedekleyebilirsiniz.

Araçların Kurulumu

mongodump ve mongorestore, MongoDB’nin “Database Tools” paketiyle gelir. Resmi MongoDB sitesinden işletim sisteminize uygun sürümü indirip kurabilirsiniz.

MongoDB yedekleme — görsel 2
MongoDB Database Tools paketinin resmi siteden indirilmesi

Temel Yedekleme Komutu

En basit haliyle bir yedek almak için:

mongodump --uri="mongodb://localhost:27017" --out=/yedek/20260608

Komut çalıştığında, belirttiğiniz klasörün altına her veritabanı için ayrı klasörler ve BSON dosyaları oluşur.

Üretim ortamı notu: Yukarıdaki örnek, kimlik doğrulamasız yerel bağlantı içindir. Üretimde kimlik doğrulamalı bağlanın: --username KULLANICI --password PAROLA --authenticationDatabase admin.
MongoDB yedekleme — görsel 3
mongodump komutunun çalışması
MongoDB yedekleme — görsel 4
Yedek klasörünün altında her veritabanı için oluşan BSON dosyaları

Tutarlı Yedek İçin –oplog

Eğer veritabanınız yedekleme sırasında aktif olarak yazma alıyorsa (örneğin bir replica set), yedeğin tutarlı olması için --oplog seçeneğini kullanmanız önerilir. Bu seçenek, yedekleme sürerken gelen değişiklikleri de yakalar ve belirli bir ana geri dönmenizi (point-in-time recovery) sağlar:

mongodump --oplog --gzip --out=/yedek/tam

--gzip ise yedeği sıkıştırarak yerden tasarruf sağlar.

Not: --oplog yalnızca tüm sunucunun (tüm veritabanları) yedeğinde çalışır; tek bir --db ile birlikte kullanılamaz.

Geri Yükleme

Yedeği geri almak için mongorestore kullanılır:

mongorestore --drop --oplogReplay /yedek/tam

--drop, geri yüklemeden önce mevcut koleksiyonları temizleyerek tertemiz bir durum sağlar.

MongoDB yedekleme — görsel 5
mongorestore ile geri yükleme işlemi

Görsel Arayüz Tercih Edenler İçin: MongoDB Compass

Komut satırıyla uğraşmak istemeyenler için MongoDB’nin resmi grafik arayüzü MongoDB Compass, koleksiyonları görsel olarak görmenizi ve verileri JSON formatında dışa aktarmanızı sağlar. Ancak Compass tam bir yedekleme aracı değildir; koleksiyon bazlı bir dışa aktarma sunar (indeksler ve tüm veritabanı yapısı bu export’a dahil olmaz). Gerçek bir yedek için mongodump tercih edilmelidir.

MongoDB yedekleme — görsel 6
MongoDB Compass arayüzünden koleksiyon dışa aktarma
Artıları: Taşınabilir, seçici (tek koleksiyon bile alınabilir), farklı MongoDB sürümleri arasında uyumlu.
Eksileri: Büyük veritabanlarında yavaştır. Aynı veri setinde anlık görüntü yöntemi 3-5 dakika sürerken, mongodump çok daha uzun sürebilir.

Bu yüzden mantıksal yedekleme, küçük ve orta ölçekli kurulumlar için idealdir.

Yöntem 2: Dosya Sistemi Anlık Görüntüleri (Fiziksel Yedekleme)

Veritabanınız büyüdükçe (yüzlerce GB ve üzeri), mongodump yavaş kalır. Burada devreye dosya sistemi anlık görüntüleri (filesystem snapshot) girer. Bu “blok seviyesi” yöntem, MongoDB’nin veri dosyalarını barındıran diskin doğrudan kopyasını sistem araçlarıyla (örneğin Linux’ta LVM) alır.

Anlık görüntüler çok hızlı tamamlanır ve güvenilir çalışır; ancak MongoDB dışında ek sistem yapılandırması gerektirir. Geri yükleme de dakikalar içinde biter — bu yüzden büyük veritabanları için en pratik yöntemdir.

MongoDB yedekleme — görsel 7
Linux LVM ile dosya sistemi anlık görüntüsü (snapshot)

Anlık Görüntüden Geri Yükleme

Bir sorun anında, alınan anlık görüntüyü ana birime geri birleştirerek (merge) veritabanını snapshot alındığı ana döndürebilirsiniz. Linux/LVM ortamında akış üç adımdır:

# 1. MongoDB servisini durdurun
systemctl stop mongod

# 2. Snapshot'ı ana birime geri birleştirin (snapshot alındığı ana dönülür)
lvconvert --merge /dev/vg0/mongo_snap

# 3. MongoDB servisini başlatın
systemctl start mongod
LVM snapshot geri yükleme
lvconvert –merge ile snapshot ana birime geri birleştiriliyor (Merged: %100)
Artıları: Çok hızlı, büyük verilerde verimli.
Eksileri: Kurulum ve yapılandırma bilgisi gerektirir; replica set ve sharded cluster’larda tutarlılık için ek adımlar gerekir.

Yöntem 3: Üçüncü Taraf Yedekleme Araçları

Yedekleme işiyle uğraşmak istemeyen ya da büyük/dağıtık (sharded cluster) kurulumları yöneten ekipler için üçüncü taraf araçlar işi kolaylaştırır.

Kendi altyapınızda kalmak istiyorsanız, Percona Backup for MongoDB (PBM) güçlü bir açık kaynak çözümdür; sıkıştırma, fiziksel yedek ve sharded cluster desteğiyle büyük kurulumlar için uygundur.

Artıları: Açık kaynak ve ücretsiz, otomatik zamanlama, sharded cluster karmaşıklığını sizin için yönetir.
Eksileri: Kurulum ve yapılandırma bilgisi gerektirir; bakımı size aittir.

Hangi Yöntemi Seçmeliyim?

Kısa bir rehber:

  • Küçük veritabanı / tek sunucu: mongodump yeterli ve en kolayı.
  • Büyük veritabanı (yüzlerce GB+): Dosya sistemi anlık görüntüleri.
  • Dağıtık / sharded cluster: Üçüncü taraf araçlar (örneğin PBM).

Yedeklemeyi Otomatikleştirme

Manuel yedekleme er ya da geç unutulur. En sağlıklısı, yedeklemeyi bir zamanlanmış göreve bağlamaktır.

Linux (cron) — her gece 02:00’de:

0 2 * * * mongodump --oplog --gzip --out=/yedek/mongo_$(date +\%F)

Windows (Görev Zamanlayıcı) için örnek .bat dosyası:

@echo off
set TARIH=%date:~-4%-%date:~3,2%-%date:~0,2%
mongodump --uri="mongodb://localhost:27017" --gzip --out=C:\yedek\mongo_%TARIH%

Klasör adına tarih eklendiği için her yedek ayrı tutulur. Bu .bat dosyasını Görev Zamanlayıcı ile her gece belirli bir saatte çalıştırabilirsiniz.

Hangi Yöntemi Seçerseniz Seçin: 5 Altın Kural

  1. 3-2-1 kuralını uygulayın: Verinizin 3 kopyası, 2 farklı depolama türünde, 1 kopya da tesis dışında (offsite) bulunsun.
  2. Yedeğinizi test edin: Hiç geri yüklenmemiş bir yedek, aslında bir varsayımdan ibarettir. Geri yükleme prosedürünüzü düzenli olarak deneyin.
  3. Otomatikleştirin: Elle alınan yedekler insan hatası yüzünden er ya da geç aksar. Zamanlanmış görevlerle otomatikleştirin.
  4. Şifreleyin ve erişimi kısıtlayın: Yedekler, üretim verinizin tam kopyasıdır; aynı güvenlik titizliğiyle korunmalıdır.
  5. Yükü dağıtın: Mümkünse yedeği ana sunucudan değil, replica set’in ikincil (secondary) üyesinden alın.

Yedeklerinizi Güvenle Saklayın: Narbulut

MongoDB yedeklerinizi almak hikâyenin sadece yarısı. Asıl soru şu: Bu yedekleri nerede, ne kadar güvenli saklıyorsunuz? Aynı sunucuda duran bir yedek, sunucu çökerse veriyle birlikte yok olur.

Narbulut‘un bulut yedekleme ve depolama çözümleri, yerel olarak aldığınız MongoDB yedeklerini güvenli, şifreli ve coğrafi olarak ayrı bir bulut ortamında saklamanızı sağlar — yani 3-2-1 kuralındaki o kritik “tesis dışı kopya” işini sizin için çözer. Otomatik yükleme, sürüm takibi ve KVKK uyumlu altyapısıyla, fidye yazılımı ve donanım arızası gibi felaketlerde verileriniz her zaman erişilebilir kalır.

Verilerinizi Doğru Yerde Saklayın

Verilerinizi yedeklemek kadar, o yedekleri doğru yerde saklamak da önemlidir. MongoDB yedeklerinizi güvenli bulut katmanına taşımak için Narbulut ile başlayın, verileriniz güvende olsun.

MongoDB Yedekleme Çözümünü İnceleyin

Yorum Yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Narbulut Ürün Analizi

Adım 1/12
Şirketiniz için hangi alanda teknolojik bir iyileştirme planlıyorsunuz?
Veri Güvenliği ve YedeklemeFidye yazılımları, silinen dosyalar ve felaket kurtarma.
Bulut Sunucu (IaaS)Web sitesi, ERP, CRM veya uygulama barındırma.
Takım İçi İşbirliğiGüvenli dosya paylaşımı ve ofis dışı çalışma.
Nesne Depolama (S3)Yazılımcılar için Object Storage.
Hangi sektörde faaliyet gösteriyorsunuz?
Sağlık / MedikalHasta verileri (KVKK kritik).
Finans / MuhasebeHassas mali veriler.
Üretim / MühendislikCAD çizimleri ve üretim planları.
Diğer / Genel HizmetOfis dokümanları ve genel veriler.
Korunması gereken cihazların türü nedir?
Personel BilgisayarlarıLaptop ve masaüstü son kullanıcı cihazları.
Fiziksel / Sanal SunucularDatabase, Active Directory veya File Server.
Yedekleme stratejiniz nasıl olmalı?
Dosya ve Klasör BazlıSadece önemli iş dosyaları (XLS, PDF, SQL) yedeklensin.
Tam Disk İmajı (Image)İşletim sistemi dahil "Her Şey" yedeklensin.
Buluta yedekleme için Upload hızınız nasıl?
Fiber / Yüksek HızBüyük verileri hızlıca gönderebilirim.
Standart / ADSLHızım sınırlı, sıkıştırma önemli.
Fidye yazılımları (Ransomware) tehdit mi?
Evet, Çok KritikGeçmişte yaşadık veya risk altındayız.
Standart Koruma YeterliTemel yedekleme önlemleri yeterli.
Versiyonları ne kadar saklamak istersiniz?
90
30 - 90 GünYakın tarihli hataları düzeltmek için.
365+
1 Yıl ve ÜzeriYasal zorunluluklar veya arşiv.
Sunucunun birincil görevi ne olacak?
E-Ticaret / Web SitesiYüksek uptime ve hız gerekiyor.
ERP / Muhasebe ProgramıDatabase performansı önemli.
Yazılım GeliştirmeEsnek kaynak yönetimi.
Hangi altyapıya ihtiyacınız var?
Windows ServerASP.NET, MSSQL, RDP.
Linux (Ubuntu/CentOS)PHP, Python, MySQL, Docker.
Tahmini kullanıcı yoğunluğu nedir?
Düşük / OrtaBaşlangıç seviyesi veya yeni proje.
Yüksek TrafikYoğun kampanya veya çok kullanıcı.
Sunucu yönetimini kim yapacak?
Ben YöneteceğimTeknik ekibim var, root yeterli.
Destek İstiyorumManaged Services hizmeti lazım.
Ortak alanda çalışacak kişi sayısı?
1 - 10 KullanıcıKüçük ekipler.
10 - 50+ KullanıcıDepartman bazlı yetki gerekli.
Ofis dışından erişim gerekli mi?
Evet, KesinlikleSaha ekibi cepten dosya yüklemeli.
Hayır, Sadece OfisSadece şirket bilgisayarlarından erişim.
Yanıtlarınız Analiz Ediliyor...
SİZE EN UYGUN ÇÖZÜM

Ürün Başlığı

Açıklama

Ürünü Hemen İncele

Ürün Bilgi Alma Formu

Çözüm uzmanlarımızın size ulaşması için formu doldurunuz.

Size uygun Narbulut Cloud Server planlarına göz atın

Narbulut Cloud Server ile ihtiyaçlarınıza en uygun sunucuları yapılandırın.

    SUNUCU TEKLİF & YAPILANDIRMA FORMU

    1. KURUMSAL KİMLİK & İLETİŞİM
    2. TEKNİK GEREKSİNİMLER
    3. LİSANS YÖNETİMİ

    Check out Narbulut Cloud Server plans that suit you

    Configure the servers that best fit your needs with Narbulut Cloud Server.

      SERVER QUOTE & CONFIGURATION FORM

      1. CORPORATE IDENTITY & CONTACT
      2. TECHNICAL REQUIREMENTS
      3. LICENSE MANAGEMENT

      Narbulut Mobile’ı İndirin

      Uygulamayı indirmek istediğiniz platformu seçin

      Download Narbulut Mobile

      Select the platform you want to download the app

      ×