Oracle数据库ORA-12520报错解决方案
ORACLE数据库部署在服务器端,开发在本地,最近经常出现数据库连接失败,提示:“ORA-12520: TNS:监听程序无法为请求的服务器类型找到可用的处理程序”,通过简单分析,排除以下2种可能:如报错提示,我本地没有可用的处理程序;本地的tnsname.ora文件中设置的数据库连接类型和实际数据库的类型不一致,如服务器上的Oracle数据库类型是shared(共享),但是在tnsnames.or
·
ORACLE数据库部署在服务器端,开发在本地,最近经常出现数据库连接失败,提示:“ORA-12520: TNS:监听程序无法为请求的服务器类型找到可用的处理程序”,通过简单分析,排除以下2种可能:
如报错提示,我本地没有可用的处理程序;- 本地的tnsname.ora文件中设置的数据库连接类型和实际数据库的类型不一致,如服务器上的Oracle数据库类型是shared(共享),但是在tnsnames.ora文件中配置的数据库类型是(server = dedicate)。另外,此种情况的报错内容是:“ORA-12520: TNS: 监听程序无法找到需要的服务器类型的可用句柄”。报错代码一样,但是文字提示内容不一样。
报错原因:Oracle数据库的进程数,默认限制为150个,由于连接数达到了此上限,因此无法连接成功。
解决办法:增加进程数量限制,具体步骤如下:
- 找到一台能够连接上数据库的电脑,连接上数据库,连接工具可以使PL/SQL Developer或者Navicat等。
- 执行以下SQL:
-- 第一步:查询目前已有的数据库线程数量 -- select * from v$process; -- 第二步:查询目前数据库允许的最大进程数量 select value from v$parameter where name = 'processes'; -- 第三步:设置数据库允许的最大进程数量,为设置的是500,可按需设置 alter system set processes = 500 scope = spfile;
- 重启Oracle服务,使得新的配置生效。
补充:关于v$process 视图的官方介绍链接:V$PROCESS
更多推荐
已为社区贡献1条内容
所有评论(0)