mongodump/mongorestore ile arşiv yedeği al ve tek koleksiyonu geri yükle
MongoDBYedeklemeKomut
# Tek veritabani, sikistirilmis tek arsiv dosyasi (sifre sorulur):
mongodump --uri="mongodb://admin@mongo1:27017/?authSource=admin" --db=shop --gzip --archive=/backup/shop_$(date +%F).archive.gz
# Arsivi baska isimle geri yuklemeden once kuru calistirma:
mongorestore --uri="mongodb://admin@mongo1:27017/?authSource=admin" --gzip --archive=/backup/shop_2026-10-08.archive.gz --nsFrom="shop.*" --nsTo="shop_restore.*" --dryRun
# Arsivden tek koleksiyonu yeni isimle geri yukle:
mongorestore --uri="mongodb://admin@mongo1:27017/?authSource=admin" --gzip --archive=/backup/shop_2026-10-08.archive.gz --nsInclude="shop.musteri" --nsFrom="shop.*" --nsTo="shop_restore.*" --numInsertionWorkersPerCollection=4
# Ayni isimle, mevcut koleksiyonu silerek geri yukle:
mongorestore --uri="mongodb://admin@mongo1:27017/?authSource=admin" --gzip --archive=/backup/shop_2026-10-08.archive.gz --nsInclude="shop.musteri" --dropNe yapar?
Bir veritabanını tek bir gzip arşiv dosyasına yedekler; arşivden tüm veritabanını veya tek bir koleksiyonu, isterse farklı bir isim altında (nsFrom/nsTo) geri yükler.
Ne zaman kullanılır?
Mantıksal yedek, ortamlar arası veri taşıma veya yanlışlıkla silinen/bozulan tek bir koleksiyonu kurtarma ihtiyacında.
Dikkat
mongodump mantıksal yedektir: büyük veri setlerinde yavaştır ve index'ler restore sırasında yeniden build edilir. --oplog olmadan alınan dump, çalışan bir sistemde nokta-zaman tutarlı değildir. --drop hedef koleksiyonu restore başlamadan siler; önce nsTo ile farklı isme yükleyip doğrula. Restore yükü primary'ye yazar ve replication lag yaratabilir.