Oracle中“无监听程序”和“协议适配器错误”的解决方法

WBOY
发布: 2016-06-07 17:36:55
原创
1323 人浏览过

一、发现问题有些杀毒程序会清掉一些oracle注册表信息或删除oracle的bin目录下的一些.exe文件,导致数据库无法启动,下面来分析一下最常见的问题。二、无监听程

一、发现问题
有些杀毒程序会清掉一些oracle注册表信息或删除oracle的bin目录下的一些.exe文件,导致数据库无法启动,下面来分析一下最常见的问题。


二、无监听程序
1、什么是监听器(LISTENER)
监听器是建立在服务端的,用于监听客户端向数据库服务器端提出的连接请求。
配置文件在\db_1\NETWORK\ADMIN\listener.ora。

2、本地服务名(Tnsname)
本地服务名是建立在客户端的,需要连哪些服务器数据库,就将该数据库服务端的信息配置。
配置文件在\db_1\NETWORK\ADMIN\tnsnames.ora。

3、解决方法
通过Net Manager重新建立监听器和本地服务名。
可参见:?url=Z5BNd9D2KYGDHnROo1fn5XjXgCeDbAU6Xtk2Yrdg-Txb7gVkyVVAopLfHYOHcthYjqCP0FssulU_OZpA41-IDdCF3pgUNveOVeTU7vfPxDG


三、协议适配器错误
上述情况配置好后可能会出现“协议适配器错误”:
C:\Documents and Settings\Admin>lsnrctl
LSNRCTL> start
启动tnslsnr: 请稍候...
Failed to start service, error 3.
TNS-12560: TNS: 协议适配器错误
TNS-00530: 协议适配器错误

①注册表有问题
C:\Documents and Settings\Admin>regedit
进入注册表到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome81TNSListener
ImagePath被清掉了,增加可扩充字符串值,取名为ImagePath,编辑字符串的数值数据为E:\oracle\product\10.2.0\db_1\BIN\TNSLSNR,退出注册表。

②TNSLSNR.EXE被删掉了
E:\oracle\product\10.2.0\db_1\BIN的TNSLSNR.EXE被删掉了,,从别处拷过来一个放到该目录就行了。

本文出自 “IT徐胖子的专栏” 博客,请务必保留此出处

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!