database ORA-12528:TNS 侦听器:所有适当的实例都在阻止新连接。实例“CLRExtProc”,状态未知
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/23743910/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
ORA-12528: TNS Listener: all appropriate instances are blocking new connections. Instance "CLRExtProc", status UNKNOWN
提问by Shashi
I'm getting this error if i try to login as db user. If lsnrctlstatus is run i get the below error.
DB was working fine all these years and stopped working suddenly.
如果我尝试以 db 用户身份登录,则会收到此错误。如果lsnrctlstatus 运行,我会收到以下错误。
这些年来,DB 运行良好,突然停止工作。
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ABC.LOCAL)(PORT=1521)
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
Start Date 19-MAY-2014 12:18:17
Uptime 0 days 0 hr. 22 min. 51 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File D:\Oracle\Administrator\product.2.0\dbhome_1\network\admin\listener.ora
Listener Log File d:\oracle\administrator\diag\tnslsnr\abc\listener\alert\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ABC.LOCAL)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.\pipe\EXTPROC1521ipc)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "devdb" has 1 instance(s).
Instance "devdb", status BLOCKED, has 1 handler(s) for this service...
Service "testdb" has 1 instance(s).
Instance "testdb", status BLOCKED, has 1 handler(s) for this service...
The command completed successfully
回答by Randy
set ORACLE_SID=<YOUR_SID>
sqlplus "/as sysdba"
alter system disable restricted session;
or maybe
或者可能
shutdown abort;
or maybe
或者可能
lsnrctl stop
lsnrctl start
回答by eliatou
You have to know if the problem come from the listener or from the database.
您必须知道问题是来自侦听器还是来自数据库。
So first, restart the listener, it could solve the problem.
Second, it could come from the db if it's not in open mode (nomount, mount, restrict). To check it, connect locally and do the following query:
sqlplus /nolog
connect / as sysdba
SQL> select instance_name, status, database_status from v$instance;
所以首先,重新启动监听器,它可以解决问题。
其次,如果它不是处于打开模式(nomount、mount、restrict),它可能来自数据库。要检查它,请在本地连接并执行以下查询:
sqlplus / nolog
连接/作为 sysdba
SQL> 从 v$instance 中选择 instance_name、status、database_status;
回答by leo
I had this error message with boot2docker on windows with the docker-oracle-xe-11g image (https://registry.hub.docker.com/u/wnameless/oracle-xe-11g/).
我在带有 docker-oracle-xe-11g 映像(https://registry.hub.docker.com/u/wnameless/oracle-xe-11g/)的Windows 上使用 boot2docker 收到此错误消息。
The reason was that the virtual box disk was full (check with boot2docker.exe ssh df). Deleting old images and restarting the container solved the problem.
原因是虚拟盒磁盘已满(检查boot2docker.exe ssh df)。删除旧图像并重新启动容器解决了问题。
回答by Martin Staufcik
I had this problem on my developent environment with Visual Studio.
我在 Visual Studio 的开发环境中遇到了这个问题。
What helped me was to Clean Solutionin Visual Studio and then do a rebuild.
帮助我的是Clean Solution在 Visual Studio 中进行重建。
回答by Chandan C
If you are using 11G XE with Windows, along with tns listener restart, make sure Windows Event Log service is started.
如果您将 11G XE 与 Windows 一起使用,并重新启动 tns 侦听器,请确保已启动 Windows 事件日志服务。

