Oracle Listener为什么启动不了

 我来答
己学好4
2016-03-29 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.1万
采纳率:91%
帮助的人:5029万
展开全部
一、现象:
Windows环境下,启动Listener时出错:

C:\Documents and Settings\Admin>lsnrctl start
LSNRCTL for 32-bit Windows: Version 9.2.0.6.0 - Production on 20-9月 -2008 13:04:53
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
启动tnslsnr:请稍候...
Failed to start service, error 1058.
TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误
32-bit Windows Error: 1058: Unknown error

二、解决过程:
Step 1:
首先想到的就是Listener.ora的配置文件,检查配置文件D:\oracle\ora92\network\admin\listener.ora,检查没有发现问题,删除重新配置一遍。
点击“开始”->“程序”->“Oracle ”->“OraHome92”->“Configuration and Migration Tools”->“Net Manager”启动Oracle网络管理器工具
重新配置了“监听程序”:“一般参数”、“监听位置”、“数据库服务”。注意“数据库服务”的全局数据库名与数据库SID有所区别,全局数据库名实际通过域名来控制在同一网段内数据库全局命名的唯一性,就如Windows下的域名控制器。
“服务命名”, 注意:此处配置的“服务名”实际上就是数据库服务器端监听器配置中的全局数据库名,前者与后者必须相同。
启动listener故障依旧。

检查服务
“控制面板”-> “管理工具”->“服务”找到类似“OracleOraHome92TNSListener”,结果发现Listener服务未启动 。
启动OracleOraHome92TNSListener服务。
Step 2:
再次启动Listener,错误信息如下:

C:\Documents and Settings\Admin>lsnrctl start
LSNRCTL for 32-bit Windows: Version 9.2.0.6.0 - Production on 20-9月 -2008 14:50:33
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
启动tnslsnr:请稍候...
Service OracleOraHome92TNSListener already running.
TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误
32-bit Windows Error: 1056: Unknown error

检查服务
“控制面板”-> “管理工具”->“服务”找到“OracleOraHome92TNSListenerXXXX”服务,启动之。
启动Listener

C:\Documents and Settings\Admin>lsnrctl start
LSNRCTL for 32-bit Windows: Version 9.2.0.6.0 - Production on 20-9月 -2008 18:02:18
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
启动tnslsnr:请稍候...
TNSLSNR for 32-bit Windows: Version 9.2.0.6.0 - Production
系统参数文件为D:\oracle\ora92\network\admin\listener.ora
写入D:\oracle\ora92\network\log\listener.log的日志信息
写入D:\oracle\ora92\network\trace\listener.trc的跟踪信息
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ThinkPadT43)(PORT=1521)))
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ThinkPadT43)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 9.2.0.6.0 - Production
启动日期 20-9月 -2008 18:02:20
正常运行时间 0 天 0 小时 0 分 2 秒
跟踪级别 admin
安全性 OFF
SNMP OFF
监听器参数文件 D:\oracle\ora92\network\admin\listener.ora
监听器日志文件 D:\oracle\ora92\network\log\listener.log
监听器跟踪文件 D:\oracle\ora92\network\trace\listener.trc
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ThinkPadT43)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "oraserver" 包含 1 个例程。
例程 "xxxx", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功

三、总结:
1、 listener.ora(或者tnsnames.ora)配置有问题,检查之;
2、检查oraclehome92TNSlistener服务是否启动,有可能在打补丁后或节约系统资源停掉了服务,未能及时将服务启动;
3、检查database instance服务是否启动,创建数据库实例后,会创建系统的实例服务,即OracleOraHome92TNSListenerXXXX。
4、检查Oracle SID,创建了Instance,相应的数据库应能够查到,通常UNIX下写在oracle用户的.profile中,在Windows中通常写在注册表或系统环境变量中。
Oracle_SID在注册表中位置:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0下右键“新建”->“字符串值” 名称为ORACLE_SID,其值为配置数据库服务所填的SID。
系统环境变量添加方法为:
“我的电脑”右键->“属性”->“高级”->“环境变量”->“系统变量”->“新建”ORACLE_SID,其值为配置数据库服务所填的SID。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式