连接[说明]ORA-12154_TNS无法解析指定的连接标识符

ora-12154  时间:2021-03-10  阅读:()

ORA-12154:TNS:无泋解析指定的连接标识符(原创)

相信作为ORACLE数据库的开发人员没有少碰到“ORA-12154:TNS:无法解析指定的连接标识符”今天我也又碰到了类似的情况将我的解决方法进行小结希望能对碰到同样问题的友人们提供帮助。

问题场景描述

服务器端版本 oracle 10.2.0.10

客户端版本 oracle 10.2.0.10

客户端开发工具 PL/SQL Developer

通过客户端来连接服务器其主要文件就是通过客户端的tnsnames.ora来配置在原文件的基础上增加

SID别名=

(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST=SERVER_IP)(PORT=1521))

)

(CONNECT_DAT A=

(S I D=S I D_NAME)

)

)

例dev_db=

(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST=172.168.10.5)(PORT=1521))

)

(CONNECT_DAT A=

(SID=ora10)

)

)

通过PL/SQL Developer连接dev_db时报“ORA-12154:TNS:无法解析指定的连接标识符”。 这个问题以前也碰到过但解决方法不太一样 因具体的问题不太一样。 

我将自己知道的一些解决方法说一下

1.先检查服务器端的监听服务是否打开如果没有打开请启动其监听

客户端:tnsping<tns_name>

服务器Linux下:

#>ls nrc tl s tatus查看监听状态

#>lsnrc tl start 启动监听

2.通过Sql Plus连接一下试试如果Sql Plus连接能成功那就说明你的tnsnames.ora内容有错误

我的问题就在别名dev_db前面有一个空格这个可以通过文本编辑器(Edit Plus,UE等)来查看是否有空格只要有空格那就肯定是不行的而且如果那段内容是出现在文件的中间的话将导致该文件里所有相应的连接别名都不成功如果是在最后面就只有其自身连接别名不能成功其他连接别名还是能连接成功。 注我的tnsnames.ora配置了多个数据库实例的连接所有才有多个连接别名。 

如

空格dev_db=

(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST=172.168.10.5)(PORT=1521))

)

(CONNECT_DAT A=

(SID=ora10)

)

)

3.如果确保你的tns names.ora内容没有错误那请

将%ORACLE_HOME%\product\10.2.0\db_1\NETWORK\AD MIN目录下的所有文件删了然后重新连接一般就能解决了。

说明一下那个目录里的文件是在你建立连接的时候动态生成的不要怕删了会有问题

4.进入PLSQL Developer的主界面,在登录界面选择取消即不登录进入主界面然后选择菜单Tools(工具)-Preferenc es(首选项)在设置窗口中选择Orac le-Connection(连接)对应设置窗口中找到Oracle Home(Oracle主目录)选择你本地所安装客户端的版本保存设置然后重新启动PLSQL Developer这时就可以正常登录了。

如果您还碰有ORA-12154错误代码的其他原因和有其他的解决方法请跟贴评论我会加以完善这篇文章的谢谢

装了解决Oracle Developer Tools之后出现“ORA-12154:TNS:无法解析指定的连接标识符”报错的解决方法如下

1 .检查注册表 HKey_LocalMachine\Software\Oracle下面的Oracle_Home若不对修改成正确的

2.卸载ODP for .Net (或者卸载ODT for .Net,ODT中包含ODP,ODT是VS.Net的一个集成插件用于连接和浏览oracle数据库并且提供对oracle数据库的拖拽操作类似VS.Net对于SQL Server的资源管理器)

3.如果ODT for .Net的目录依然存在删除或者重命名此目录

然后重起系统重新连接ASP.Net程序如果还有同样的错误看着办吧我建议重装Oracle吧。

分析原因系统原来装的是ORACLE 10G 10.1 .0卸载后还没重启就装上10.2.0结果先是监听器起不来竟然还是指向10.1 .0的位置监听器当然不能启动了。

处理过程

1 、查找注册表将监听器指向新的位置重启服务 OK

2、 PL/SQL DEVELOPER还是连接不了其它方式都正常。将原先安装在其它逻辑盘的ODP for .Net卸载重装到与ORACLE 10.2.0同一位置。重启系统 DEVELOPER还是报错不过些时报错提示信息为空。

3、因为DEVELOPER设置有更改后进入菜单TOOLS》 PREFERENCES. . .设置在ORACLE下的CONNECTION中将ORACLE HOME和OCI LIBIARY设为空即自动检测。连接正常 问题解决。

二、应用程序中报错

一个很难想到的引起O RA-12154的原因

使用OracleCl ient.OracleConnection时(我连的是Oracle 1 1g其他版本未知)如果你的执行目录太长或者有括号等未考察有些什么符号 那么即使你的服务名是对的也会引起O RA-12154问题“T NS:无法处理服务名”当出现这个问题时请也考虑这个原因。

Digital-vm80美元,1-10Gbps带宽日本/新加坡独立服务器

Digital-vm是一家成立于2019年的国外主机商,商家提供VPS和独立服务器租用业务,其中VPS基于KVM架构,提供1-10Gbps带宽,数据中心可选包括美国洛杉矶、日本、新加坡、挪威、西班牙、丹麦、荷兰、英国等8个地区机房;除了VPS主机外,商家还提供日本、新加坡独立服务器,同样可选1-10Gbps带宽,最低每月仅80美元起。下面列出两款独立服务器配置信息。配置一 $80/月CPU:E3-...

IonSwitch:$1.75/月KVM-1GB/10G SSD/1TB/爱达荷州

IonSwitch是一家2016年成立的国外VPS主机商,部落上一次分享的信息还停留在2019年,主机商提供基于KVM架构的VPS产品,数据中心之前在美国西雅图,目前是美国爱达荷州科德阿伦(美国西北部,西接华盛顿州和俄勒冈州),为新建的自营数据中心。商家针对新数据中心运行及4号独立日提供了一个5折优惠码,优惠后最低1GB内存套餐每月仅1.75美元起。下面列出部分套餐配置信息。CPU:1core内存...

totyun:香港cn2 vps,5折优惠,$6/月,10Mbps带宽,不限流量,2G内存/2核/20g+50g

totyun,新公司,主要运作香港vps、日本vps业务,接入cn2网络,不限制流量!VPS基于KVM虚拟,采用系统盘和数据盘分离,从4G内存开始支持Windows系统...大家注意下,网络分“Premium China”、“Global”,由于站长尚未测试,所以也还不清楚情况,有喜欢吃螃蟹的尝试过不妨告诉下站长。官方网站:https://totyun.com一次性5折优惠码:X4QTYVNB3P...

ora-12154为你推荐
openeuleropen与close的区别及用法云计算什么叫做“云计算”?同一ip网站同IP的网站互相链接会被K吗?www.haole012.com012.qq.com是真的吗www.e12.com.cn有什么好的高中学习网?杨丽晓博客杨丽晓哪一年出生的?dadi.tv1223tv影院首页地址是什么?1223tv影院在哪里可以找到?www.gogo.com祺笑化瘀祛斑胶囊效果。鹤城勿扰非诚勿扰 怀化小伙 杨荣是哪一期www.jsjtxx.com苏州考驾照,理论考试结束后,要在网上学习满12小时,网站是什么
美国域名注册 上海服务器租用 万网域名空间 北京vps 域名主机基地 中文域名申请 服务器配置技术网 新世界机房 腾讯云数据库 512au 服务器维护方案 qq云端 银盘服务是什么 华为云建站 镇江高防 ncp 建站行业 遨游论坛 lighttpdwindows 魔兽世界网通服务器 更多