您好,今天小编胡舒来为大家解答以上的问题。ora12154无法处理服务名,ora 12154相信很多小伙伴还不知道,现在让我们一起来看看吧!
1、ora-12154 TNS:无法处理服务名有时候怎么配置TNSNAMES.ORA都出现ora-12154 TNS:无法处理服务名的错误!其实根据oracle的版本的不同,配置的字符串也有所不同。
2、比如:oracle8.1.5的SQLNET.ORA文件的内容是这样的:路径:orantNET80ADMINSQLNET.ORATRACE_LEVEL_CLIENT = OFF#sqlnet.authentication_services = (NONE)***.directory_path = (TNSNAMES, HOSTNAME)names.default_domain = worldname.default_zone = worldautomatic_ipc = off所以服务名后面都要加上.world,比如:***.WORLD = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)) (CONNECT_DATA = (SID = CARD)) )但是在oracle9i下则要这样配置:CARD = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = CARD) ) )oracle9i的SQLNET.ORA是这样的:路径:oracleora92etworkadminSQLNET.ORA# SQLNET.ORA Network Configuration File: C:oracleora92etworkadminsqlnet.ora# Generated by Oracle configuration tools.SQLNET.AUTHENTICATION_SERVICES= (NTS)***.directory_PATH= (TNSNAMES, ONAMES, HOSTNAME)所以如果按照oarcle8.1.5的配置参考oracle9i的配置,显然是不对的。
3、因为oracle8.1.5中的SQLNET.ORA文件定义了服务名必须要有.world根据oracle版本, SID 可能是要改成service_name。
4、 参考一下listener.ora的global_name.确定在sqlnet.ora里,names.default_domain设置空字符。
5、排除了这些应该没什么问题了。
本文就为大家分享到这里,希望小伙伴们会喜欢。