无法在变量列表中找到SSIS变量

时间:2015-02-10 17:15:45

标签: ssis

我的SSIS任务至少在过去两年中运行良好。 IT将任务移动到新服务器,现在它在变量列表中找不到“变量名称”User :: obEmailBody“错误。

我将任务复制回桌面,运行正常。它只在服务器上失败。我已经验证了变量是否存在并且正在我的测试环境(本地桌面)中填充。我不知道为什么它在服务器上失败了。变量是system.object。

服务器上是否存在阻止创建system.object变量的设置?

2 个答案:

答案 0 :(得分:1)

我最近遇到过这种类型的问题,它有一个相当简单直接的包,它从excel电子表格中读取数据,清理将数据传递给SQL存储过程的数据,这些数据需要每晚运行。此程序包作为SQL集群环境中的SQL作业执行。在投入生产之后,我们发现其中一个节点没有问题,而另一个节点给我们错误"变量名称' User :: oInternalUser'无法在变量列表中找到"。这些节点的唯一区别是SSIS组件是在服务器启动后安装的。经过几个小时的故障排除后,我们决定向微软开出一张票。经过近4个小时的两次资源故障排除后,我们得到了以下建议。

  • 将SQL 2012升级到Service Pack 3.这应该可以修复SSIS组件中的任何损坏。
  • 安装64位版本的Ace驱动器并以64位模式执行包。
  • 执行时间旅行追踪。我被告知在此过程中可能会遇到的性能损失虽然听起来很有希望,但性能影响的程度未知并且在生产环境中不是一个好主意。

我们采用的解决方案是使用所有SSIS组件重建服务器,并安装64位版本的ACE驱动程序以64位模式运行程序包。这解决了我们的问题。我们制作了服务器的副本,这两个重建的服务器现在包含了我们的集群。

答案 1 :(得分:0)

我最终删除了Recordset Destination任务并重新创建。