Oracle XE 停止工作.TNS 侦听器拒绝连接 [英] Oracle XE stopped working. TNS listener refused connection

查看:34
本文介绍了Oracle XE 停止工作.TNS 侦听器拒绝连接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发一个使用 Oracle XE 11g 作为其 RDBMS 的应用程序.它已经工作了几个星期,但现在我开始收到一条关于连接被拒绝的错误消息.

I'm working on an application which uses Oracle XE 11g as its RDBMS. It was working for several weeks but now I started to get an error message about the connection being refused.

我重新启动了系统,但没有帮助.我卸载了 XE,删除了所有剩余的文件(甚至从注册表中)并重新安装了它.现在我收到另一条错误消息:

I restarted my system but it did not help. I uninstalled XE, deleted all remaining files (even from registry) and reinstalled it. Now I get another error message:

侦听器拒绝连接,错误如下:ORA-12505,TNS:侦听器当前不知道连接中给出的 SID描述符

Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

我已经阅读了有关此错误的信息,其他人建议向 listener.ora 文件中添加一个新的 SID:

I've read about this error and others suggested adding a new SID to the listener.ora file:

(SID_DESC =
  (SID_NAME = XE)
  (ORACLE_HOME = C:oraclexeapporacleproduct11.2.0server)
)

如果我这样做,我会收到另一条错误消息:

If I do this I get another error message:

ORA-01034:ORACLE 不可用 ORA-27101:共享内存领域不可用不存在

ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist

我的配置文件是:listener.ora

    SID_LIST_LISTENER =   (SID_LIST =
    (SID_DESC =
      (SID_NAME = XE)
      (ORACLE_HOME = C:oraclexeapporacleproduct11.2.0server)
    )
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:oraclexeapporacleproduct11.2.0server)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:oraclexeapporacleproduct11.2.0server)
      (PROGRAM = extproc)
    )   )

LISTENER =   (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = AAROLD.in.mycompany.com)(PORT = 1521))
    )   )

DEFAULT_SERVICE_LISTENER = (XE)

tnsnames.ora

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = AAROLD.in.mycompany.com)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

ORACLR_CONNECTION_DATA = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
    ) 
    (CONNECT_DATA = 
      (SID = CLRExtProc) 
      (PRESENTATION = RO) 
    ) 
  ) 

lsnrctl status 返回:

LSNRCTL for 32-bit Windows: Version 11.2.0.2.0 - Production on 19-M┴RC. -2013 15:12:24

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 32-bit Windows: Version 11.2.0.2.0 - Production
Start Date                19-M┴RC. -2013 15:01:12
Uptime                    0 days 0 hr. 11 min. 11 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Default Service           XE
Listener Parameter File   C:oraclexeapporacleproduct11.2.0server
etworkadminlistener.ora
Listener Log File         C:oraclexeapporaclediag	nslsnrAAROLDlisteneralertlog.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.pipeEXTPROC1ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=AAROLD.in.mycompany.com)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

您知道问题出在哪里吗?我不是 Oracle 专家,所以我在这里完全一无所知.

Do you have any idea what can be the problem? I'm not an Oracle expert so I'm completely in the dark here.

推荐答案

您的 Oracle 数据库已关闭.启动可能有问题.

Your Oracle DB is down. It may have some problem starting up.

转到命令提示符并键入:

Go to command prompt and type:

SQL>sqlplus/as sysdba

如果您收到连接到空闲实例"的消息,请输入

If you get a message "connected to an idle instance" then type

SQL>启动

并告诉我您收到的消息.如果在SqlPlus启动时没有得到connected to an idle instance"消息,输入:

and let me know the message you get. If you don't get the "connected to an idle instance" message on SqlPlus startup, the type:

SQL>设置行 80 页 50

SQL>select * from v$database;

并在此处发布输出.

这篇关于Oracle XE 停止工作.TNS 侦听器拒绝连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆