启动Oracle Listener并查看状态失败

时间:2017-12-20 08:18:25

标签: oracle11g

我的本​​地计算机上有一个Oracle数据库。像每天一样,我必须在继续工作之前查看状态并启动Oracle的监听器。但今天我收到了一个错误。

C:\Windows\system32>lsnrctl status

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 20-DEC-2017 14:53:09

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

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   64-bit Windows Error: 61: Unknown error

" HOST"参数错过了该值。我试着编辑这两个文件" listener.ora"和" tnsnames.ora"解决问题但没有发生任何事情。

这是" listener.ora"的内容。文件:

# listener.ora Network Configuration File: F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2\bin\oraclr11.dll")
    )
    (SID_DESC =
      (SID_NAME = test
      (ORACLE_HOME = F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2)
      (PROGRAM = dg4odbc)
      (ENVS = "EXTPROC_DLLS=ONLY:F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2\bin\oraclr11.dll")
    )
    (SID_DESC =
      (SID_NAME = LINKSQL
      (ORACLE_HOME = F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2)
      (PROGRAM = dg4msql)
      (ENVS = "EXTPROC_DLLS=ONLY:F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-E6UVA39)(PORT = 1521)) 
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1522)) 
    )
  )

ADR_BASE_LISTENER = F:\PHUOC\OracleCSDL

这是" tnsnames.ora"的内容。文件:

# tnsnames.ora Network Configuration File: F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_SCADA =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


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

SCADA =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = Scada)
    )
  )
sqlserver = 
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = test) 
    )


)

LINKSQL = 
(DESCRIPTION =
    (ADDRESS = 
    (PROTOCOL = TCP)
    (HOST = localhost)
    (PORT = 1521)
    )
    (ADDRESS = 
    (PROTOCOL = TCP)
    (HOST = localhost)
    (PORT = 1522)
    )
    (CONNECT_DATA =
      (SID=LINKSQL) 
    )


)

然后这是" sqlnet.ora"的内容。文件:

# sqlnet.ora Network Configuration File: F:\PHUOC\OracleCSDL\product\11.2.0\dbhome_2\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.

# This file is actually generated by netca. But if customers choose to 
# install "Software Only", this file wont exist and without the native 
# authentication, they will not be able to connect to the database on NT.

SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

我的" OracleTNSListener"还有一件事。正在运行,这是图像:Image for Oracle Listener Service

我搜索了有关Oracle的每个网页,但我找不到解决方案。我认为这是我解决问题的最后机会。

请帮助我!

提前致谢。希望得到帮助!

2 个答案:

答案 0 :(得分:1)

在搜索了所有关于Oracle的论坛后,我可以获得帮助,我通过删除MSSQL的数据库网关解决了我的问题。我不知道发生了什么,但这不是最好的答案。至少我可以解决我的问题。

感谢大家的帮助!

答案 1 :(得分:0)

您是否尝试过解决方案,因为(很多)Windows问题已解决:重新启动计算机?