=====SQL*Net über eine Firewall und Dead Connection Detection(DCD)===== **Start 03/2014** Soll über eine "normale" Firewall ohne weitere Einstellung das SQL*Net Protokoll gefahren werden, kann es zu so einigen Problemen mit Verbindungsabbrüchen kommen. ==== Server Seitige Lösung Dead Connection Detection(DCD) ==== Eigentliches Ziel des DCD ist es von der Server Seite zu erkennen ob der Client Prozess sich abgemeldet hat und der dazu gehörige Server Prozess abgebaut werden kann. Das Feature kann aber auch dazu verwendet werden die FW offen zu halten, da dann x Minuten dann ein Packet an den Client gesandt wird. ===Der SQL*Net Parameter SQLNET.EXPIRE_TIME=== Parameter SQLNET.EXPIRE_TIME = x (Minuten) in der sqlnet.ora des DB Servers setzen. Damit auch wirklich die richtige sqlnet.ora in Cluster Umgebungen und Umgebung mit eigenen Listener Oracle Home zum Zuge kommt, beide sqlnet.ora Dateien, die vom DB Server Oracle Home und die vom Listener editieren! Listener verwendet immer das Verzeichniss in dem auch die listner.ora gefunden wird: lsnrctl status LISTENER ... Listener Parameter File /u01/oracle/grid/11.2.0.3/network/admin/listener.ora ... Der Datenbank Server Prozess verwendet die sqlnet.ora im $ORACLE_HOME/network/admin Verzeichnis der DB Software! ( getestet auf Oracle RAC auf einer exdata Maschine). siehe auch in der Orginal Dokumentation [[http://docs.oracle.com/cd/E11882_01/network.112/e10835/sqlnet.htm#NETRF209|SQLNET.EXPIRE_TIME]] ---- ==== Oracle ab 12c ==== siehe Oracle Net 12c: Changes to the Functionality of Dead Connection Detection (DCD) (Doc ID 1591874.1) ---- ==== Quellen ==== Untersuchung zu ORA-03111 error: * http://royontechnology.blogspot.de/2009/06/mysterious-ora-03111-error.html Metalink: * How To Track Dead Connection Detection(DCD) Mechanism Without Enabling Any Client/Server Network Tracing (Doc ID 438923.1) * How to Check if Dead Connection Detection (DCD) is Enabled in 9i ,10g and 11g (Doc ID 395505.1)