windows上LISTENER监听器中显示“监听程序不支持服务”
现象:
在windows上安装完数据库后,检查监听的时候,出现如下的错误
问题排查:
既然监听能启动,说明在$ORACLE_HOME/network/admin/listener.ora文件配置的无问题,目前来看,是监听不支持服务。
尝试手动注册服务
alter system register;
命令执行完后,发现还是这个现象。
检查local_listener参数,这个参数是PMON进程会将数据库服务自动注册到指定的监听器中,默认情况下,数据库会将服务自动注册到名为LISTENER,监听端口为1521的监听器中。
检查当前数据库中,这个参数的配置,从下面的截图中,可知,注册到了这个监听器中。
修改参数
alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.0.1)(PORT=1521))';
如果涉及多个监听器的话,建议在tnsnames.ora中配置
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.1)(PORT = 1521))
)
LISTENER1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.0.1)(PORT = 1522))
)
alter system set local_listener='LISTENER','LISTENER1';
手动执行注册服务后,发现成功