TNS-12541: TNS: 无监听程序 TNS-12560: TNS: 协议适配器错误

Posted 南国之恋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TNS-12541: TNS: 无监听程序 TNS-12560: TNS: 协议适配器错误相关的知识,希望对你有一定的参考价值。

Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\\Users\\Administrator>lsnrctl

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 28-4月 -2023 11:2
9:22

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

欢迎来到LSNRCTL, 请键入"help"以获得信息。

LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=WIN-HPFFA9BLMN7)(PORT=1521)
))
TNS-12541: TNS: 无监听程序
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听程序
64-bit Windows Error: 61: Unknown error
LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=WIN-HPFFA9BLMN7)(PORT=1521)
))
LISTENER 的 STATUS

 

修改TNSNAME.ora文件,好了。

ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.58)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

Oracle不能连接故障排除[TNS-12541: TNS: 无监听程序]

1. 情况:Oracle安装后使用的好好的,放假关机后重新开机居然发现不能正常连线,客户报错:TNS-12541: TNS: 无监听程序

2. 检查:
         1. 服务器上Oracle启动正常
         2. 使用tnsping检查,发现服务器上使用 【tnsping 配置名称】返回正常,而使用【tnsping IP】则返回失败,
             怀疑:1521未开启?  使用:netstat -a -n | grep 1521 发现端口正常开启
 3. 解决:百度搜索各种情况后,最后发现是:listener.ora 中的host必须是电脑名称,原配置文件中为:localhost,修改后重启监听就可以了
     以下红色文字为修改的地方。

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = MyComputerName)(PORT = 1521))
)
)

-------------------

Linux操作还是不太熟,以上看上去简单,在Linux里操作各种命令,都得到处百度...
记录下备查:
取得电脑名称:hostname

检查端口是否开放:
   1. telnet ip port

   2. netstat -a -n | grep 1521

root登录后su oracle不能使用sqlplus等Oracle工具,因其不能获得oracle的环境变量($ORACLE_HOME等),
处理一:
   su oracle 后 cd ~
   more .profile 查看oracle的环境变量,
   回到root下将oracle的 .profile中的Oracle配置加入到/etc/profile里,然后:source /etc/profile
   再次 su oracle后可以使用oracle工具了
 处理二:建议直接使用Oracle连线linux,简单直接

以上是关于TNS-12541: TNS: 无监听程序 TNS-12560: TNS: 协议适配器错误的主要内容,如果未能解决你的问题,请参考以下文章

TNS-12541: TNS: 无监听程序 TNS-12560: TNS: 协议适配器错误

请教Oracle11监听无法自动启动怎么办?总提示TNS-12541: TNS: 无监听程序 错误。

TNS-12541:无监听程序。连接远程服务器上的oracle数据库,提示无监听程序。

PL/SQL连接oracle提示无监听程序

诡异的TNS-12541:TNS:nolistener

ORA-12541 TNS 无监听程序