ORA-12514: 监听程序当前无法识别连接描述符中请求的服务

/** 异常:ORA-12514: 监听程序当前无法识别连接描述符中请求的服务
  * 背景:在很长一段时间都在连接远程开发库,曾偶尔有一次想要连接本地的库进行sql测试,发现连接失败,起初一直有无监听、监听不匹配、监听未找到对应、、、等等的错误提示,期间曾重置、删除重置、新增监听,但都未曾奏效。今天得空来看看这个是什么问题。
  * 详解:经过查看网上的此类问题的解决方案发现,问题主要分布于两个方面。一:监听、服务。 二:tnsnames.ora配置文件。
  * 过程:期间曾对监听进行过细致的配置但还是没有解决问题,然而此时doc窗口却是可以连接,因此将问题范围可以缩小到tnsnames.ora配置文件。在本地“D:\sofware\Oracle12\product\12.1.0\dbhome_1\NETWORK\ADMIN”目录中找到了tnsnames.ora的配置文件,发现如下图中存在很多的历史文件,由于个人习惯plsql直接端口ip进行数据库连接,所以从来没有配置过tnsnames.ora文件。因此推测这些历史版本很有可能是在做连接或是配置监听或者其他的一些隐晦操作时自动生成了新的文件。此时我对这些历史文件进行了对比分析,发现多出来了一下内容(此处就不做例图,每个人可能不一样。以免产生分析干扰),由于对tnsnames.ora文件的存储结构不甚了解,所以只能还原到不同的版本进行连接测试,最终将此问题解决。
  * 解决办法:针对此问题,将tnsnames.ora文件还原到历史安全版本即可。
  * 至此:问题解决!
  */
/** 赘述:此文档后续应该添加tnsnames.ora文件正确的内容作为后续参考使用。
*
*/

猜你喜欢

转载自www.cnblogs.com/tanjiyuan/p/11526884.html