日期:2014-05-16  浏览次数:20455 次

oracle连接一直等待也不报错的问题

????? 今天测试服务器上的程序访问数据库出现了异常,取不到数据了。而我在本地通过sqldevelper却可以访问,说明oracle实例可以正常工作,而当我关掉本地连接再去创建新连接的时候,出现了连接不上,也不报错的状态。

????? 实例正常,而不能连接,说明监听进程出了问题。因为每个新的连接请求,专用服务器都会为其创建专有的进程。基于这样的知识,进行了简单的操作。
停止监听:lsnrctl stop

启动监听:lsnrctl start
查看监听:lsnrctl status

数据库刹那间就好了。

前几天在书上刚瞟了几眼,就用上了,看来读书确实能增加解决问题的思路。

?

简单说明:oracle的专用服务器进程和监听进程是相对独立的进程,只是专用服务器进程需要通过监听进程去创建,创建好之后,监听程序对该专用服务器进程得连接就没有影响了,即使监听进程听了,已有的连接照样可以正常访问数据库,只是不可以创建新的连接而已。

?

SQL Develper是oracle提供的免费的数据库操作工具,不需要安装客户端。pl/sql和toad是要收费的,而且需要客户端的支持才能运行。

?

和大家分享一下。