今天玩oracle的时候忽然遇到一个问题:本地计算机 上的 OracleOraDb11g_home1TNSListener 服务启动后中止。某些服务在未由其余服务或程序使用时将自动中止。
在网上找解决方案的时候,发现不少人都遇到了这个问题,第一个方案没有解决个人问题,下面本身记录一下,留个备份,方便下次查阅方便
第一步:首先查阅你的【NETWORK\ADMIN】目录下的【tnsnames.ora】和【listener.ora】这两个文件,个人路径是:D:\app\Oracle11g\dbhome_1\NETWORK\ADMIN;而后看看里面的【HOST】信息,看看是否是你当前的ip地址,若是不是尝试着把这个2个文件改为你的ip地址,因为我本身只是玩玩oracle,为了方便,直接就改为了127.0.0.1:
[plain] view plaincopyprint?
01.LISTENER =
02. (DESCRIPTION_LIST =
03. (DESCRIPTION =
04. (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
05. (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
06. )
07. )
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)而后启动监听器,竟然好了。
不过也发现有第一步不成功的朋友,那么尝试第二步吧:
1:注册表中
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/OracleOraDb11g_home1TNSListener
中的ImagePath改成:
D:/oracle_11g/product/11.1.0/db_1/BIN/TNSLSNR.EXE(以前后面的.EXE没有)
2:环境变量中
ORACLE_HOME改成:D:/oracle_11g/product/11.1.0/db_1(以前为空)
这是直接复制别人的,我第一次就是尝试的这种方式,不过没有经过,但不保证不是这个问题,仍是记录一下oracle