【问题标题】:ERROR: ORA-12560: TNS:protocol adapter error错误:ORA-12560:TNS:协议适配器错误
【发布时间】:2019-07-20 07:41:50
【问题描述】:

您好,今天我更新了 Windows 后,我的 Oracle 数据库不再启动。我在这个网站上尝试了相同主题的不同解决方案,但到目前为止没有任何效果。

  1. 当我使用 SQL*Plus 连接时,我得到:

    错误: ORA-12560: TNS: 协议适配器错误

  2. 当我检查我的服务时

我再也看不到我的听众了……

  1. 我的 listener.ora

  1. lsnrctl 服务 && lsnrctl 状态(两者)

TNS-12541: TNS:no listener TNS-12560: TNS:protocol adapter error TNS-00511: No listener 64-bit Windows Error: 61: Unknown error

最后:

更新前没有任何改变...

在更新之前一切正常...

更新 20/07/2019 12:03

在我尝试了解决方案之后:liberidu.com/blog/2015/12/07/howto-unable-to-openscmanager-err5

现在我得到: 一项新服务:

并且

当我使用 sql/plus 连接时,我仍然收到以下消息: 错误: ORA-12560: TNS: 协议适配器错误

但是当我连接到 PlSQL Developer 我得到:ORA-12518, TNS:listener could not hand off client connection

【问题讨论】:

  • 当你尝试启动监听器时会发生什么?数据库启动了吗?
  • 嗨罗伯特,正在启动 tnslsnr:请稍候... 无法打开 OpenSCManager:err=5 TNS-12560:TNS:协议适配器错误 TNS-00530:协议适配器错误
  • 以前没见过,但这个人似乎有同样的问题:liberidu.com/blog/2015/12/07/howto-unable-to-openscmanager-err5
  • 更新:我正在尝试博客中的解决方案,非常感谢罗伯特,现在我得到 tns 监听器无法切换​​客户端连接,目前我仍在调试它。如果我有更多更新,我会尽快写:)
  • 请不要粘贴截图。以格式化文本的形式提供错误消息和设置。

标签: database oracle service window tnsnames


【解决方案1】:

检查您是否以管理员身份运行 CMD,在我的情况下,以管理员身份运行 cmd 后,它可以工作。

在没有管理员的情况下运行 CMD(出现错误 TNS-00530):

C:\Users\me>LSNRCTL.EXE start

LSNRCTL for 64-bit Windows: Version 12.2.0.1.0 - Production on 01-AUG-2020 17:43:44

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

Starting tnslsnr: please wait...

Unable to OpenSCManager: err=5
TNS-12560: TNS:protocol adapter error
 TNS-00530: Protocol adapter error

以管理员身份运行 CMD:

C:\WINDOWS\system32>LSNRCTL.EXE start

LSNRCTL for 64-bit Windows: Version 12.2.0.1.0 - Production on 01-AUG-2020 17:36:24

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

Starting tnslsnr: please wait...

Enter User's password :
TNSLSNR for 64-bit Windows: Version 12.2.0.1.0 - Production
...
...
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
Services Summary...
Service "ORCL" has 1 instance(s).
  Instance "ORCL", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

【讨论】:

  • 这行得通。我以非管理员用户身份运行 lsnrctl。如果没有管理员权限,启动 tns 侦听器会失败并出现一个不太有用的模糊错误。
【解决方案2】:

windows出现此错误,需要启动instanceName关联的服务。

此外,您需要将de instance_name 或service_name 注册到监听器,以便在端口1521 或其他端口上的监听器上进行监听。

这可以通过使用 local_listener 参数指向 IP 192.168.1.5 端口 1521 的动态注册来完成。类似这样:alter system set local_listener= ADDRESS = (PROTOCOL=TCP)(HOST=hostname)(PORT=1521)) ';

问候。

【讨论】:

    【解决方案3】:

    查看 dbhome_1\NETWORK\ADMIN\tnsnames.ora 中的信息

    在 Host 中使用机器名或 ip 并提供配置的端口

    ORCL = (描述= (地址 = (协议 = TCP)(主机 = ???)(端口 = ???)) (连接数据 = (服务器 = 专用) (SERVICE_NAME = orcl) ) )

    【讨论】:

      【解决方案4】:

      如果“tnsnames.ora”和“listener.ora”文件看起来不错,但仍然出现错误,请尝试以下简单步骤

      Go to start->Run [windows button + r]
      Type "services.msc"
      From the services window, try to find "OracleOraDb11g_home1TNSListener"
      Just right click on it and click on "start"
      Check the status in command prompt [c:\windows\System32> lsnrctl status]
      

      希望听众倾听!

      现在尝试打开数据库

      【讨论】:

        猜你喜欢
        • 2011-04-06
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 2012-01-04
        相关资源
        最近更新 更多