DBAtlas · Veritabanı operasyon atlası

Üyeyi baştan senkronize et (resync)

MongoDBReplica Set

Komut

// Yeniden senkronize edilecek SECONDARY üzerinde (PRIMARY'de ASLA):
db.getSiblingDB("admin").shutdownServer()
// İşletim sisteminde: dbPath içeriğini boşaltın (ya da yedek olarak başka yere taşıyın)
// ve mongod'u aynı yapılandırmayla yeniden başlatın; üye otomatik olarak initial sync başlatır.
// İlerlemeyi izleyin (stateStr: STARTUP2 -> SECONDARY):
rs.status()

Ne yapar?

MongoDB'de ayrı bir resync komutu yoktur; secondary'yi durdurup veri dizinini boşaltarak yeniden başlatmak, primary'den (veya bir sync kaynağından) yeni bir initial sync başlatır.

Ne zaman kullanılır?

Bir üye oplog penceresinin dışına düşecek kadar geride kaldığında (RECOVERING / too stale) veya verisi tutarsız hale geldiğinde.

Dikkat

Üyenin tüm yerel verisi silinip yeniden çekilir; yalnızca secondary'de yapın ve çoğunluğun (majority) ayakta kaldığından emin olun. Senkron süresi ve ağ/disk yükü yüksektir; çok büyük veri setlerinde sağlıklı bir üyenin dosya sistemi snapshot'ından başlatmak daha hızlıdır.

DBAtlas'ta aç →

İlgili