如何在SSIS中修复错误'Ora-12154 TNS无法解析服务名称'?

时间:2009-06-29 14:03:04

标签: sql-server oracle ssis

当MS-SQL Server 2000 dtsx作业尝试运行时,获取错误Ora-12154 TNS could not resolve service name Tnspi​​ng到oracle服务以连接回复确定。运行dtsx作业的Windows 2003 x64服​​务器安装了32位Oracle Server,ODAC 32位和Oracle Client 32位。

2 个答案:

答案 0 :(得分:0)

计算机上的TNSNames设置可能是用户特定的。即连接可能会以您的身份登录,但在SQLAgent用户下运行时会失败。在我们的位置,我们使用联网的TNS名称文件,并在服务器上设置系统环境变量。这迫使它为所有用户使用相同的TNS名称文件:

TNS ADMIN = \\ server \ path \ ORACLE

答案 1 :(得分:0)

KayhanYÜKSEL,

  1. 您提到了SQL 2000和dtsx。这是哪一个?
  2. 您提到过64位服务器。 SQL也是64位吗?
  3. 您还提到了“工作”。这是SQL Agent的工作吗?
  4. 如果这是SQL 2005/8 64位且这确实是一个预定的作业,那么你就拥有着名的64位Vs. 32位问题。

    SQL代理将以64位运行,无法看到任何32位驱动程序。您是否安装了64位Oracle数据提供程序?

    如果tnsnames.ora不在默认位置,则需要设置TNS_NAMES环境变量。另外,请确保在SSIS包中使用正确的注册名称引用Oracle服务器。

    拉​​吉