【问题标题】:DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGERDTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER
【发布时间】:2021-02-12 18:21:34
【问题描述】:
我有一个 SSIS 包,其中源:IBM DB2,目标:SQL Server。
我在 SSIS 中创建了一个包,并且能够在我的本地机器上完美运行。所有连接都运行良好,数据填充在目标表中。
但是,在将其部署到 SQL Server 后,程序包会失败,并在屏幕截图中显示以下错误。检查服务器是否安装了用于 DB2 的 IBM OLEDB 驱动程序。请帮帮我。
【问题讨论】:
标签:
sql-server
ssis
db2
connection-string
【解决方案1】:
您的错误信息显示:
SQL1031N 在指定文件上找不到数据库目录
系统。
这不是编程问题,只是配置。该消息意味着(您的 SSIS 主机名上的 Db2 产品的)配置尚未开始或尚未完成。
您可以使用 GUI 或通过命令行进行配置。
这项工作必须在需要数据源的主机名上完成(例如在 SSIS 环境中)。
对于 GUI:使用该 SSIS 环境的远程桌面,然后使用odbcad32 工具。请注意,odbcad32 可以同时存在 32 位版本和 64 位版本,因此请使用正确的位数来匹配 SSIS 和 Db2 驱动程序位数。使用 odbcad32 为 Db2 数据库创建和配置数据源。通常这意味着创建和配置系统数据源。您还可以在 odbcad32 中测试与 DSN 的连接。使用 odbcad32 创建数据源的行为将(在幕后)导致创建 Db2“数据库目录”。
您也可以通过命令行操作(如果相关 Db2 工具在 PATH 上,请参阅 db2 catalog tcpip node、db2 catalog database、db2 catalog system data source commands )或填充名为 @ 987654327@(Db2 驱动程序在运行时解释)。所有这些命令和配置文件都在免费的在线 Db2 知识中心中进行了全面描述。