Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又中止了解决方案

1、错误描述php

登录PL/SQL Developer登录本地数据库时先报没有监听程序,查看服务发现Oracle监听服务没有启动。右击启动监听程序,报错:数据库

错误描述:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又中止了。一些服务自动中止,若是它们没有什么可作的,例如 "性能日志和警报 "服务网络

2、缘由分析oracle

你安装oracle的时候是连网的,那么listener.ora文件里的HOST=网络给你分配的IP地址,而在你断网的时候就会出现这样的状况。性能

3、解决办法ui

方法一:监听器spa

经过listener.ora或者Net Manager修改监听器配置。将原来本地字符串127.0.0.1或者localhost改成主机名。3d

首先查阅你的**\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下的"tnsnames.ora"和"listener.ora"这两个文件,而后看看里面的"HOST"信息,看看是否是你当前的ip地址,若是不是尝试着把这个2个文件改为你的ip地址,或直接就改为127.0.0.1(或计算机名字):日志

注意:此时的监听配置文件"listener.ora"里面的HOST=的内容(IP或者主机名)必须和,服务配置文件"tnsnames.ora"里面,你想要连接的服务的HOST=的内容彻底一致。意思就是说要么都是IP地址,要么都是主机名。若是有多个服务(Net Manager中配置的网络服务)那么查看"tnsnames.ora"文件中与监听HOST内容一致的PL/SQL才可正常登陆进去,不然无监听程序。如:blog

20140301_1

 

上面这里是"listener.ora"里面的HOST,个人是主机名。

20140301_2

上面这里是"tnsnames.ora"的配置信息,因为个人机子上面装了两个数据库DB1,DB2。分别创建了链接服务也叫作DB1,DB2。(不知道什么状况,建好后tnsnames.ora里一个HOST是IP地址,另外一个是个人主机名。)结果致使DB1的PL/SQL正常链接进入(由于是IP地址和listener.ora的HOST地址彻底匹配),而DB2的PL/SQL却提示没有监听程序。(什么状况,DB1不是都正常进入了么咋尚未监听呢。我去~~)后来网上找教程说是【修改"listener.ora"的HOST地址,若是是IP则改为主机名】因而照搬。运行PL/SQL,DB2登录成功,爽啊。结果DB1没有监听程序(什么状况啊)。后来查看"listener.ora"发现此问题,说明两个文件的HOST的内容须要彻底匹配才行,所有改为主机名,两个数据库登录都成功,搞定!

 

方法二:环境变量

环境变量中ORACLE_HOME改成:***(你本身的安装路径)\product\11.2.0\dbhome_1

有的状况,装貌似安装客户端被自动改成**:\Ora11InstantClient了

 

方法三:注册表

KEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/OracleOraDb11g_home1TNSListener

中的ImagePath改成:D:\oracle\product\10.2.0\db_1/BIN/TNSLSNR.EXE(以前后面的.EXE没有)。

相关文章
相关标签/搜索