记录一次一次监听无法连接的错误

$ lsnrctl status

LSNRCTL for IBM/AIX RISC System/6000: Version 9.2.0.1.0 – Production on 21-JAN-2011 10:59:25

Copyright (c) 1991, 2002, Oracle Corporation.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=aixsvr)(PORT=1521)))
    TNS-12618: TNS:versions are incompatible

上述报错是因为端口号1521已经被另一个监听使用。于是修改该监听的listener.ora文件,将端口改为1555.
    vi listener.ora
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = aixsvr)(PORT = 1555))
            (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
          )
        )
      )

SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = orcl)
          (ORACLE_HOME = /ora9i/app/oracle)
      ))
    $ lsnrctl reload

LSNRCTL for IBM/AIX RISC System/6000: Version 9.2.0.1.0 – Production on 21-JAN-2011 10:55:39

Copyright (c) 1991, 2002, Oracle Corporation.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=aixsvr)(PORT=1555)))
    TNS-12541: TNS:no listener
     TNS-12560: TNS:protocol adapter error
      TNS-00511: No listener
       IBM/AIX RISC System/6000 Error: 79: Connection refused
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
    TNS-12541: TNS:no listener
     TNS-12560: TNS:protocol adapter error
      TNS-00511: No listener
       IBM/AIX RISC System/6000 Error: 79: Connection refused

一开始的思路如下:
    IBM/AIX RISC System/6000 Error: 79: Connection refused错误是不是表示1555端口未开放?用telnet测试:
    telnet aixsvr 1555
    $ telnet aixsvr 1555
    Trying…
    telnet: connect: A remote host refused an attempted connect operation.
    $ telnet aixsvr 1521
    Trying…
    Connected to aixsvr.
    Escape character is '^]'.
    看到以上结果就想到是1555端口的问题,实际上这个思路是错误的,因为单纯的说端口开不开放是没有意义的,端口必须与程序或服务结合起来才有意义。即要先启动1555上的监听才能使用telnet aixsvr 1555的方式测试该端口是否可以连接。没有服务或程序支持的端口是无法连接的
    解决办法:
    修改了listener.ora的端口,使用reload,可能因为内存中有相关信息,导致了reload失败,修改一下监听的名字,再修改回来,然后重启监听,使用lsnrctl stop和lsnrctrl start就可以了。


请使用浏览器的分享功能分享到微信等