“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务“和“ORA-12541:TNS:无监听程序“问题处理

问题出现原因2个:

前提:服务器oracle服务和监听服务均正常启动但仍报错。

1. 监听日志过大(超过4G):

   trace 日志目录:..\Oracle11gDB\diag\tnslsnr\SC-201703152226\listener\trace\listener.log

如果监听日志过大,超过4G,数据库会出现各种问题,包括监听启动慢、PLsql连接慢、外部需连接数据库应用系统反应慢等问题,处理时可直接重命名listener.log为listener_bak.log(需先关闭服务),重启监听时会重新生成一个新的listener.log文件。

如果直接删除或重命名后,监听启动失败,可进行以下操作清除日志:

[1]DOS命令下 lsnrctl ,进入监听控制界面
[2]show log_status   --查看监听日志状态
[3]set log_status off --关闭监听日志
[4]stop   --关闭监听(否则listener.log因正在使用而无法修改)
[5]删除之前的日志listener.log 或重命名listener.log 为listener_bak.log 
[6]start  --启动监听
[7]set log_status on --开启监听日志

2. 需配置 ..\Oracle11gDB\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora监听配置文件:


添加以上红框中的内容,SID_NAME = ORCL中的ORCL为我自己的服务名,如下:

(SID_DESC =
     (GLOBAL_DBNAME = ORCL)
     (ORACLE_HOME = H:\programsetup2018\Oracle11gDB\product\11.2.0\dbhome_1)
     (SID_NAME = ORCL)
 )
修改完以上配置文件,重启Oracle服务和监听服务即可。


猜你喜欢

转载自blog.csdn.net/ptsx0607/article/details/80258381
今日推荐