Oracle GoldenGate günlük işletim ve arıza senaryoları (Microservices 21c / 23ai)
OracleSeviye: İleriSüre: 5 dk (kontrol) – 2 saat (yükseltme, tablo ekleme)Kurulu bir GoldenGate Microservices replikasyonunun günlük işletim ve arıza kurtarma runbook'u (kurulum için GoldenGate kurulum rehberi). Ne yapacağınızdan emin değilseniz 'Sağlık ve gecikme kontrolü' ile başlayın: salt-okur teşhis sizi doğru senaryoya yönlendirir — Extract ve Replicat ABEND (report, discard, OGG-xxxxx hataları), dolu bir tabloyu replikasyona ekleme (tutarlı SCN + AFTERCSN), tablo çıkarma, tek tablo resync, trail temizliği (Purge Trail), Extract'ı SCN'den yeniden konumlandırma, sürüm yükseltme/patch ve kaynak Data Guard switchover/failover sonrası Extract'ın sürdürülmesi. Her senaryo teşhis → güvenlik ağı → uygulama → doğrulama düzenindedir.
Yapı: Kaynak sunucu (kaynak deployment, Integrated Extract, Distribution Path) + hedef sunucu (hedef deployment, Parallel Replicat)
Senaryolar
- Sağlık ve gecikme kontrolü (her şey yolunda mı?) — Salt-okur: Service Manager ve microservice'ler, INFO ALL, lag, STATS, heartbeat gecikmesi, veritabanındaki capture durumu ve ggserr.log; hiçbir şey değişmez. Ne yapacağınızdan emin değilseniz buradan başlayın.
- Extract ABENDED (durdu, hata verdi) — Kaynaktaki Extract ABENDED ya da sürekli yeniden başlıyor: report dosyasındaki OGG-xxxxx hatasına göre neden (bağlantı, eksik arşiv log, log mining, yetki, disk) bulunur, giderilir ve Extract kaldığı yerden başlatılır. Kaynak veritabanı etkilenmez; gecikme birikir.
- Replicat ABENDED (hedefe uygulanamıyor) — Hedefteki Replicat bir transaction'ı uygulayamadı: report ve discard dosyasından tablo, işlem ve hata bulunur; veri düzeltilir ya da geçici REPERROR ile atlanır, Replicat kaldığı yerden başlatılır. Hedef açık kalır; gecikme birikir.
- Replikasyona dolu bir tablo ekle (ilk yükleme + AFTERCSN) — Var olan ve içinde veri olan bir tabloyu çalışan replikasyona kesinti olmadan ekler: ADD TRANDATA, tutarlı SCN ile expdp/impdp ve yalnız bu tablo için bu SCN'den sonrasını uygulayan ayrı bir Replicat (AFTERCSN). Diğer tablolar akmaya devam eder.
- Bir tabloyu replikasyondan çıkar — Tablo artık replike edilmeyecek: Extract'ta TABLEEXCLUDE (ya da TABLE satırını kaldırma), Replicat'ta MAPEXCLUDE, gerekirse DELETE TRANDATA. Süreçler kısa süreli yeniden başlatılır.
- Tek bir tabloyu yeniden eşitle (resync) — Bir tablonun hedefteki verisi kaynakla ayrıştı (elle değişiklik, atlanan hata, eksik ilk yükleme): tablo kaynaktan tutarlı SCN ile yeniden yüklenir ve geçici bir Replicat bu SCN'den sonrasını uygular. Diğer tablolar etkilenmez.
- Trail dosyaları diski dolduruyor: temizlik (Purge Trail) — Trail dizini büyüyor ya da disk dolmak üzere: hangi dosyaların okunduğu görülür, Purge Trail görevi (Classic'teki PURGEOLDEXTRACTS karşılığı) USECHECKPOINTS ile tanımlanır; acil durumda okunmuş dosyalar elle silinir.
- Extract'ı belirli bir SCN'den yeniden konumlandır — Extract'ın baştan almasını istediğiniz bir SCN var (trail kaybı, yanlış başlangıç, hedefte geri dönüş): ALTER EXTRACT … SCN ve ETROLLOVER ile yeni trail dosyasından başlatılır. Hedefe aynı veriler ikinci kez gelebilir.
- GoldenGate sürüm yükseltme / patch (Microservices) — Yeni bir GoldenGate sürümüne ya da patch'e geçiş: out-of-place (yeni home kur, Service Manager ve deployment'ları REST ile yeni home'a al) ya da in-place OPatch. Extract/Replicat kısa süre durur; geri dönüş eski home'a dönmektir.
- Kaynakta Data Guard switchover/failover sonrası Extract'ı sürdür — Kaynak veritabanında switchover ya da failover oldu; Extract yeni primary'ye bağlanıp checkpoint'ten devam etmeli: bağlantı (credential alias/servis), capture durumu, HANDLEDLFAILOVER ve olası veri ayrışması kontrol edilir.
Başlamadan önce
- GoldenGate Microservices kurulum rehberindeki gibi kurulu: kaynakta … deployment'ında Integrated Extract … ve Distribution Path …, hedefte … deployment'ında Parallel Replicat …; credential alias'ları ggsrc/ggsrc_pdb (kaynak) ve ggtgt (hedef).
- Her iki deployment'ın oggadmin parolası elinizde (adımlar sorar; betiklere yazılmaz).… İlk yükleme için iki PDB'de SYSTEM parolası ve kurulumdaki OGG_DP directory'si (…) hazır.…
- Service Manager systemd servisi (OracleGoldenGate) iki sunucuda da çalışıyor.
- Değişiklik kaydı/bakım penceresi açıldı: …Extract, Distribution Path ve Replicat yükseltme boyunca durur; gecikme birikir ve iş bitince erir…Extract geri sarılınca hedefe aynı transaction'lar ikinci kez gelebilir; uygulama sahibiyle çakışma planı yapıldı…REPERROR ile atlanan işlemler hedefte eksik kalır; iş sahibinin onayı alındı…süreçler kısa süre yeniden başlatılır….
Rehberin aşamaları
- Durum: süreçler, gecikme ve servisler (salt-okur) — Service Manager ve microservice portlarını kontrol et · Kaynak süreçleri, Extract gecikmesini ve Distribution Path'i göster (kaynak) · Hedef süreçleri ve Replicat gecikmesini göster (hedef) · Uçtan uca gecikmeyi heartbeat ile ölç (hedef) · Kaynak veritabanında capture durumunu ve gerekli arşivleri kontrol et (kaynak) · Hata günlüğünü tara (kaynak) …
- 1. Teşhis: Extract neden durdu? — Extract durumunu ve report'taki hatayı göster (kaynak) · Veritabanındaki capture durumunu ve arşivleri kontrol et (kaynak)
- 2. Güvenlik ağı — Parametre, checkpoint ve report dosyalarını yedekle (kaynak)
- 3. Uygulama: nedeni gider ve Extract'ı başlat — Eksik arşiv logları RMAN yedeğinden geri yükle (kaynak) · Nedeni gider · Extract'ı başlat ve izle (kaynak)
- 4. Doğrulama ve sonrası — Gecikmenin eridiğini doğrula (kaynak) · Kök nedeni önle (kaynak)
- 1. Teşhis: Replicat hangi işlemde durdu? — Replicat durumunu, report ve discard dosyasını göster (hedef) · Hatalı satırı hedefte ve kaynakta karşılaştır
- 2. Güvenlik ağı — Parametre, checkpoint ve report dosyalarını yedekle (hedef)
- 3. Uygulama: veriyi düzelt ve Replicat'ı başlat — Hedefteki veriyi düzelt · Geçici olarak hatayı discard'a yönlendir: REPERROR (hedef) · Replicat'ı başlat (hedef)
- 4. Doğrulama ve sonrası — Replicat'ın ilerlediğini doğrula (hedef) · Geçici REPERROR'u kaldır (hedef)
- 1. Teşhis: tablo replikasyona uygun mu? — Tabloyu kaynakta incele (kaynak) · Supplemental logging durumunu göster (kaynak) · Tabloyu hedefte kontrol et (hedef)
- 2. Güvenlik ağı — Parametre ve checkpoint dosyalarını yedekle (kaynak) · Parametre ve checkpoint dosyalarını yedekle (hedef) · Hedef tablonun yedeğini al (hedef)
- 3. Uygulama: tabloyu yükle ve kendi Replicat'ıyla başlat — Supplemental logging'i tablo düzeyinde aç (kaynak) · Tabloyu ana Replicat'tan çıkar: MAPEXCLUDE (hedef) · Tablonun açık MAP satırını ana Replicat'tan kaldır (hedef) · Tabloyu Extract'a ekle (kaynak) · Yalnız bu tablo için yeni Replicat ekle (hedef) · Tutarlı SCN ile tabloyu dışa aktar (kaynak) …
- 4. Doğrulama ve sonrası — Satır sayılarını karşılaştır (kaynak) · Satır sayısını ve yeni Replicat'ı kontrol et (hedef)
- 1. Teşhis: tablo nerede tanımlı? — Tablonun parametre dosyalarındaki yerini ve supplemental logging'ini göster (kaynak) · Tablonun Replicat'taki eşlemesini göster (hedef)
- 2. Güvenlik ağı — Parametre ve checkpoint dosyalarını yedekle (kaynak) · Parametre ve checkpoint dosyalarını yedekle (hedef)
- 3. Uygulama: tabloyu Extract ve Replicat'tan çıkar — Tabloyu Extract'tan çıkar (kaynak) · Trail'deki kalan kayıtların uygulanmasını bekle (hedef) · Tabloyu Replicat'tan çıkar (hedef) · Tablonun MAP satırını kaldır (hedef) · Tablo düzeyinde supplemental logging'i kaldır (kaynak)
- 4. Doğrulama — Tablonun artık işlenmediğini doğrula (kaynak)
- 1. Teşhis: trail'ler ne kadar yer kaplıyor, kim okuyor? — Trail dizinini ve dosyalarını göster (kaynak) · Trail dizinini ve Replicat'ın okuduğu konumu göster (hedef)
- 2. Uygulama: Purge Trail görevini tanımla — Purge Trail görevini kaynak deployment'ta tanımla · Purge Trail görevini hedef deployment'ta tanımla
- 3. Acil durum: okunmuş trail dosyalarını elle sil — Okunmuş trail dosyalarını sil
- 1. Teşhis: SCN'ye geri dönülebilir mi? — Extract'ın mevcut konumunu göster (kaynak) · Capture'ın ilk SCN'sini ve arşivleri kontrol et (kaynak)
- 2. Güvenlik ağı — Parametre, checkpoint ve report dosyalarını yedekle (kaynak)
- 3. Uygulama: Extract'ı SCN'ye konumlandır — Extract'ı durdur, SCN'ye konumlandır ve yeni trail dosyasından başlat (kaynak)
- 4. Doğrulama — Extract'ın yeni konumdan ilerlediğini doğrula (kaynak) · Hedefte çakışmaları izle (hedef)
- 1. Teşhis: mevcut sürüm ve hazırlık — Mevcut sürümü, patch'leri ve süreçleri kaydet (kaynak) · Mevcut sürümü, patch'leri ve süreçleri kaydet (hedef)
- 2. Güvenlik ağı — Deployment ve Service Manager dizinlerini yedekle (kaynak) · Deployment ve Service Manager dizinlerini yedekle (hedef)
- 3. Uygulama: süreçleri durdur ve yükselt — Süreçleri düzgün durdur (kaynak) · Süreçleri düzgün durdur (hedef) · Yeni GoldenGate home'unu kur (kaynak) · Yeni GoldenGate home'unu kur (hedef) · Service Manager'ı ve deployment'ı yeni home'a al (kaynak) · OPatch ile patch uygula (kaynak) …
- 4. Doğrulama — Süreçleri başlat ve sürümü doğrula (kaynak) · Süreçleri başlat ve sürümü doğrula (hedef) · Geri dönüş (gerekirse)
- 1. Teşhis: yeni primary ve Extract'ın bağlantısı — Yeni primary'nin rolünü ve capture durumunu kontrol et (yeni primary) · Extract'ın durumunu ve credential alias'larını göster (kaynak)
- 2. Güvenlik ağı — Parametre, checkpoint ve report dosyalarını yedekle (kaynak)