plsql developer连接时提示ORA-12541: TNS:no listener

时间:2022-01-06 06:32:08
昨天安装了orcle10g时,用plsql developer还可以连入的,但今天重启后就出现了这个提示,用iSqlplus连接时用127.0.0.1/test可以连接(我是本机登入的),但直接输test或192.168.128.39/test (192.168.128.39是本机IP地址)也不行,也提示ORA-12541: TNS:no listener,我的listener.ora如下:
# listener.ora Network Configuration File: E:\oracle\product\10.1.0\Db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = E:\oracle\product\10.1.0\Db_1)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = webserver)(PORT = 1521))
      )
    )
  )

试过用
tnsping 127.0.0.1正常
但用IP 192.168.128.39或 webserver连接出错提示如下:
TNS Ping Utility for 32-bit Windows: Version 10.1.0.2.0 - Production on 03-2月 -
2010 12:37:11

Copyright (c) 1997, 2003, Oracle.  All rights reserved.

Used parameter files:
E:\oracle\product\10.1.0\Db_1\network\admin\sqlnet.ora

Used EZCONNECT adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=webserver))(ADDRE
SS=(PROTOCOL=TCP)(HOST=192.168.128.39)(PORT=1521)))
TNS-12541: TNS:no listener

晕.....

用netstat查看端口
  Proto  Local Address          Foreign Address        State
  TCP    webserver:1047         webserver:1521         ESTABLISHED
  TCP    webserver:1048         webserver:1521         ESTABLISHED
  TCP    webserver:1521         webserver:1047         ESTABLISHED
  TCP    webserver:1521         webserver:1048         ESTABLISHED
  TCP    webserver:5152         webserver:1781         CLOSE_WAIT

防火墙全关了....还是不行...真没办法了....请大侠救命啊....

27 个解决方案

#1


ping 192.168.128.39

#2


服务名与主机名都是webserver?
要看tnsname.ora配置,确保配置没有问题

#3


我只是本机测试...本机IP是192.168.128.39 ,Oracle也是装在这台机...本机ping 自己的IP地址(也就是192.168.128.39)肯定是通的,但tnsping 192.168.128.39就异常,但tnsping 127.0.0.1就正常

tnsname.ora如下:

# tnsnames.ora Network Configuration File: E:\oracle\product\10.1.0\Db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

TEST =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = webserver)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = test)
    )
  )

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

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )


#4


重新启动服务
重新启动监听

重新启动数据库

#5


请问怎么样写,我是菜鸟,刚认识orcl....之前一直用sqlserver,觉得差异好大...

#6


lsnrctl status查看监听状态。看看你的监听程序是否启动

#7


tnsping 是对你配的TNS进行PING测试的,即查看数据库实例是否可以连通的。

你应该是tnsping TEST,看看是否能连通。直接tnsping 127.0.0.1也有结果?

#8


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 32-bit Windows: Version 10.1.0.2.0 - Produ
ction
Start Date                03-2月 -2010 08:55:03
Uptime                    0 days 4 hr. 55 min. 13 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   E:\oracle\product\10.1.0\Db_1\network\admin\listener.o
ra
Listener Log File         E:\oracle\product\10.1.0\Db_1\network\log\listener.log

Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=8080))(Presentation=
HTTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=2100))(Presentation=
FTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=8080))(Presentation=
HTTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=2100))(Presentation=
FTP)(Session=RAW))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 2 handler(s) for this service...
Service "test" has 1 instance(s).
  Instance "test", status READY, has 1 handler(s) for this service...
Service "testXDB" has 1 instance(s).
  Instance "test", status READY, has 1 handler(s) for this service...
The command completed successfully

#9


那就是说你的监听程序已经启动了。。。

#10


你再尝试连接下数据库
sqlplus user/pwd@test

#11


user是你的数据库用户,pwd是该用户对应密码,请替换。。。

#12


to 楼上,我是在网上找的一个检测方法教的...原来是要实例名啊.

我刚才试了用tnsping test也是报一样的错...
tnsping 192.168.128.39/test
tnsping 192.168.128.39:1521/test
也是报一样的错...但
tnsping 127.0.0.1
tnsping 127.0.0.1/test
tnsping 127.0.0.1:1521/test
就都说OK

#13


C:\Documents and Settings\jackon>sqlplus system/sys123@test

SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 2月 3 14:02:07 2010

Copyright (c) 1982, 2004, Oracle.  All rights reserved.

ERROR:
ORA-12541: TNS:no listener


楼上的..有QQ吗?...加一下我好吗?.有几个问题想不通想请教

#14


tnsping test报的错是什么?

#15


qq:252047960

#16


TNS-12541: TNS:no listener

#17


你检查下你的ORACLE服务(OracleServiceTest)是否正确启动了。。。

#18


1.看监听是否起来了
2.tnsping test看是否通,不通的话就参看tnsnames.ora
3.装了oracle后不要随便修改机器名和ip地址

#19


机器名和IP地址都没改为...oracle servicetest是启动了的..

tnsping test不通
tnsnames.ora在上面写了.

#20


 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) 
这句有问题..............

修改为主机名字吧 HOST=主机名...................

#21


192.168.128.39 能直接PING 通不?

#22


这个还没有解决吗?你可以把你qq告诉我,我远程连过去帮你看一下。

#23


谢谢各位...重启数据库,重启监听后可以了...奇怪,我重启电脑反而不行.

#24


我也遇到了

#25


该回复于2010-08-06 16:48:58被版主删除

#26


同样问题学习了!

#27


重启服务,

#1


ping 192.168.128.39

#2


服务名与主机名都是webserver?
要看tnsname.ora配置,确保配置没有问题

#3


我只是本机测试...本机IP是192.168.128.39 ,Oracle也是装在这台机...本机ping 自己的IP地址(也就是192.168.128.39)肯定是通的,但tnsping 192.168.128.39就异常,但tnsping 127.0.0.1就正常

tnsname.ora如下:

# tnsnames.ora Network Configuration File: E:\oracle\product\10.1.0\Db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

TEST =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = webserver)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = test)
    )
  )

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

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )


#4


重新启动服务
重新启动监听

重新启动数据库

#5


请问怎么样写,我是菜鸟,刚认识orcl....之前一直用sqlserver,觉得差异好大...

#6


lsnrctl status查看监听状态。看看你的监听程序是否启动

#7


tnsping 是对你配的TNS进行PING测试的,即查看数据库实例是否可以连通的。

你应该是tnsping TEST,看看是否能连通。直接tnsping 127.0.0.1也有结果?

#8


Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 32-bit Windows: Version 10.1.0.2.0 - Produ
ction
Start Date                03-2月 -2010 08:55:03
Uptime                    0 days 4 hr. 55 min. 13 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   E:\oracle\product\10.1.0\Db_1\network\admin\listener.o
ra
Listener Log File         E:\oracle\product\10.1.0\Db_1\network\log\listener.log

Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=8080))(Presentation=
HTTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=2100))(Presentation=
FTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=8080))(Presentation=
HTTP)(Session=RAW))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=webserver)(PORT=2100))(Presentation=
FTP)(Session=RAW))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 2 handler(s) for this service...
Service "test" has 1 instance(s).
  Instance "test", status READY, has 1 handler(s) for this service...
Service "testXDB" has 1 instance(s).
  Instance "test", status READY, has 1 handler(s) for this service...
The command completed successfully

#9


那就是说你的监听程序已经启动了。。。

#10


你再尝试连接下数据库
sqlplus user/pwd@test

#11


user是你的数据库用户,pwd是该用户对应密码,请替换。。。

#12


to 楼上,我是在网上找的一个检测方法教的...原来是要实例名啊.

我刚才试了用tnsping test也是报一样的错...
tnsping 192.168.128.39/test
tnsping 192.168.128.39:1521/test
也是报一样的错...但
tnsping 127.0.0.1
tnsping 127.0.0.1/test
tnsping 127.0.0.1:1521/test
就都说OK

#13


C:\Documents and Settings\jackon>sqlplus system/sys123@test

SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 2月 3 14:02:07 2010

Copyright (c) 1982, 2004, Oracle.  All rights reserved.

ERROR:
ORA-12541: TNS:no listener


楼上的..有QQ吗?...加一下我好吗?.有几个问题想不通想请教

#14


tnsping test报的错是什么?

#15


qq:252047960

#16


TNS-12541: TNS:no listener

#17


你检查下你的ORACLE服务(OracleServiceTest)是否正确启动了。。。

#18


1.看监听是否起来了
2.tnsping test看是否通,不通的话就参看tnsnames.ora
3.装了oracle后不要随便修改机器名和ip地址

#19


机器名和IP地址都没改为...oracle servicetest是启动了的..

tnsping test不通
tnsnames.ora在上面写了.

#20


 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) 
这句有问题..............

修改为主机名字吧 HOST=主机名...................

#21


192.168.128.39 能直接PING 通不?

#22


这个还没有解决吗?你可以把你qq告诉我,我远程连过去帮你看一下。

#23


谢谢各位...重启数据库,重启监听后可以了...奇怪,我重启电脑反而不行.

#24


我也遇到了

#25


该回复于2010-08-06 16:48:58被版主删除

#26


同样问题学习了!

#27


重启服务,