Bölüm 7: Veri Karşılaştırma ve Senkronizasyon
Bilgi: Bu bölüm; iki veritabanındaki verinin satır bazında karşılaştırılmasını, etki analizi raporlarını, throttle gecikmesini, onaylı kararları ve yapılandırılmış yedekleme/rollback güvencesini açıklar.
Bu bölümde:
- 7.1 Satır Bazında Veri Karşılaştırma
- 7.2 Uçuş Öncesi Etki Analizi Raporu
- 7.3 Throttle Gecikmesi
- 7.4 Otomatik Veri Yedekleme ve Rollback
- İlgili Konular
7.1 Satır Bazında Veri Karşılaştırma
İki veritabanı arasında veri senkronizasyonu yapmak, önceden her satır için bir karar gerektirir. Körlemesine kopyalama, hedefteki veriyi bozabilir.
- Menüden Araçlar → Veriyi Karşılaştır… seçeneğini açın.
- Kaynak ve hedef tabloları eşleştirin (örn.
users → users). - Veriyi Karşılaştır ile satır bazında karşılaştırmayı başlatın. Sonuçlar bir karar tablosunda sunulur:
- 🟢 Eklenecek satırlar (INSERT): Hedefte mevcut olmayan satırlar.
- 🟡 Değiştirilecek satırlar (UPDATE): Aynı kimliğe sahip ama farklı değerlere sahip satırlar.
- 🔴 Hedefteki fazlalık satırlar (DELETE): Kaynakta silinen ama hedefte hâlâ mevcut olan satırlar.
7.2 Uçuş Öncesi Etki Analizi Raporu
Senkronizasyonu uygulamadan önce SQLOZ, hesaplanan değişiklik özetini ve güvenlik kararını gösterir:
Uçuş Öncesi Etki Analizi Raporu: - Eklenecek kayıt: 1.420 (INSERT)
- Güncellenecek kayıt: 85 (UPDATE)
- Silinecek kayıt: 0 (DELETE)
- Toplam değişiklik: 1.505
- Tahmini çalışma süresi: 0,75 sn
Bu değişiklikleri hedef veritabanına uygulamak istediğinizden emin misiniz? [İptal] [Senkronizasyonu Uygula]
7.3 Throttle Gecikmesi
Çok büyük tabloları senkronize ederken ardışık INSERT’ler hedefe yük bindirerek replikasyon gecikmesini artırabilir.
Veri Karşılaştırma araç çubuğundaki Throttle Gecikmesi (ms) alanına bir milisaniye değeri girin (örn. 100 ms). SQLOZ, ani yük artışını ve replikasyon gecikme riskini azaltmak için her chunk transferinden sonra bu süre kadar bekler.
7.4 Otomatik Veri Yedekleme ve Rollback
Hedef ve policy desteklediğinde, veri senkronizasyonu değişiklikler uygulanmadan önce Yedekleme Tablosu (sqloz_bak…) güvencesini kullanabilir. Pencerede gösterilen durumu inceleyin; bir öneri veya devre dışı durum, yedeklemenin oluşturulduğunun kanıtı değildir.
- Yedekleme güvencesi: Etkinleştirilip başarıyla tamamlandığında, hedef tablonun güvenlik yedeği senkronizasyondan önce kaydedilir. Tam yedekleme mekanizması ve eylemin mevcut olup olmadığı, hedef satıcıya ve mevcut policy’ye bağlıdır.
- Veri kurtarma (rollback SQL): Bir rollback betiği mevcut olduğunda, planlanan değişiklikler için satır düzeyinde tersine işlemleri içerir. Diff’e bağlı olarak bu işlemler; hedef tablodaki önceki değerleri geri yükleyen
DELETE,UPDATEveya hedeften kaldırılan satırları geri yükleyenINSERTolabilir. Betik, foreign key bütünlüğü için ters sırada oluşturulur; toplu birINSERT ... SELECTtablo geri yüklemesi değildir.
