- 论坛徽章:
- 0
|
环境 racle 9.2.0.6
OS:hp-ux 11.23
客户端是一个不知道什么的应用程序,利用Oracle Client直接连接到数据库服务器, 每个客户端都直接连接数据库服务器, 没有中间件;
今天做了个测试, 在客户端启动一个程序,正常登录后, 把客户端电脑的网线拔掉, 客户端程序非法退出, 而服务器端查询v$session表, 发现有一个来自该客户端的进程不会被释放:
select username,status,osuser,program,terminal from v$session where terminal like '%IBM%';
重新将客户端电脑网络接通, 再次启动客户端应用程序, 再查看服务器v$session表, 发现2条来自该客户机的连接.
以上是现象, 这样可以判断出, 如果客户端应用程序非法中断, 则服务器上的session不会被释放, 在网上查询, 有网友说Oracle会隔段时间自动清理这些session, 不过至发贴为止有30分钟有余, 服务器仍然没有释放这些垃圾session.
请教, 该怎么来释放这些垃圾session, 或者说在服务器上的session在多长时间内没有活动就直接释放? |
|