天天看点

Oracle无法启动2——监听程序当前无法识别连接描述符中请求的服务

一、发现问题

在连接oracle 10g数据库的时候老是连不上,服务也启动了,但一连接就弹出tns:监听程序当前无法识别连接描述符中请求的服务, 昨天还好好的连着,今天怎么就突然不能用来,想想会不会是昨天改了配置文件的原因,对比了一下昨天备份的那个配置文件,发现有些地方不一样。检查了一下监听的配置文件,发现里面并没有配置注册对我想要连接的那个数据库服务的监听器,上网找了下配置的语句,只要在listener.ora配置

sid_list_listener =

  (sid_list =

    (sid_desc =

      (sid_name = plsextproc)

      (oracle_home = e:\oracle\product\10.2.0\db_1)

      (program = extproc)

    )

      (global_dbname = yourdb)

      (sid_name =  yourdb)

  )

红色部分是修改的语句。保存,重启监听服务tnslistener即可。

二、原因分析

让listener主动加载服务,在使用lsnrctl start监听程序时会将listener的服务注册到进程监听器(pmon)中。

原帖地址:http://blog.sina.com.cn/s/blog_69fb0c600100lo45.html