今天在做数据同步的大数据量测试,同时启动几十个线程连接数据库,于是遇到了标题上的数据库错误“ORA-12519, TNS:no appropriate service handler found ”,百度上搜索的结果说是因为数据库当前的连接数已超过了设置的数据库处理的最大上限。查询SQL如下:
--当前的连接数
select count(*) from v$process;
--数据库预置的最大连接数
select value from v$parameter where name = 'processes';
经查询我的数据库当前连接数为175,预置最大为200。感觉应该数据这方面的问题,之所以查询时没有达到上限可能是有连接进行了释放,而在测试服务时并发数据连接会超过预置值。于是修改数据库的预置值,SQL如下:
--修改最大连接数
alter system set processes = 500 scope = spfile;
设置为500后,重启数据库。没有再出现标题的异常信息。