ORACLE自动断开数据库连接解决办法

最近,有客户提出在系统的应用中出现数据库频繁自动断开连接(每10分钟)的异常现象,通过查找学习,找到如下两种解决方法。供大家参考。

方法一、直接修改资源配置文件

分三个步骤在sqlplus环境下完成。

第一步,查询资源文件,找到CONNECT_TIME所在的profile名。

select

resource_name,profile

fromdba_profiles;

第二步,用alter命令修改profile中的值;

alter

profile MONITORING_PROFILElimit

connect_timeunlimited;(或跟一个时间值,如1000,单位为分钟)

alter

profile MONITORING_PROFILElimit idle_time

unlimited;

第三步,用如下命令查看profile中的值;

select

resource_name,limit fromdba_profiles

whereprofile='MONITORING_PROFILE';

方法二:通过创建资源配置文件并进行用户分配来完成。

分三个步骤在sqlplus环境下完成。[该方法不对其它数据库连接用户产生影响]

第一步,查看并修改resource_limit的状态。

SQL>show  parameter  resource_limit;  如果为FALSE,则将其修改为TRUE,否则配置不会生效:

(没成功)

SQL>alter

system

setresource_file=true;

第二步,用createprofile命令创建一个新的profile文件:

SQL>create

profile [profile文件名] limitconnect_time unlimited

idle_timeunlimited;

[示例:create

profile test_profile limit connect_time unlimitedidle_time

unlimited;]

第三步,将这个新的配置文件分配给该用户:

SQL>alter  user [user_name,如ROOT_QY]  profile [profile文件名];

[示例:alteruser

root_qy profile test_profile;]

更多推荐