Oracle数据库无法连接,程序报ORA-12541:TNS:无监听启动

Oracle数据库无法连接,程序报ORA-12541:TNS:无监听启动

问题描述:有一台windows服务器,安装有oracle11g数据库上午用还行,下午突然不能使用了,快照恢复之前版本,没过两天,用PL/SQL连接缓慢,基本连接不上,程序连接报ORA-12541无监听启动错误。
在服务器里面启动OracleDBConsoleorcl 无法启动!

Oracle数据库无法连接,程序报ORA-12541:TNS:无监听启动

排查思路:安装常规的方法,重启监听,查看监听服务器状态,均无法连接。既然恢复快照能用,基本可以锁定为某个文件或者表空间太大导致监听无法启动,根据这个思路发现是listener.log文件过大(达到4G)导致的
Oracle数据库无法连接,程序报ORA-12541:TNS:无监听启动
oracle数据库监听启动、状态、停止方法
启动监听:lsnrctl start
查看监听:lsnrctl status
停止监听:lsnrctl stop

问题解决:到oracle数据库安装目录下面,该机器为(E:\app\Administrator\diag\tnslsnr\windows\listener\trace),找到listener.log文件,进行删除即可。

注意:删除的时候会提示该文件正在使用中,应该将监听停止之后才能删除。

扩展:监听日志文件如果不需要可以关闭,可通过修改监听配置文件关闭监听日志。
修改监听日志文件:%ORACLE_HOME%\NETWORK\admin\listener.ora
在此文件末尾添加如下内容:
LOGGING_LISTENER = OFF
Oracle数据库无法连接,程序报ORA-12541:TNS:无监听启动

修改文件之后,重启监听,若无法启动可以使用命令 lsnrctl reload 重载监听配置。

上一篇:VUE中事件触发无法监听的bug


下一篇:修改mysql、oracle、sqlserver默认端口