一个奇怪的注意事项TNS-12545 TNS-12560 TNS-00515
近来的reportDB无法从一开始就与系统收听,比较奇怪的现象。
由于server有听众的一个实例上正常启动,这是不是从开始监听器的实例手动启动是正常的。所以写下来未能找到离奇写的原因。
1、故障现象
Starting CRON daemondone
Oracle 10g auto start/stop
Startup "USMTHLY" listener.LSNRCTL for Linux: Version 10.2.0.3.0 - Production on 08-JUL-2014 17:05:49Copyright (c) 1991, 2006, Oracle. All rights reserved.Starting /users/oracle/OraHome10g/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 10.2.0.3.0 - Production
System parameter file is /users/oracle/OraHome10g/network/admin/listener.ora
Log messages written to /users/oracle/OraHome10g/network/log/listener_usmthly.log
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.101.1.106)(PORT=1520)))
TNS-12545: Connect failed because target host or object does not existTNS-12560: TNS:protocol adapter errorTNS-00515: Connect failed because target host or object does not existLinux Error: 99: Cannot assign requested address#上面的错误信息了来自系统启动日志。相同出如今该实例的监听器日志里。 #故障环境
oracle@sysreportDB:/users/oracle> cat /etc/issueWelcome to SUSE Linux Enterprise Server 10 SP4 (x86_64) - Kernel \r (\l).oracle@sysreportDB:/users/oracle> sqlplus -vSQL*Plus: Release 10.2.0.3.0 - Production#server启动后。检查数据库实例,2个实例都已成功启动
oracle@sysreportDB:~> ps -ef | grep pmon | grep -v grep
oracle 4916 1 0 Jul08 ? 00:00:00 ora_pmon_USMTHLY
oracle 5605 1 0 Jul08 ? 00:00:00 ora_pmon_USBO2oracle@sysreportDB:~> ps -ef | grep lsnr| grep -v grep #只唯独usbo2的监听被启动
oracle 5597 1 0 Jul09 ? 00:00:00 /users/oracle/OraHome10g/bin/tnslsnr listener_USBO2 -inherit
2、故障分析
oracle@sysreportDB:~> oerr tns 12545
12545, 00000, "Connect failed because target host or object does not exist"
// *Cause: The address specified is not valid, or the program being
// connected to does not exist.
// *Action: Ensure the ADDRESS parameters have been entered correctly; the
// most likely incorrect parameter is the node name. Ensure that the
// executable for the server exists (perhaps "oracle" is missing.)
// If the protocol is TCP/IP, edit the TNSNAMES.ORA file to change the
// host name to a numeric IP address and try again.
oracle@sysreportDB:~> oerr tns 12560
12560, 00000, "TNS:protocol adapter error"
// *Cause: A generic protocol adapter error occurred.
// *Action: Check addresses used for proper protocol specification. Before
// reporting this error, look at the error stack and check for lower level
// transport errors. For further details, turn on tracing and reexecute the
// operation. Turn off tracing when the operation is complete.
oracle@sysreportDB:~> oerr tns 00515
00515, 00000, "Connect failed because target host or object does not exist"
// *Cause: The address specified is not valid, or the program being
// connected to does not exist.
// *Action: Ensure the ADDRESS parameters have been entered correctly; the
// most likely incorrect parameter is the node name. Ensure that the
// executable for the server exists (perhaps "oracle" is missing.)#上面的三个错误号描写叙述信息表明该故障与主机名或IP地址有关,须要检查是否为有效的IP或主机名
#以下查看监听器及TNSNAMES的配置
oracle@sysreportDB:/users/oracle/OraHome10g/network/admin> more listener.ora
SID_LIST_LISTENER_USMTHLY =(SID_LIST =(SID_DESC =(sid_name=USMTHLY)(oracle_home = /users/oracle/OraHome10g)))LISTENER_USMTHLY =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.101.1.106)(PORT = 1520)))))SID_LIST_LISTENER_USBO2 =(SID_LIST =(SID_DESC =(sid_name=USBO2)(oracle_home = /users/oracle/OraHome10g)))LISTENER_USBO2 =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.101.1.106)(PORT = 1504)))))oracle@sysreportDB:/users/oracle/OraHome10g/network/admin> more tnsnames.ora
USMTHLY=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.101.1.106)(PORT=1520))(CONNECT_DATA=(SERVICE_NAME=USMTHLY)))USBO2=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.101.1.106)(PORT=1504))(CONNECT_DATA=(SERVICE_NAME=USBO2)))
#从上面的配置来看,配置无异常。
#以下查看本机host及IP信息,从以下的描写叙述来看,主机host配置无异常
oracle@sysreportDB:~> more /etc/hosts
127.0.0.1 localhost# special IPv6 addresses
::1 localhost ipv6-localhost ipv6-loopbackfe00::0 ipv6-localnet
ff00::0 ipv6-mcastprefix
ff02::1 ipv6-allnodes
ff02::2 ipv6-allrouters
ff02::3 ipv6-allhosts
10.101.1.106 sysreportDB.2goasp.com sysreportDB oracle@sysreportDB:~> hostname
sysreportDB
# Author : Leshami
# Blog : http://blog.csdn.net/leshami#以下是其IP信息
oracle@sysreportDB:/var/log> ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:70:82:63inet addr:10.101.1.106 Bcast:10.201.1.255 Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:5763651 errors:0 dropped:0 overruns:0 frame:0TX packets:802254 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:8102327746 (7726.9 Mb) TX bytes:88597013 (84.4 Mb)lo Link encap:Local Loopback #有环路能正常TX,RXinet addr:127.0.0.1 Mask:255.0.0.0UP LOOPBACK RUNNING MTU:16436 Metric:1RX packets:92972 errors:0 dropped:0 overruns:0 frame:0TX packets:92972 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX bytes:4993723 (4.7 Mb) TX bytes:4993723 (4.7 Mb)#尝试手动启动监听,手动启动监听无异常
oracle@sysreportDB:/var/log> lsnrctl start listener_USMTHLYLSNRCTL for Linux: Version 10.2.0.3.0 - Production on 08-JUL-2014 17:10:49Copyright (c) 1991, 2006, Oracle. All rights reserved.Starting /users/oracle/OraHome10g/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 10.2.0.3.0 - Production
System parameter file is /users/oracle/OraHome10g/network/admin/listener.ora
Log messages written to /users/oracle/OraHome10g/network/log/listener_usmthly.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sysreportDB.2goasp.com)(PORT=1520)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sysreportDB.2goasp.com)(PORT=1520)))
STATUS of the LISTENER
------------------------
Alias listener_USMTHLY
Version TNSLSNR for Linux: Version 10.2.0.3.0 - Production
Start Date 08-JUL-2014 17:10:50
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /users/oracle/OraHome10g/network/admin/listener.ora
Listener Log File /users/oracle/OraHome10g/network/log/listener_usmthly.log
Listening Endpoints Summary...(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sysreportDB.2goasp.com)(PORT=1520)))
Services Summary...
Service "USMTHLY" has 1 instance(s).Instance "USMTHLY", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully#通过上面的測试可以看出,监听器可以正常启动也就是说监听器的配置应该是OK的。
#另外一点发现,系统启动日志里边有127.0.0.2的环路。不知道怎么会有127.0.0.2 Setting up network interfaces: lo lo IP address: 127.0.0.1/8 IP address: 127.0.0.2/8 oracle@sysreportDB:/var/log> ping 127.0.0.2 #环路127.0.0.2 OK PING 127.0.0.2 (127.0.0.2) 56(84) bytes of data. 64 bytes from 127.0.0.2: icmp_seq=1 ttl=64 time=0.034 ms
3、故障解决
#对于上面的问题实在是百思不得其解。就差使用sqlnet trace。
#以下尝试将监听器配置文件内IP地址使用主机名来取代,居然成功鸟。
#例如以下2种方式都能够将监听随系统启动而启动。一个是主机名,一个是full主机名#LISTENER_USMTHLY =
# (DESCRIPTION_LIST =
# (DESCRIPTION =
# (ADDRESS_LIST =
# (ADDRESS = (PROTOCOL = TCP)(HOST = sysreportDB)(PORT = 1520))
# )
# )
# )LISTENER_USMTHLY =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = sysreportDB.2goasp.com)(PORT = 1520)))))#高兴之余,查看系统日志,汗,还是有错误,这次的错误是TNS-12543,目标主机不可达。
#怀疑是否hosts文件里是否存在异常字符。于是尝试重建Hosts文件。重建后错误消息依然例如以下。 Starting CRON daemondone Oracle 10g auto start/stop Starting Oracle10g: Startup "USMTHLY" listener. LSNRCTL for Linux: Version 10.2.0.3.0 - Production on 09-JUL-2014 17:15:47 Copyright (c) 1991, 2006, Oracle. All rights reserved. Starting /users/oracle/OraHome10g/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 10.2.0.3.0 - Production System parameter file is /users/oracle/OraHome10g/network/admin/listener.ora Log messages written to /users/oracle/OraHome10g/network/log/listener_usmthly.log Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sysreportDB.2goasp.com)(PORT=1520))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sysreportDB)(PORT=1520))) TNS-12543: TNS:destination host unreachable TNS-12560: TNS:protocol adapter error TNS-00513: Destination host unreachable Linux Error: 101: Network is unreachable #终于。此题临时无解,没有找到原因。不影响自启动而已。
4、小结
a、对于TNS-12545。TNS-00515应首先考虑是否使用了合适的IP。主机名。应检查serverhost文件。网络配置等
b、Step a检查完后应考虑是否正确的配置了监听以及tnsnames
c、对于上述该类错误,应同一时候检查及分析监听器日志
d、对于client出现TNS-12545,TNS-00515等,考虑client是否能将主机转换成相应的IP(clienttnsnames.ora使用主机名的情形时)
e、有关Oracle网络配置相关能够參考:http://blog.csdn.net/leshami/article/category/828434
版权声明:本文博客原创文章,博客,未经同意,不得转载。
一个奇怪的注意事项TNS-12545 TNS-12560 TNS-00515相关推荐
- mysql数据库tns配置_oracle数据库tns配置方法详解
TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,下面看一如何配置它吧 TNS简要介绍与应用 Ora ...
- oracle tns和sid,oracle tns listener配置 (附TNS介绍)
一.tnsnames.ora 用途:(用于客户端)告诉oracle client应该从哪连.连到哪.TEST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)( ...
- MinGW 和 MSVC 下,使用 FILE 类型的一个奇怪的问题
今天遇到一个奇怪的问题. 开发环境: 1. Eclipse CDT,使用 MinGW 的 gcc 编译器和函数库 2. Visual Studio 2008 问题描述: 在 eclipse cdt 中 ...
- java线程未执行完成,java线程测试-一个奇怪的景况-执行未完成直接结束了
java线程测试-一个奇怪的状况-执行未完成直接结束了 import org.junit.Test; /** * 同步线程测试 * @author jview * */ public class te ...
- Delphi XE 使用 MySQL 数据库一个奇怪的问题
Delphi XE 使用 MySQL 数据库一个奇怪的问题 我用的是自带的 ADO 组件连接 MYSQL ,连接很简单,如下: 1.下载一个 MYSQL 驱动安装上 下载地址 2.连接串 Adoc.C ...
- dedecms在linux主机下的一个奇怪错误
扬帆blog原创文章,转载请保留原地址:http://www.wesoho.com/article/asp/2874.htm dedecms上传到linux空间后遇到一个问题,所有header转向失效 ...
- oracle tns 连接关闭,ORA-12537 TNS:连接关闭
今天遇到:ORA-12537 TNS:连接关闭,监听正常,集群正常,数据库正常,查了一下才发现问题. LISTENER日志报错 TNS-12546: TNS:permission denied TNS ...
- 汇编语言:实验8分析一个奇怪的程序
实验介绍 实验8 分析一个奇怪的程序 分析下面的程序,在运行前思考:这个程序可以正确返回吗? 运行后再思考:为什么是这种结果? 实验代码 ;实验8 分析一个奇怪的程序 ;分析下面的程序,在运行前思考: ...
- 一个奇怪的方法解决华为ENSP模拟器路由器启动后命令行一直“#”的问题
一个奇怪的方法解决华为ENSP模拟器路由器启动后命令行一直"#"的问题 参考文章: (1)一个奇怪的方法解决华为ENSP模拟器路由器启动后命令行一直"#"的问题 ...
最新文章
- git config命令使用
- 1.8 Remove
- 解决windows文件在linux系统中显示乱码的问题
- nagios报警延迟的解决--flapping state
- 人生永无止境的意思是什么_什么是莫比乌斯指环?莫比乌斯环的诅咒
- 去除网页FLASH单击并激活此控件解决办法
- 20145305 《Java程序设计》第7周学习总结
- 基于Adaboost实现鸢尾花数据集分类
- MyEclipse2015Stable2.0安装破解
- 信息学奥赛一本通 1135:配对碱基链 | OpenJudge NOI 1.7 07
- 链队列出入队列c语言程序,链队列简单操作(c语言)
- h5离线缓存与浏览器缓存的区别
- Movavi Photo Editor零失败更改图片背景教程
- IT公司对员工电脑监控一般使用什么软件?
- 5G如何成为相关行业的创新引擎,提升服务和盈利水平
- ubuntu使用命令粉碎文件
- Python tkinter Canvas画布完全攻略
- ApacheCN 翻译活动进度公告 2019.6.15
- 微信小程序input层级穿透解决
- Cirium称,2020年航空公司准点率表现良好,但客运航班数只有2019年的一半
热门文章
- Python数据预处理之异常值的处理——【自定义的three_sigma()函数、boxplot()方法】
- C++ STL 线性容器的用法
- 推荐算法--利用用户标签数据(04)
- 《C++ Primer 5th》笔记(1 / 19):C++基础
- java五子棋源代码_java 五子棋游戏源码
- python如何运用ols_使用OLS回归(Python,StatsModels,Pandas)预测未来值
- 代码编辑器Sublime Text 可以跨平台(linux,window,os x)
- 【ffmpeg for wince】音视频编解码多平台移植(for window/wince)
- 使用Cygwin实现vlc 1.0.5的wince移植
- axios中出现两次请求,OPTIONS请求和GET请求