C:\Documents and Settings\All Users\「开始」菜单\程序\Oracle - OraHome81\Network Administration\Net8 Assistant 重建监听 ORACLE监听重建 在注册表里清理启动项就OK了 产生这个问题的原因是listener服务不正常,因此需要重建这个服务。 解决方法如下: 1、进入dos窗口,手工启动listener,无法启动;进入控制面板,手工启动listener服务,也无法启动。 2、删除listener服务: 打开注册表,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ OracleTNSListener,删除它,重启机器后,控制面板的服务中listener服务已经没有了。 3、重启listener,并自动重建listener服务: 进入dos窗口执行:c:\lsnrctl start listener正常启动。进入控制面板的服务中,listener服务已经被自动重建,并且状态为“已启动”。 ------------------------------ C:\oracle\ora81\network\ADMIN下的监听文件listener.ora LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.0)(PORT = 1521)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)) ) ) ) --------------------------- 把监听文件的host改为 HOST = 127.0.0.0 二、百度文库里面: Oracle监听器服务无法启动解决办法 收藏 办法一:修改注册表 解决办法就是修改注册表,ImagePath 开始-->运行REGEDIT -->进入注册表找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleXXXTNSListener 发现ImagePath关键值没有了,新建一个名为ImagePath的可扩充字符串值,编辑字符串的数值数据为:Oracle安装路径\BIN\TNSLSNR 办法二:重新配置个监听器 1.停掉所有ORACLE服务,设为手动。进入oracle网络管理工具“Net8 Configration Assistant”或“Net8 Assistant”,重新配置一个监听服务,名为“Listener1”。 2.进入“命令提示符”,运行“监听控制程序——LSNRCTL”,再运行“start listener1”,首次启动Listener1监听程序,为Listener1在操作系统服务里生成相关服务项。为了后面的修改操作能够生效,再运行“stop listener1”停止Listener1。 3.将服务中原Listener服务的“启动类型”改为“已禁用”,将已生成的Listener1服务的“启动类型”改为“自动”。 4.用“记事本”打开监听服务配置文件“ORACLE_HOME \ network \ admin \ listener.ora”,将“LISTENER =”、“SID_LIST_LISTENER =”分别改为“LISTENER1 =”、“SID_LIST_LISTENER1 =”,并删除当前的“LISTENER1 =”、“SID_LIST_LISTENER1 =”项。该操作的作用为:不用费力为Listener1监听服务再配置常规参数、数据库监听等,直接采用原Listener服务的配置。 5.再启动Listener1监听服务,可以连接到数据库。 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/hittata/archive/2009/04/10/4061562.aspx