Welcome 微信登录

首页 / 数据库 / MySQL / TNS-12542 TNS-12560 TNS-00512故障解决

查看数据库监听状态不对
$ lsnrctl statusLSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production on 05-NOV-2012 08:54:08Copyright (c) 1991, 2010, Oracle.  All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
 IBM/AIX RISC System/6000 Error: 79: Connection refused
然后手动启动数据库报如下错误:
$ lsnrctl startLSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production on 05-NOV-2012 08:54:12Copyright (c) 1991, 2010, Oracle.  All rights reserved.Starting /oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...TNSLSNR for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production
System parameter file is /oracle/product/10.2.0/db_1/network/admin/listener.ora
Log messages written to /oracle/product/10.2.0/db_1/network/log/listener.log
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521)))
TNS-12542: TNS:address already in use
 TNS-12560: TNS:protocol adapter error
  TNS-00512: Address already in use
 IBM/AIX RISC System/6000 Error: 67: Address already in useListener failed to start. See the error message(s) above.../oracle/product/10.2.0/db_1/network/trace/listener.trc明明监听没启动起,却说已经在运行了,后来终于找到原因,网上看到别人也碰到这个问题,说是HOSTS文件设置有问题,查看本机主机名和hosts文件,果然有问题,两个IP地址指向了同一个主机名,将一台主机删除后,再启动监听,一切OK。用root用户进行修改:
# cat /etc/hosts# Internet Address      Hostname        # Comments
# 192.9.200.1         net0sample      # ethernet name/address
# 128.100.0.1         token0sample    # token ring name/address
# 10.2.0.2              x25sample     # x.25 name/address
# 2000:1:1:1:209:6bff:feee:2b7f       ipv6sample      # ipv6 name/address
127.0.0.1             loopback localhost      # loopback (lo0) name/address
192.168.101.189 test
192.168.101.190 test再次启动监听:
$ lsnrctl startLSNRCTL for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production on 05-NOV-2012 08:58:47
Copyright (c) 1991, 2010, Oracle.  All rights reserved.Starting /oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...TNSLSNR for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production
System parameter file is /oracle/product/10.2.0/db_1/network/admin/listener.ora
Log messages written to /oracle/product/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=test)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                   LISTENER
Version                 TNSLSNR for IBM/AIX RISC System/6000: Version 10.2.0.5.0 - Production
Start Date                05-NOV-2012 08:58:49
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level             off
Security                  ON: Local OS Authentication
SNMP                      ON
Listener Parameter File /oracle/product/10.2.0/db_1/network/admin/listener.ora
Listener Log File       /oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=test)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully总结:/etc/hosts文件设置很重要,这里设置不正确,很多地方都要出错,特别是RAC,会报很多奇怪的错误,配置的时候要多注意。Oracle表与索引的分析及索引重建Oracle 临时表空间的增删改查相关资讯      Oracle数据库基础教程 
  • 在Oracle数据库中插入含有&符号的  (03/06/2013 09:20:14)
  • Oracle 执行计划更改导致数据加工  (02/13/2013 14:45:04)
  • 判断Oracle Sequence是否存在  (02/13/2013 14:32:26)
  • Oracle数据库中无法对数据表进行  (02/26/2013 14:24:58)
  • Oracle 在同一台主机上建立用户管  (02/13/2013 14:40:58)
  • Oracle em 无法启动,报not found错  (02/13/2013 14:29:48)
本文评论 查看全部评论 (0)
表情: 姓名: 字数