ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务(host文件)
小编天装了个虚拟机,在host文件中给虚拟机配置虚拟路径。
结果问题出现了,虚拟机没问题,Oracle数据库竟然无缘无故连接不上了。

(以上是PL/SQL的提示)
/*----------------------------------------------------------------------下面就是错误操作导致问题复杂化,有时间请阅读----------------------------------------------------------------------------*/
二话没说,一看监听错了,就去看看吧!
找到监听配置文件(路径在你安装oracle数据库下 D:\app\chb\product\12.1.0\dbhome_1\network\admin\listener.ora)

并没有发现有什么异常啊!!
去重新配置监听试试吧,说着就打开了监听配置,重新配置监听
以下是重新配置监听程序步骤:




点到这里的时候,我就感觉到有些问题了,配置监听一般也就几秒钟就搞定,这次却等了近一分钟


这个下一步也特别慢(比平常慢),最后竟然还给了个警告

当时我就惊呆了,1521被占用?

赶紧打开cmd命令查看端口 netstat -aon | findstr 1521

发现 PID 是7360 的程序正在占用1521
打开任务管理器

额(⊙o⊙)… 当时我就崩溃了,这不就是oracle服务吗?自己占用自己?不理解....
/*----------------------------------------------------------------------到此为止----------------------------------------------------------------------------*/
想了好久,突然想到了什么!
再次查看监听配置文件,(重新配置监听之后)已经发生改变!
下面是错的监听文件!

注意画框的地方,少了一行!
但是令我眼前一亮,HOST 属性的值是 damon ,我计算机的名称,但是在host文件中配置的虚拟地址也是 damon

会不会是它的问题呢!改下名字呗!
只要和本机名称不一样就行或者直接 # 注释掉
只要改下host文件就可以了
host文件中所有虚拟地址的名称都不能和你本机的计算机名称一样!
百度之后才知道,oracle监听要去通过host文件去映射IP地址的...

浙公网安备 33010602011771号