有时候连得上Oracle数据库,有时候又连不上.

可能是数据库上当前的连接数目已经超过了它能够处理的最大值.

select   count ( * from  v$process  -- 当前的连接数
select  value  from  v$parameter  where  name  =   ' processes '   -- 数据库允许的最大连接数
修改最大连接数:
alter  system  set  processes  =   300  scope  =  spfile;

重启数据库:
shutdown  immediate;
startup;

-- 查看当前有哪些用户正在使用数据
SELECT  oSUSEr, a.username,cpu_time / executions / 1000000 || ' s ' , sql_fulltext,machine 
from  v$session a, v$sqlarea b
where  a.sql_address  = b.address  order   by  cpu_time / executions  desc ;