【问题标题】:SSIS and 64-bit Microsoft Access Database EngineSSIS 和 64 位 Microsoft Access 数据库引擎
【发布时间】:2014-11-03 16:01:34
【问题描述】:

我们的开发服务器具有带 SSIS 的 SQL Server 2008 R2 64 位。为了能够直接从 T-SQL 导入 XLSX 文件(通过OPENROWSET),我们在开发服务器上安装了Microsoft Access Database Engine Redistributable 64-bit。服务器已经安装了 32 位版本,所以我们安装了 /passive 开关。

自那以后,我们现有的软件包就失败了。其中一个报告

该步骤未生成任何输出。返回值未知。 进程退出代码为 -1066598274。步骤失败。

只是想知道是否其他人已成功配置他们的服务器以能够将OPENROWSET 用于 XLSX 文件并且在同一台服务器上也有 SSIS,或者有人知道这种配置是否可行?

编辑: 我应该补充一点,失败的包是从 SQL 代理作业运行的。当我通过 SQL Server Management Studio 连接到服务器的集成服务管理器并运行包时(通过导航到包,右键单击它并选择运行包),它成功执行。

【问题讨论】:

  • 通过在 SSIS 管理器中单击右键运行它和在 SQL 代理中运行它是非常不同的。用户账号不同,包运行位置不同。当您右键单击并运行时,您是登录到服务器还是在远程客户端上?失败时,您是否收到任何“无法获取连接”错误?这个excel连接是唯一的连接吗?
  • specify the DTEXEC command line in SQL Agent to use the 32-bit or 64-bit version 时会发生什么?另请参阅here 以了解选择执行哪个版本的其他可能方式。
  • @Nick.McDermaid "当您右键单击并运行时,您是登录到服务器还是在远程客户端上?"在远程客户端上。 “当连接失败时,您是否收到任何‘获取连接失败’错误?”不。“这个excel连接是唯一的连接吗?”不。问题出在生产服务器上,我们在那里有很多连接。
  • @BaconBits“使用 32 位运行时”在出现错误之前已启用。
  • 当您右键单击一个包并在 SSMS 中的 SSIS 节点上运行它时,您就像您自己一样在客户端上运行它。这就是它起作用的原因。我建议您返回源并登录 SSMS 并直接在其中运行您的OPENROWSET T-SQL。有什么错误吗?如果您只使用 OPENROWSET 从 Excel 中获取数据,那么 DTExec 位数应该是无关紧要的,它是访问 ACE 驱动程序的 SQL Server,而不是 SSIS

标签: sql-server ssis sql-server-2008-r2 aceoledb


【解决方案1】:

就我个人而言,我已经放弃了尝试支持这种情况 - 我认为“/passive”安装是一种实际上不起作用的 hack,并且通常会破坏您安装的其他 ADE。我会完全卸载 ADE,然后只重新安装 32 位。然后,我将强制所有通过 SQL 代理运行的包以 32 位执行(如 Brian 所述)。

按照此过程,您可以对调试问题有一些希望,因为您可以在 Visual Studio 中打开您的包,它将使用相同的 32 位驱动程序。从 SSMS(也是 32 位)执行时,您还将使用一致的驱动程序。

是的,可能会影响性能,但 SSIS 性能通常在一定程度上受到 I/O 或网络速度的限制,而不仅仅是纯粹的引擎吞吐量。

【讨论】:

    【解决方案2】:

    是的,这是可能的。您必须在作业步骤中指定使用 32 位运行时。打开运行您的 SSIS 包之一的每个作业步骤,然后单击“执行选项”。选中底部的“使用 32 位运行时”框。

    【讨论】:

    • 我在收到错误之前就这样做了。实际上,“使用 32 位运行时”解决了另一个错误:SSIS DTS_E_OLEDB_EXCEL_NOT_SUPPORTED
    【解决方案3】:

    我也有“该步骤未生成任何输出。返回值未知。进程退出代码为 -1066598274。该步骤也失败了”。
    我为自己找到了一个解决方法:我从使用xlsx 切换到xls,并且不再引发错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多