ORA-12528, TNS:listener: all appropriate instances are blocking new connections

WOgengQIANG 2015-09-01 08:10:05
使用的是MyEclipse2014+Oracle12c+JDK8+Tomcat8+PLSQL,所以另安了Oracle的32位客户端。下图为安装后的Oracle文件位置:

PLSQL照下图配置的话能登陆,但是MyEclipse却连不上数据库。

下面这张是MyEclipse的数据库连接配置:

现在的问题是报错:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pt.common.codeComparison' defined in class path resource [common-context.xml]: Cannot resolve reference to bean 'bill.database.tableaccessor' while setting bean property 'accessor'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'bill.database.tableaccessor' defined in class path resource [billtype-context.xml]: Cannot resolve reference to bean 'borm.objectRunService' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'borm.objectRunService' defined in class path resource [dm-context.xml]: Cannot resolve reference to bean 'borm.objectEngine' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'borm.objectEngine' defined in class path resource [dm-context.xml]: Cannot resolve reference to bean 'gap.cacheService' while setting bean property 'cacheService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'gap.cacheService' defined in class path resource [grp/pt/util/util-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [grp.pt.common.bs.CacheService]: Constructor threw exception; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Listener refused the connection with the following error:
ORA-12528, TNS:listener: all appropriate instances are blocking new connections
The Connection descriptor used by the client was:
127.0.0.1:1521:NIUyh
下图为查看监听状态:

下面5张图为监听器配置:





下图为Oracle各服务启动状态:

下图为listener.ora文件内容及其位置:


下图为两个tnsnames.ora文件内容及其地址(因为安装客户端时拷贝了一个到客户端文件下):




最后这张图是Oracle12c自带的jdbc文件下的包,换了ojdbc7dms_g到MyEclipse里无效,还是报错。

另外修改listener.ora文件和tnsnames.ora文件的方法已经试过,只是在NIUyh服务下多了一个静态监听实例,动态监听实例仍然是一个BLOCKED一个READY,还是无效。
求教到底哪里出问题了?我是新人,请尽量说详细一点,谢谢~
...全文
1147 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
WOgengQIANG 2015-09-11
  • 打赏
  • 举报
回复
感谢楼上回答的两位,这个问题自己已经解决了。因为orcl是安装oracle12c的时候配置的监听实例,niuyh是安装32位客户端的时候配置的监听实例。MyEclipse连接的时候连的是客户端监听实例听niuyh,而客户端的实例因为动态注册的原因呈blocked状态。所以只要用 sqlplus / as sysdba shutdown immediate 命令关闭,此时仅剩orcl实例,状态为 orcl READY 然后重新配置niuyh监听实例并重启电脑动态注册的状态就变成 niuyh READY orcl BLOCKED 了。MyEclipse就能连上了。(估计是因为动态注册是哪个实例后创建就READY哪个实例)研究了好久希望对以后碰到这个问题的人有帮助!
WOgengQIANG 2015-09-11
  • 打赏
  • 举报
回复
引用 4 楼 zhoudb888 的回复:
http://www.oracleblog.org/working-case/service-status-is-blocked/?dmdvr=13697&search=lloyds-pharmacy-and-viagra&MIGPN=1363924801 看看这篇文章,希望对你有帮助。 在instance没有建立的情况下,用pfile启动到nomount状态,实现数据库动态注册,虽然可以实现动态注册,在service中能看到service name,但是其状态为blocked,客户端此时无法连接。要解决此问题: 1.改用静态注册 2.建完database后才用动态注册
用网上的静态注册方法不行,只是多加了一个静态监听,动态监听的状态没有变,还是报错。
WOgengQIANG 2015-09-11
  • 打赏
  • 举报
回复
引用 3 楼 wmxcn2000 的回复:
方便把 listener.ora 发上来吗?
listener.ora 已经发上来了,第一个记事本的截图就是。
  • 打赏
  • 举报
回复 1
http://www.oracleblog.org/working-case/service-status-is-blocked/?dmdvr=13697&search=lloyds-pharmacy-and-viagra&MIGPN=1363924801 看看这篇文章,希望对你有帮助。 在instance没有建立的情况下,用pfile启动到nomount状态,实现数据库动态注册,虽然可以实现动态注册,在service中能看到service name,但是其状态为blocked,客户端此时无法连接。要解决此问题: 1.改用静态注册 2.建完database后才用动态注册
卖水果的net 2015-09-05
  • 打赏
  • 举报
回复
方便把 listener.ora 发上来吗?
WOgengQIANG 2015-09-04
  • 打赏
  • 举报
回复
来人呐!真的很急呀!!
WOgengQIANG 2015-09-01
  • 打赏
  • 举报
回复
有人吗?研究好久了,求助!!

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧