Oracle Dinleyici Çalışmıyor veya Servis Bilinmiyor: lsnrctl Kontrolü, PMON Dinamik Kayıt ve Statik Servis Tanımı
1521 portunda dinleyicinin kapalı olması (12541) veya veri tabanı servisinin henüz dinleyiciye bildirilmemiş olması (12514); ALTER SYSTEM REGISTER ve listener.ora çözümleri.
Operasyonel Doğrulama & Güvenilirlik Standardı
Hata mesajı semptomdur, kök neden değildir. Sunucuyu yeniden başlatmadan veya rastgele ayar değiştirmeden önce aşağıdaki "Nedeni ayırt eden tek sorgu"yu çalıştırarak gerçek senaryoyu netleştirin.
▸Belirti
İstemci Oracle'a bağlanırken iki yaygın dinleyici hatasından birini alır:
ORA-12541: TNS:no listener
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor▸Sahada Ne Görürsün?
- •ORA-12541: Port 1521'de dinleyen hiçbir süreç yoktur; bağlantı anında reddedilir.
- •ORA-12514: Listener açıktır ancak veritabanı instance'ı henüz servisini listener'a bildirmemiştir (dynamic registration gecikmesi).
▸Kök Neden Matrisi
| Hata | Olasılık | Kök Neden |
|---|---|---|
| ORA-12541 | %80 | Listener servisi durmuştur (lsnrctl start gerekir). |
| ORA-12541 | %20 | Firewall port 1521'i engellemektedir. |
| ORA-12514 | %70 | Veritabanı yeni açılmıştır ve PMON/LREG henüz dinamik kaydı yapmamıştır (60sn gecikme). |
| ORA-12514 | %30 | Bağlantı dizesindeki SERVICE_NAME ile veritabanının gerçek servis adı farklıdır. |
▸ACİL RUNBOOK (0-5dk)
# 1. Listener durumunu kontrol et ve kapalıysa başlat
lsnrctl status
lsnrctl start-- 2. ORA-12514 için: Veritabanına yerel bağlanıp anında dinamik kaydı tetikle
sqlplus / as sysdba
ALTER SYSTEM REGISTER;
-- 3. Veritabanının broadcast ettiği gerçek servis adını gör
SHOW PARAMETER service_names;
SHOW PARAMETER local_listener;▸KALICI BLUEPRINT
- 1Statik Servis Kaydı (SID_LIST_LISTENER): Dinamik kaydın gecikmesiyle oluşacak ORA-12514 kesintilerini önlemek için
listener.oraiçinde statik servis tanımı yapılmalıdır:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = PROD_SERVICE)
(ORACLE_HOME = /u01/app/oracle/product/19.0.0/dbhome_1)
(SID_NAME = PROD)
)
)- 1LOCAL_LISTENER Parametresi: Veritabanının doğru dinleyici portunu hedeflediğinden emin olunmalıdır.
▸Doğrulama
lsnrctl status | grep -i "Service \"PROD_SERVICE\" has 1 instance(s)"
# READY durumunda görülmelidirDiğer Veritabanı Hata Teşhisleri
Kriz anında başvurabileceğiniz diğer doğrulanmış hata rehberleri.
Oracle ORA-01653: Tablespace Genişletme ve Çözüm Adımları
ORA-01653 / 01654 / 01652 ayrımı, tablespace doluluk sorgusu, datafile autoextend ve MAXSIZE ile güvenli büyütme.
Oracle ORA-00001: unique constraint violated Teşhisi ve Çözümü
Manuel ID girişleri veya sequence önbellek kaybı sonucu sequence'in mevcut tablodaki maksimum ID'nin gerisinde kalması; sequence INCREMENT BY adımları ve MERGE deseni.
Oracle ORA-00060: deadlock detected while waiting for resource Teşhisi
Ters sırada çalışan DML işlemleri veya yabancı anahtar kolonlarında indeks eksikliğinden kaynaklanan ORA-00060 kilitlenmeleri; trace dosyası okuma ve SELECT FOR UPDATE NOWAIT çözümü.