Oracle监听器服务不能启动的如何解决方法

春天来了!你看,融化的冰水把小溪弄醒了。 "丁粳、丁粳 ",它就像大自然的神奇歌手,唱着清脆悦耳的歌,向前奔流……

Oracle监听器服务不启动的时候可采取以下措施予以解决:

一、连接主机字符串,提示没有监听器

SVRMGR> connect internal/oracle@orcl;
ORA-12541: TNS:no listener
SVRMGR>


二、运行监听器,提示地址的协议专用组件指定不正确
在开始菜单运行中键入lsnrctl

LSNRCTL for 32-bit Windows: Version 9.0.1.1.1 - Production on 08-6月 -2006 14:31:53
Copyright (c) 1991, 2001, Oracle Corporation. All rights reserved.

欢迎来到LSNRCTL,请键入"help"以获得信息。

LSNRCTL> status

连接至(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521)))

TNS-01103: 地址的协议专用组件指定不正确
TNS-12541: TNS:无监听器
TNS-12560: TNS:协议适配器出现错误
TNS-00511: 无监听器
32-bit Windows Error: 61: Unknown error

LSNRCTL> start
启动tnslsnr:请稍候...
Failed to start service, error 3.
TNS-12536: TNS:可能会阻碍*作
TNS-12560: TNS:协议适配器出现错误
TNS-00506: *作可能阻塞
32-bit Windows Error: 997: Unknown error
LSNRCTL>

三、在控制面板中启动服务,出现以下错误

服务:在本地计算机 无法启动 OracleOraHome91TNSListener 服务。
错误3:系统找不到指定的路径

而且OracleOraHome91TNSListener服务的可执行文件的路径是空的。

四、进入注册表中修改ImagePath

在运行处执行REGEDIT进入注册表到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/OracleOraHome91TNSListener
发现ImagePath关键值没有了,增加他,选择可扩充字符串值,编辑字符串的数值数据为:D:/Oracle/Ora90/BIN/TNSLSNR
退出注册表。

五、再去启动服务,服务启动正常

六、启动监听器

lsnrctl
LSNRCTL for 32-bit Windows: Version 9.0.1.1.1 - Production on 08-6月 -2006 14:31:53
Copyright (c) 1991, 2001, Oracle Corporation. All rights reserved.
欢迎来到LSNRCTL,请键入"help"以获得信息。
LSNRCTL> start
TNS-01106: 使用名称LISTENER的监听器已经启动
LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=64c5c4485765450)PORT=1521)))
LISTENER 的 STATUS
------------------------
别 名           LISTENER
版本            TNSLSNR for 32-bit Windows: Version 9.0.1.1.1 - Production
启动日期         08-6月 -2006 09:04:19
正常运行时间       0 天 5 小时 30 分 56 秒
跟踪级别         off
安全性          OFF
SNMP           OFF
监听器参数文件     D:/oracle/ora90/network/admin/listener.ora
监听器日志文件     D:/oracle/ora90/network/log/listener.log
监听端点概要...
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=64c5c4485765450)
(PORT=1521)))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=64c5c4485765450)(PORT=2484)))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=nmp)(PIPENAME=//64C5C4485765450/pipe/ORAPIPE)))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/1521ipc)))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC0ipc)))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.3)(PORT=8080))(PRESENTATION=http://admin)(SESSION=RAW))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=192.168.1.3)(PORT=9090))(PRESENTATION=http://admin)(SESSION=RAW))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.3)(PORT=2481))(PRESENTATION=GIOP)(SESSION=RAW))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=192.168.1.3)(PORT=2482))(PRESENTATION=GIOP)(SESSION=RAW))

服务摘要:

服务 "MODOSE" 包含 1 个例程。
例程 "hzh", 状态 READY, 包含此服务的 1 个处理程序...
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "hzh" 包含 1 个例程。
例程 "hzh", 状态 READY, 包含此服务的 3 个处理程序...
命令执行成功
LSNRCTL>

七、再去连接,测试成功

SVRMGR> connect internal/oracle@orcl;
连接成功。
SVRMGR>

到此这篇关于Oracle监听器服务不能启动的如何解决方法就介绍到这了。没有哪一种胭脂能涂抹时间,没有哪一件服装能掩饰灵魂,没有哪一套古籍能装潢空虚。更多相关Oracle监听器服务不能启动的如何解决方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
Oracle缩表空间的完整如何解决实例

详解Oracle控制文件及日志文件的管理问题

oracle指定类型和指定位数创建序列号的代码详解

Oracle官方工具SQLDeveloper的简单如何使用

Oracle如何使用in语句不能超过1000问题的如何解决办法