Oracle 输入帐号登录报错ORA-12154:TNS:无法解析指定的连接标识符问题解决

tns-03505:无法解析名称:

最近在安装完oracle developer suite之后,就无法登录,输入帐号登录发生错误:ora-12154:tns:无法解析指定的连接标帜符。

从网上查看说一般是因为 配置文件中没有对应的实例名,然后我就输入c:/tnsping myoracle(我的ora实例名),查看tnsnames.ora和sqlnet.ora是否配置正确,结果报错,提示:tns-03505:无法解析名称 说明配置文件有误。

然后我就查看%oracle_home%/db_1/network/admin/tnsnames.ora 文件,发现其中包含我需要登录的实例名。我在尝试tnsping命令,发现其查看到的参数文件sqlnet.ora不是我默认安装的oracle下面的sqlnet.ora,而是oracle developer suite目录下network文件夹下面的sqlnet.ora文件,把安装目录下的tnsnames.ora中的实例配置内容拷贝过去,ok.

myoracle =
(description =
    (address = (protocol = tcp)(host = 127.0.0.1)(port = 1521))
    (connect_data =
      (server = dedicated)
      (service_name = myoracle)
    )
)

至于为什么会修改为使用那个目录下的参数文件,还没有研究怎么处理。先记下处理过程

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

使用oracleclient.oracleconnection时(我连的是oracle 9i,其他版本未知),如果你的执行目录太长或者有括号等(未考察有些什么符号),那么即使你的服务名是对的,也会引起ora-12154问题“tns: 无法处理服务名”,当出现这个问题时,请也考虑这个原因。

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐