【发布时间】:2018-01-17 09:59:22
【问题描述】:
由于业务的几个要求,我不得不将 SSIS 引入我的 SQL Server 工作中,因为我无法使用 SQL Server 和 SSMS 标准安装中现成的其他方法来实施更改。
直到 SSIS 要求一切正常:SSMS 运行良好,使用 VS2010 shell 将 SSRS 报告直接部署到服务器,并且能够比使用 Report Builder 更好地维护我的报告。但这对于几个项目来说是不够的,所以选择了 SSIS 来解决这个不足。
在部署软件包之前一切正常。开发、测试和构建 - 包就像一个魅力。但是部署的包是行不通的。故障排除指向 32/64 位问题,并且仅在服务器代理作业属性中的高级配置中检查了选项“32 位运行时”之后。当我安装和使用的所有东西都是 64 位时,这怎么可能?显然,这会带来额外的问题(ODBC 驱动程序、其他应用程序都需要 32 位版本),并且如果可能的话,解决这些问题并不像微软认为的那么明显。
然后,遵循以下逻辑:如何使用 Microsoft Stack 设置真正的端到端 64 位环境?
【问题讨论】:
-
听起来您没有使用平面文件连接来连接文件。我猜对了吗?如果是,原因很简单,BIDS是32bit的应用;它不能使用64位驱动(BIDS现在已经10年了,当时很多人还在使用32位操作系统,所以32位是有意义的)。
-
@Larnu - 在您提出一些观点时修改了问题。所以,放弃了 BIDS,因为它是一种习惯的力量,它被提及了。请查看改进后的问题。
-
我承认,我不完全确定您的问题是什么。您首先声明有时您的一个(已部署?)软件包会失败。但是,您没有讨论任何错误消息,只是说它在 SSDT 中运行良好。然后你突然换了个思路,问为什么一定要用32位驱动?好吧,对于 csv 是的文本文件 9)你不必这样做;只需使用平面文件连接。如果您使用的是 Excel 连接管理器,那么您必须使用 32 位版本的 SSDT。 32 位应用程序不能使用 64 位驱动程序,即使在 64 位主机上也是如此。
-
@Larnu - 再次修改了这个问题。抱歉之前的尝试。没有任何借口,即使我在之前的尝试中搞砸了是有原因的。
-
可能的原因是因为您正在使用的东西只有 32 位驱动程序,因此在使用该软件包时,您必须在 32 位模式下运行。 ACE 驱动程序就是一个“很好”的例子。在 SSDT 中,应用程序是 32 位的,因此 必须 使用 32 位驱动程序。如果您也是 SQL Server,则只安装了 32 位驱动程序(不是 64 位),那么您必须再次使用 32 位运行时选项。就是这样;关于您使用的驱动程序。如果您的工作没有 64 位驱动程序,但有 32 位驱动程序,则您已在 32 位中运行(反之亦然)。
标签: sql-server visual-studio-2017 64-bit ssis-2014