PLSQL经常自动断开失去连接的解决过程

2015-11-21 01:35:40 · 作者: · 浏览: 2

问题背景:

情况是这样的,很多开发同事的plsql上班时间开着8个小时,有时候他们出去抽烟后或者中午吃完饭,回来在plsql上面执行就报错无响应,然后卡住了半天动弹不了,非得重新登录plsql才生效,我猜猜是因为连接失效的缘故,经常碰到这种情况,还没有影响工作效率和工作心情的。

?

1,去查看以下CONNECT_TIME的连接时间

?

SQL> select * from dba_profiles t wheret.resource_name='CONNECT_TIME';

PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT

-------------------------------------------------------------- -----------------------------------------------------

DEFAULT CONNECT_TIME KERNEL UNLIMITED

MONITORING_PROFILE CONNECT_TIME KERNEL DEFAULT

TMPOPT CONNECT_TIME KERNEL DEFAULT

MYPROFILE CONNECT_TIME KERNEL DEFAULT

?

SQL>

?

看到有4个,那如何找到powerdesk用户所属于的那个profile呢?去查看当前用户的CONNECT_TIME

?

SQL> select * from user_resource_limits;

RESOURCE_NAME LIMIT

------------------------------------------------------------------------

COMPOSITE_LIMIT UNLIMITED

SESSIONS_PER_USER UNLIMITED

CPU_PER_SESSION UNLIMITED

CPU_PER_CALL UNLIMITED

LOGICAL_READS_PER_SESSION UNLIMITED

LOGICAL_READS_PER_CALL UNLIMITED

IDLE_TIME UNLIMITED

CONNECT_TIME UNLIMITED

PRIVATE_SGA UNLIMITED

9 rows selected

?

SQL>

?

看到CONNECT_TIME是UNLIMITED,没有限制,那么为什么plsql连接会出现未响应的现象呢?

?

原blog地址:http://blog.csdn.net/mchdba/article/details/48298577,未经过博主同意,谢绝转载。

?

2,cmd里面去用sqlplus连接验证

sqlplus连接上,过去30分钟不操作,再次操作连接db,正常使用,看来这和oracledb无关了,应该要去看看plsql的设置了

?

?

3,去plsql里面设置

进入plsql的Tools,再进入Preferences,然后选择左边的Connection选型,选择Check connection,如下图1.png所示:

这会比较稳定一些,当然可能你plsq开一天不用,再进去会延时一会,但是短时间里面都不会失灵了。

?

?

PS:后续问题,plsql不断开连接,但是你关闭以前打开的执行文件或者sql窗口还是会卡住,报未响应的情况,这种只要强行关闭plsql重新打开登录了。

?