Binary yama sonrası datapatch -verbose ile SQL katmanını güncelle
OraclePatch & Yaşam DöngüsüKomut
# 1) Binary yama (opatch apply) sonrasi DB'yi ac, tum PDB'ler acik olmali:
sqlplus / as sysdba <<EOF
STARTUP;
ALTER PLUGGABLE DATABASE ALL OPEN;
EXIT;
EOF
# 2) Once yalniz kontrol, sonra uygula:
cd $ORACLE_HOME/OPatch
./datapatch -prereq
./datapatch -verbose
# Belirli PDB'ler icin: ./datapatch -verbose -pdbs PDB1,PDB2
# 3) Gecersiz nesneleri derle:
sqlplus / as sysdba @?/rdbms/admin/utlrp.sql
# Loglar: $ORACLE_BASE/cfgtoollogs/sqlpatch/Ne yapar?
datapatch, Oracle Home'daki binary yamaların SQL/PL-SQL bileşenlerini (sözlük, package'lar) CDB root, PDB$SEED ve tüm açık PDB'lere uygular ve sonucu DBA_REGISTRY_SQLPATCH'e yazar. Rollback edilen yamaların SQL kısmını da geri alır.
Ne zaman kullanılır?
Her RU/RUR/one-off binary yama veya rollback sonrasında; yeni patch'li home'a taşınan/unplug-plug edilen PDB'lerde; DBA_REGISTRY_SQLPATCH'te WITH ERRORS görüldüğünde yeniden çalıştırmak için.
Dikkat
Kapalı veya MOUNT durumdaki PDB'ler yamalanmaz ve açıldıklarında RESTRICTED modda kalabilir; önce hepsini aç. Yoğun yükte çalıştırma (sözlük lock'ları, package invalidation'ı). RAC'ta yalnızca bir node'dan bir kez çalıştırılır. Data Guard'da datapatch yalnızca primary'de çalıştırılır; değişiklik redo ile standby'a gider (önce standby binary'leri yamalanmalı).