我安装了本地一个orcl数据库服务,lisener.ora内容如下:
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )
可以连接成功,
现在我通过net configuration assistant添加了另一个远程机器上的数据库服务后,连接不上,报
ORA-12541: TNS: 无监听程序
这是为什么?

解决方案 »

  1.   

    不用单独配置监听器,产生上述错误多半是因为监听程序没有启动。
    执行命令:lsnrctl start。
      

  2.   

    晕倒为什么db下的tnsnames.ora和listener.ora与client下的tnsnames.ora都配置成localhost结果报找不到监听器,
    要是把client改成本机的ip地址,不是localhost就可以,不知道为什么还有10g分客户端和服务器端,感觉没有11g爽~
      

  3.   

    原来客户端是不需要配置监听器的。只需要配置tnsnames就可以了。。而且10g的服务器和客户端都是本机的话,host都是localhost会连不上。。以前用11g貌似没有这样的现象~  求解释
      

  4.   

    --tnsname.ora
    ORCL =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = orcl)
        )
      )
    --listener.ora
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
          (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
        )
      )
    C:\Documents and Settings\apps>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期四 6月 16 19:23:34 2011Copyright (c) 1982, 2005, Oracle.  All rights reserved.SQL> conn /as sysdba
    已连接。
    SQL>看起来是可以的,我是oracle10.2的。
    现在我通过net configuration assistant添加了另一个远程机器上的数据库服务后,连接不上,报
    ORA-12541: TNS: 无监听程序
    这是为什么?是你这台机器 要连接别的机器 吧!!
      

  5.   

    是的,
    通过 conn /as sysdba 我也是能连接的,但conn sys/sys@orcl as sysdba就报错了。