我的问题如下:
我在32位ubuntu服务器12.04 LTS中有一个Oracle,但是我创建了另一个数据库以迁移到Windows 2008 R2 64位。我成功安装了oracle并复制了我拥有的所有数据。当我不得不将一个.NET项目的连接从使用第一个更改为第二个时,出现了问题,出现了“ ORA-12154:TNS:无法解析指定的连接标识符”错误。我使用了从Oracle下载的32位ODAC dll。
TNSNAMES:
A_LINUX = (描述= (地址=(协议= TCP)(主机= 192.168.xy)(端口= 1523)) (CONNECT_DATA = (服务器=专用) (SERVICE_NAME = orcl2) ) ) B_LINUX = (描述= (地址=(协议= TCP)(主机= 192.168.xy)(端口= 1523)) (连接数据= (服务器=专用) (服务名称= orcl2) ) ) C_LINUX = (描述= (地址=(协议= TCP)(主机= 192.168。) xy)(端口= 1523)) (连接数据= (服务器=专用) (服务名称= orcl2) ) ) D_DBLILLY = (描述= (地址=(协议= TCP)(主机= 192.168.xy)(端口= 1523)) (CONNECT_DATA = (服务器=专用) (SERVICE_NAME = orcl2) ) ) E_DBLILLY = (描述= (地址=(协议= TCP)(主机= 192.168.xy)(端口= 1523)) (连接数据= (服务器=专用) (服务名称= orcl2) ) ) 测试= (描述= (地址=(协议= TCP)(主机= 192.168。) xy)(端口= 1523)) (连接数据= (服务器=专用) (服务名称= orcl2) ) ) A_WINDOWS = (描述= (地址=(协议= TCP)(主机= 192.168.xz)(端口= 1521)) (CONNECT_DATA = (服务器=专用) (SERVICE_NAME = orcl.c.local) ) ) B_WINDOWS = (DESCRIPTION = (地址=(协议= TCP)(主机= 192.168.xz)(端口= 1521)) (连接数据= (服务器=专用) (服务名称= orcl.c.local) ) ) C_WINDOWS = (描述= (地址=(协议) = TCP)(HOST = 192.168.xz)(PORT = 1521)) (CONNECT_DATA = (服务器=专用) (SERVICE_NAME = orcl.c.local) ) ) (服务名称= orcl.c.local) D_WINDOWS = (描述= (地址=(协议= TCP)(主机= 192.168.xz)(端口= 1521)) (CONNECT_DATA = (服务器=专用) (SERVICE_NAME = orcl.c.local) ) ) E_WINDOWS = (DESCRIPTION = (地址=(协议= TCP)(主机= 192.168.xz)(端口= 1521)) (连接数据= (服务器=专用) (服务名称= orcl.c.local) ) ) TEST_WINDOWS = (描述= (地址=(协议) = TCP)(主机= 192.168.xz)(端口= 1521)) (连接数据= (服务器=专用) ) )
_WINDOWS是Windows 1,_LINUX是Linux。使用这个tnsnames我只能连接到linux。ips正确,端口和名称也正确。ODAC安装在C:\ OracleODAC \ x32中,我添加到PATH目录中。我也添加了bin目录。另外,正确设置了ORACLE_HOME和ORACLE_SID。
有小费吗?提前致谢。
编辑:我可以使用与TOAD的同一家连接。我可以使用x86 / x64编译版本将项目连接到LINUX,但不能连接到WINDOWS。
编辑2: <add name="PRD" connectionString="Data Source=D_WINDOWS;User ID=****;Password=****;" providerName="Oracle.DataAccess.Client" />
我将首先在databas-adm-program中测试oracle客户端。我使用Toad,将其配置为使用与.net应用程序相同的oracle客户端。如果可以,则可以排除TNS是问题所在,而只专注于.net应用程序中的32位和64位问题。PS:我知道这适合作为评论,但我无法在这里发表评论,因为我是n00b
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句