sobota, 25 lipca 2009

ORA-3136

Po podniesieniu wersji bazy z wersji wczesniejszej niż 10.2.0.1 do wersji 10.2.0.1
można zauważyć sporo wpisów w pliku alert.log postaci:

WARNING: inbound connection timed out (ORA-3136)

Jak podaje dokumentacja przyczyn może być wiele, chociaż jedna wydaje się najbardziej prawdopodobna. W ustawieniach listenera oraz protokoł SQL*Net istnieją dwa parametry:

SQLNET.INBOUND_CONNECT_TIME ( w pliku sqlnet.ora )
INBOUND_CONNECT_TIMEOUT_LISTENER ( w pliku listener.ora )

Co one oznaczają:

SQLNET.INBOUND_CONNECT_TIME - czas w sekundach, w których użytkownik musi poprawnie się zidentyfikować w bazie danych. Należy zwrócić uwagę, że nie polega to tylko i wyłącznie na odczytaniu zaszyfrowanego hasła z perspektyw systemowych, deszyfrowaniu go i porównaniu z prowadzonym. W bazie danych wykonywnych jest szereg zapytań i zmian w sesji użytkownika. Wartosć zero 0, że czas ten jest nieskończony.

INBOUND_CONNECT_TIMEOUT_LISTENER - czas w sekundach, w których użytkownik musie się zidentyfikować i wykonać poprawne połączenie do bazy danych. Podobnie, wartosć 0 oznacza, że czas ten jest nieskończony.

W wersjach wczesniejszych oba parametry są domyslnie ustawione na 0.
W wersji 10.2 i pozniejszych domyslne wartosći tych parametrów wynoszą 60.

Jeżeli ta wartosć nie jest wystarczająca to należy ją zwiększyć,np.:


SQLNET.INBOUND_CONNECT_TIMEOUT = 200 (w sqlnet.ora)
INBOUND_CONNECT_TIMEOUT_LISTENER = 200 (w listener.ora)


Inne możliwe przyczyny:
- przeciążenie serwera ( za mała wartosć SHARED POOL ? )
- problemy z siecią ( tutaj jest konieczna konsultacja z administratorami sieciowymi)

Można też spróbować włączyć sledzenie protokołu SQL*NET ( trace ). Należy zrobić to w sqlnet.ora. Przykład włączenia trace'a:


TRACE_LEVEL_CLIENT=admin
TRACE_LEVEL_SERVER=admin
TRACE_UNIQUE_CLIENT=on
TRACE_DIRECTORY_SERVER=$ORACLE_HOME/trace
TRACE_DIRECTORY_SERVER=$ORACLE_HOME/trace
TRACE_TIMESTAMP_CLIENT=on
TRACE_TIMESTAMP_SERVER=on


Jedna uwaga: Pliki sledzenia szybko przyjmują duże rozmiary ( rzędu MB ). Dlatego zaleca się zebranie ich pewnej liczby a następnie wyłączenia sledzenia.

Przydatna dokumentacja ( numery dokumentów w Oracle Metalink):

345197.1
465043.1
730066.1

Brak komentarzy:

Prześlij komentarz