博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle监听错误与hosts文件配置
阅读量:6238 次
发布时间:2019-06-22

本文共 1148 字,大约阅读时间需要 3 分钟。

      ORACLE数据库的监听起不来报错,很快解决了。在这里记录一下遇到的问题,方便备查。在数据库listener.ora文件里面HOST后面到底应该输入IP地址还是主机名?很多人可能有不同的做法。我的经验是最好使用主机名。比如说,一个机器绑定的不只一个IP地址,你在HOST后面写的是IP地址,那么ORACLE的listener只会监听指定IP地址的访问请求,本机其它IP地址的连接都会拒绝的。而且创建监听的时候,listener.ora文件默认创建的就是主机名。在listener.ora文件里HOST后面如果是主机名,那么就会与/etc/hosts这个文件扯上关系了。

这次出现的问题,就是因为研发人员不小心修改了主机名,而在/etc/hosts文件里又没有修改主机名和IP的对应造成的。

我们看报错截图:

当你查找1521端口时发现PMON(缺省情况下,PMON 向TCP/IP 的缺省本地地址- 端口1521- 处的本地监听程序注册服务信息)

# netstat -antp | grep 1521
tcp      0   1    192.168.1.252:36842         202.106.0.20:1521     SYN_SENT 28794/ora_pmon_orcl
检查202.106.0.20这个ip到底哪来的?
在 /etc/hosts 里居然多了这条记录
202.106.0.20         wxtest
不知道是谁加上的,从来没有这个部署需求。先不管了,直接把这条语句注释掉
重新启动数据库,重新启动监听,一切正常了!
附图:

补充:/etc/hosts文件相关的几个错误。

1、/etc/hosts文件oracle没有权限访问
这时候oracle用户去启动监听会报如下错误
TNS-12545: Connect failed because target host or object does not exist
TNS-12560: TNS:protocol adapter error
TNS-00515: Connect failed because target host or object does not exist
Linux Error: 13: Permission denied

2、/etc/hosts文件里面的主机名对应的IP地址没有正确在本机绑定

这时候oracle用户去启动监听会报如下错误
TNS-12535: TNS:operation timed out
TNS-12560: TNS:protocol adapter error
TNS-00505: Operation timed out
Linux Error: 110: Connection timed out

转载地址:http://tpbia.baihongyu.com/

你可能感兴趣的文章
我的友情链接
查看>>
我的友情链接
查看>>
mysql导出表结构
查看>>
Log4j使用总结
查看>>
Mysql主主复制原理及配置
查看>>
nginx编译安装
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
模拟video播放器
查看>>
防杀病毒的12项纪律
查看>>
拦截器的执行顺序
查看>>
Nginx+Tomcat实现动静分离
查看>>
Linux网络配置
查看>>
python之九九乘法表
查看>>
使用Ubuntu安装图形界面
查看>>
ios 修改导航条返回按钮
查看>>
iOS 应用上传所需 Icon图片大小
查看>>
[实战]MVC5+EF6+MySql企业网盘实战(14)——思考
查看>>
uva-10827
查看>>
UVA-712-满二叉树
查看>>