【发布时间】:2020-07-27 09:49:16
【问题描述】:
最近我们从本地迁移到基于 Azure VM 的 SQL Server 实例(本地 12C/128GB,Azure VM 16C/128GB)。我们从 2008 年迁移到 2016 年的 SSIS 包。
我们有一个 SSIS 包(在与 SQL Server 相同的 VM 上运行),它运行 15 个非常相似的并行序列容器。每个容器从自己的 EXT 表中选择数据,应用一些转换,然后将其插入到一个 STT 表中(所有容器通用)。两种类型的表都在同一个数据库中。有时在执行包时我们会随机遇到错误:
SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。 AcquireConnection 方法调用连接管理器 “DBCONN_STG_OLEDB”失败,错误代码为 0xC0202009。
没有一致性,每次错误发生在不同的任务上。旧环境中没有出现错误。
我怀疑与数据库的并行连接可能存在问题。错误很难重现,因为它是随机发生的。
【问题讨论】:
-
能否包含内部异常?这通常是由于弹性错误而发生的。 Azure feedback 遗憾的是,SSIS 不支持连接管理器上的弹性错误。
-
@PrebenHuybrechts 在我的例子中,SSIS 和数据库(SQL Server 标准实例)都位于同一个 Azure VM 上。我没有看到更多与此错误相关的日志。
标签: sql-server ssis