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: 无法处理服务名”,当出现这个问题时,请也考虑这个原因。
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
网友评论