我创建了一个SSIS包,用于将数据从Oracle数据库提取到SQL server数据库。我已经在本地机器和服务器上成功地建立了ODBC连接,我可以在这两个环境中使用sqlplus连接到Oracle数据库。我的包裹在我的本地机器上运行良好。当我从服务器上的包存储区运行它时,它也成功地执行了,但是问题是,当我以sql作业的形式运行包时,我得到了以下错误:
描述:
错误HY000ODBCORA-12170: TNS:连接超时发生错误IM006ODBC驱动程序管理器驱动程序失败错误HY000ODBCORA-12170: TNS:连接超时发生在System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle RetCode retcode( System.Data.Odbc.OdbcConnectionHandle..ctor(OdbcConnection connection OdbcConnectionString constr environmentHandle) at System.Data.Odbc.OdbcConnectionOpen..ctor(OdbcConnection outerConnection OdbcConnectionString connectionOptions) ( System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options Object poolGroupProviderInfo ))在System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection DbConnectionPoolGroup poolGroup) at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)在System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection DbConnectionFactory connectionFactory( System.Data.Odbc.OdbcConnection.Open()
它能让人感觉到吗?
发布于 2014-04-26 09:56:13
ORA-12170表示到数据库侦听器的TCP连接失败。
如果这是一个经常发生的错误,那么检查连接字符串(特别是端口号)、防火墙和网络ACL。
如果这是一个不总是发生的瞬态错误,或者防火墙和网络ACL看起来还好,那么检查正确的ARP行为。最近我自己也遇到了这个问题,并在http://distracted-it.blogspot.co.nz/2014/04/ora-12170-tnsconnect-timeout-resolved.html上发表了这方面的博客
希望能帮上忙。
发布于 2015-10-07 10:34:31
ORA-12170可能由于缺乏权限而导致。Server代理服务帐户必须具有对Oracle客户端文件夹的访问权限。您可以通过以管理员身份登录到服务器并尝试手动运行作业来测试这是否是问题所在,如果作业是这样工作的,那么它可能是权限。若要更改权限,请执行以下操作:

。
发布于 2016-09-27 00:24:01
有时,当您在一个查询中访问DBLINK时会发生这种情况,而dblink上指向的数据库也关闭了,所以您也必须检查这一点。
https://stackoverflow.com/questions/23228716
复制相似问题