ORA-12520: TNS:listener could not find available handler for requested type of server(监听程序找不到所请求服务器类型的可用处理程序)
Oracle含义
监听程序无法为所请求的连接类型(专用或共享)找到合适的服务器进程(handler)。客户端能够连到监听程序,但连接无法移交给服务器进程。
原因
实例未在监听程序中注册或注册已失效;达到 PROCESSES/SESSIONS 限制,无法派生新的专用进程;共享服务器配置中没有调度程序或调度程序不足;或实例刚启动,尚未在监听程序中注册。
解决方法
检查监听程序看到的服务:lsnrctl services(handler 数量和状态)。将实例重新注册到监听程序:ALTER SYSTEM REGISTER; 检查 PROCESSES 限制:SELECT resource_name, current_utilization, max_utilization, limit_value FROM v$resource_limit WHERE resource_name IN ('processes','sessions'); 如有需要,用 ALTER SYSTEM SET processes=... SCOPE=SPFILE; 增大并重启实例。
同一数据库的其他条目
- ORA-16038log N sequence# M cannot be archived(日志 N 序列号 M 无法归档)
- ORA-19809limit exceeded for recovery files(恢复文件超出限制)
- ORA-00376file N cannot be read at this time(文件 N 当前无法读取)
- ORA-28001the password has expired(密码已过期)
- ORA-38029object statistics are locked(对象统计信息已锁定)
- ORA-00845MEMORY_TARGET not supported on this system(此系统不支持 MEMORY_TARGET)
- ORA-27102out of memory(内存不足)