【发布时间】:2020-01-17 03:14:19
【问题描述】:
我有一个 SSIS 包(在包部署中),它将数据从一个数据库/表复制到另一个数据库/表。这个包有三个连接:
- 一个用于源数据库
- 一个用于暂存区(目标)
- 一个用于配置数据库
打开包时,它会为config 连接获取一个环境变量,然后使用该连接访问SSIS_Configurations 并设置另外两个连接。当我在服务器本身的 Visual Studio 中打开该文件时(因此文件、VS 和 Config 数据库都在同一个框中),一切都按预期工作。
我们想从运行包的盒子中卸载工具。为此,我们正在建立一个工作站。该站安装了 Visual Studio(连同所有相关的数据库驱动程序),并有一个网络驱动器 Z:\ 映射到第一台服务器,指向 SSIS 包。现在,如果我在 Z:\ 上创建一个项目并将包添加到其中,打开包,我得到一个错误。它可以很好地连接到配置数据库,但是当它尝试检索其他两个连接的连接字符串时,我得到了
警告加载 .dtsx:没有足够的存储空间来完成此操作
知道是什么导致了这个错误吗?
我已经检查过了
- 有足够的可用磁盘空间和内存
-
这不是 .Net 错误。这是在专家交流中提出的,所以我在 Powershell 脚本中使用 .Net 对此进行了测试。这运行良好(注意:Powershell 在这里只是一个切线,不在这个问题的范围内):
[reflection.assembly]::loadwithpartialname("System.IO") $f = @() $f = [System.IO.Directory]::GetFiles("Z:\<dir\to\package>\") for ($i=0;$i -le $f.length; $i++) { Write-Host $f[$i] } 我看了这个没用:SSIS - Process failing with message : "Not enough storage is available to complete this operation"
- 我也见过这个。仅供参考,我的工作站上有 3GB 可用 RAM,服务器上有 >20GB 可用内存:Not enough storage is available to complete this operation
【问题讨论】:
标签: ssis