client-server환경에서 비정상 종료된 session정리 방법
server에서 수행 중이던 프로그램이 비정상 종료한 경우에는 오라클의 smon이 자동으로 detection하여 수행 중이던 transaction을 rollback하여 정리하여 준다.
그러나, Client Server 환경에서 PC를 Client로 사용 시 비정상적인 방법으로 Server와 Disconnect 하면 Server 쪽에 있는 Dedicated Server가 남아 있다.
이는 Sql*net V1 & V2에서 발생하던 문제로 Sql*net V2.1 이후에는 아래와 같은 방법을 이용하면 Dead connection이 정상적으로 Disconnect 된다.
* 환경 : Server - Sql*net tcp/ip V2.1.3
Client - Sql*net V2.0
* Setup 방법 : Server와 Client에 있는
$ORACLE_HOME/network/admin/sqlnet.ora에
sqlnet.expire_time=n
으로 setting 한다.
여기서 n은 분 단위이며 실제 disconnect는 n분보다 더 걸린다.
일반적으로 sqlnet.expire_time=1로 설정하면 적당하다.
|