问题现象
顾问重启数据库服务器的监听,发现监听起来,只显示unknown状态。通过pl/sql连接,提示“无监听程序”,通过netca重建监听的时候提示:为该监听程序提供的信息正由此计算机上的其他软件使用。 换了多个端口也是如此。
问题分析
可能的原因有以下几种:
1、监听日志listener.log达到4G,属于windows机器上的bug
2、数据库连接数processes达到瓶颈(最大值)了
3、应用服务器到数据库服务器之间的网络异常
4、数据库监听端口1521等被占用
5、Win环境的/etc/hosts文件ip和主机名映射错误
1、监听状态检查为unknown
2、监听端口占用情况检查
3、经过排查,最终定位为win环境的/etc/hosts中的ip配置错误。截图如下:(最开始xxx.xxx.xxx.xx ncdata这一行没有注释掉,导致重启监听、netca重建监听时,一直报错)
4、注释掉C:\Windows\System32\drivers\etc\hosts中的错误ip。截图如下:
5、重启监听,恢复正常
6、 起应用验证、pl/sql等工具连接验证,均正常。
解决方案
修改C:\Windows\System32\drivers\etc\hosts中的配置为真实IP地址,或者注释掉。