现象:使用某Windows优化大师对Windows2000操作系统进行了优化,优化完成之后,oracle数据库便无法正常工作。Oracle监听服务不能启动,提示为“无法找到文件路径”,打开监听服务的“属性”,“常规”页中的“可执行文件的路径”项为空。
分析:数据库服务能够正常启动,说明数据库没有问题,文件系统正常。因为监听服务的“可执行文件的路径”项被清空,导致监听服务无法启动,所以不能连接数据库。
解决办法:
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监听服务,可以连接到数据库。
其它可用处理方法:
进入操作系统的“regedit”(注册表编辑器),查找Listener监听服务项,逐一为该项添加或修改可执行文件路径值。
但是该方法处理过程复杂,而且容易出错,不及上面的方法简单、稳妥,建议除非在工作之余进行练习操作,在实际用户服务过程中,能采用第一种方法者,不要采用第二种方法。