连接远程服务器提示ora 12154,EasyConnect出现ORA-12154(无法解析指定的连接标示符)错误的解决…

连接远程服务器提示ora 12154,EasyConnect出现ORA-12154(无法解析指定的连接标示符)错误的解决…今天在群里碰见了一个ORA-12154的问题,在此记录一下解决过程起因是群里面一个人问了他的Windows客户端采用easyconnect方式连接Oracle服务器的时候,报错如下:ORA-12154:TNS:无法解析指定的连接标示符最初的想法是在服务器端的listener没有相关的service_name来接收请求,不过他后来给出的截图表明,确实有相关的service_name来接收这个请求。…

大家好,又见面了,我是你们的朋友全栈君。

今天在群里碰见了一个ORA-12154的问题,在此记录一下解决过程

起因是群里面一个人问了他的Windows客户端采用easy connect方式连接Oracle服务器的时候,报错如下:

ORA-12154:TNS:无法解析指定的连接标示符

最初的想法是在服务器端的listener没有相关的service_name来接收请求,不过他后来给出的截图表明,确实有相关的service_name来接收这个请求。

而使用同样的easy connect语句,在另外一台服务器上,却是能够成功连接的。那么就说明是这台windows客户端的问题了

找了相关资料之后把问题锁定在了sqlnet.ora文件的一个参数上:

NAMES.DIRECTORY_PATH

查找文件找出这个文档的功能描述如下(具体可以参考:http://docs.oracle.com/cd/B19306_01/network.102/b14213/sqlnet.htm#sthref370):

Use the parameter NAMES.DIRECTORY_PATH to specify the order of the naming methods used for client name resolution lookups.

DEFAULT:

NAMES.DIRECTORY_PATH=(tnsnames, onames, hostname)

VALUES:

tnsnames                    local naming naming method

ldap                        directory naming naming method

ezconnect or hostname      easy connect naming or host naming method

CDS                        CDS external naming method

nis                        Network information service(NIS) external naming method

从上文的说明当中,可以看到的是,该参数是指定客户端的命名方法的

针对如上问题,做了下面这个实验:

现在在使用tnsnames和Easy Connect都能正常连接客户端上将NAMES.DIRECTORY_PATH参数修改为如下值:

NAMES.DIRECTORY_PATH = (TNSNAMES)

然后我们在使用Easy Connect的连接方式进行连接,会发现:

D:\>sqlplus mai/mai@192.168.0.123:1521/test

SQL*Plus: Release 10.2.0.3.0 – Production on 星期五 8月 2 17:42:12 2013

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

ERROR:

ORA-12154: TNS: 无法解析指定的连接标识符

请输入用户名:

好吧,就是这样。这个时候如果使用tnsnames进行连接的话,是依旧可以正常连接的

我们如果将参数修改为:

NAMES.DIRECTORY_PATH = (TNSNAMES,EZCONNECT)

Easy Connect连接方式可以正常连接

总结,在默认情况下,即使我们不配置NAMES.DIRECOTRY_PATH参数的话,我们依然可以用easy connect的连接方式连接Server端的,不过如果出现配置错误或者客户端类似的异常情况的话,这不失是一种解决方式

相关阅读:

0b1331709591d260c1c78e86d0c51c18.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/161570.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 上那学计算机,从零开始学电脑(学电脑从哪开始)

    上那学计算机,从零开始学电脑(学电脑从哪开始)从零开始学电脑(学电脑从哪开始)如今,手机已经成为我们生活中不可缺少的必需品,各种手机应用软件的层出不穷,使得智能手机占据了互联网的半壁江山,似乎手机无所不能了,平时,很多人觉得一手机在手便可以仗剑走天涯,但当我们走进职场,你就会发现,对于办公而言,手机还是有很大的局限性,掌握电脑知识,熟悉电脑基本操作是胜任工作的必备技能。真是“书到用时方恨少”。今天开始,涛哥就带你走进电脑的世界,让你从电脑小白…

  • 数据库建立索引常用的规则

    数据库建立索引常用的规则数据库建立索引常用的规则如下:1、表的主键、外键必须有索引; 2、数据量…

  • HotSpot源码分析之类模型

    HotSpot源码分析之类模型

    2020年11月20日
  • 5G切片安全风险包括_5G切片编排器

    5G切片安全风险包括_5G切片编排器5G网络采用网络切片技术来应对不同的应用场景。切片安全控制机制:(1)对UE进行鉴权,从而保证接入网络的UE是合法的;(2)AMF通过UE的NSSAI(网络切片选择辅助信息)为UE选择正确的切片;(3)当UE访问不同切片内的业务时,会建立不同的PDU会话,不同的网络切片不能共享PDU会话。(4)建立PDU会话的信令流程中增加鉴权和加密过程。(5)UE的每个切片的PDU会话可以根据切片策略,采用不同的安全机制。(6)网管平台对各个NF进行授权,包括每个NF可以被哪些NF

  • ThinkPHP 的缓存大概多久更新一次

    ThinkPHP 的缓存大概多久更新一次

  • PHP+AJAX 实现表格实时编辑

    PHP+AJAX 实现表格实时编辑

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号