Sürüm yükseltme sihirbazı
Patch mi major mı, yerinde mi taşıyarak mı? Yükseltmeyi adım adım planla; her dalda ön kontrol, yöntem ve sonrası. Prod'a dokunmadan önce burada provasını yap.
Ne tür bir yükseltme yapıyorsun?
Patch/küçük sürüm (aynı ana sürüm içinde, ör. 16.2 → 16.4, ya da bir SQL Server CU) düşük risklidir ve genelde yerinde yapılır. Büyük (major) sürüm (ör. 15 → 16) veri formatı değişimi içerebilir ve daha dikkatli planlama ister.
SELECT * FROM v$version;
SELECT patch_id, action, status FROM dba_registry_sqlpatch ORDER BY action_time DESC;- Küçük sürüm / patch (aynı ana sürüm, CU)
- Büyük sürüm (major, ana sürüm değişiyor)
- Farkı bilmiyorum, açıkla
Patch mi, major mı?
Patch: ana sürüm aynı kalır (16.2 → 16.4); data file formatı değişmez, genelde binary değiştir + restart. Major: ana sürüm değişir (15 → 16); katalog/format değişebilir, pg_upgrade / autoupgrade / dump-restore gerekir, uygulama uyumluluğu test edilmeli.
- Bende patch (ana sürüm aynı)
- Bende major (ana sürüm değişiyor)
Yedeğin ve geri dönüş planın hazır mı?
Patch düşük riskli olsa da her yükseltmenin altın kuralı: önce tam yedek (ve mümkünse snapshot). Sorun çıkarsa dönebileceğin bir noktan olmalı.
- Evet, yedek + geri dönüş hazır
- Hayır, henüz yok
Önce yedek + geri dönüş planı
Yükseltmeye başlamadan güvenlik ağını kur.
Patch'i uygula
Aynı ana sürüm içinde yama. Kümede rolling (replikadan başlayarak) uygulamak kesintiyi azaltır.
Major upgrade yöntemi
İki ana yol: (1) Yerinde — mevcut sunucuda dönüştür (pg_upgrade, Oracle AutoUpgrade/DBUA, MySQL in-place). Hızlı ama geri dönüşü zor. (2) Taşıyarak — yeni sürümde taze bir sunucu kur, veriyi taşı (dump/restore veya replikasyon ile), sonra geçiş yap (cutover). Daha güvenli, minimum kesinti.
- Önce hazırlık/uyumluluk kontrolü yapayım
- Yerinde (in-place)
- Yeni sunucuya taşıyarak (minimum kesinti)
Uyumluluk / hazırlık kontrolü
Yükseltmeden önce hedef sürümün uyarılarını çıkar: kaldırılan (deprecated) özellikler, geçersiz nesneler, uyumluluk seviyesi.
-- AutoUpgrade analyze modu: java -jar autoupgrade.jar -config cfg -mode analyze- Temiz çıktı, devam
- Uyarılar/uyumsuzluklar var
Önce uyarıları gider
Rapordaki her uyarıyı yükseltmeden ÖNCE çöz; yoksa upgrade yarıda kalabilir ya da uygulama bozulur.
Yerinde (in-place) major upgrade
Mevcut sunucuda dönüştür. Hızlı ama geri dönüş genelde yedekten restore demektir — snapshot şart.
Taşıyarak upgrade (minimum kesinti)
Yeni sürümde taze sunucu kur, veriyi taşı, sonra kısa bir cutover ile geçiş yap. En güvenli yöntem; eski sistem sağlam kalır.