【问题标题】:Supported data providers for Oracle in Azure Data Factory SSIS IRAzure 数据工厂 SSIS IR 中支持的 Oracle 数据提供程序
【发布时间】:2020-07-27 07:59:45
【问题描述】:

我们正在尝试使用 Azure 数据工厂 SSIS 集成运行时服务来运行一组现有的 SSIS 包(基本上是将数据从 oracle 传输到 SQL Server)。

但是,在部署时,出现验证错误,提示“Package xxx: Connection xxx contains unsupported provider.”

我们尝试在 SSIS 包中使用以下两个提供程序,它们都被报告为不受支持:

  1. “OLE DB 的 Oracle 提供程序”
  2. “OracleClient 数据提供程序”

在使用 SSIS IR 访问 ADF 中的 Oracle 时支持哪些提供程序?

【问题讨论】:

  • 嗨 Gayan Dasanayake,我的回答对你有帮助吗?
  • @LeonYue 我们尝试将所有组件放入同一个子网,但没有解决问题。我们必须自定义 SSIS IR 并安装所需的驱动程序。

标签: oracle ssis azure-data-factory azure-data-factory-2


【解决方案1】:

使用诸如“Oracle Provider for OLE DB”之类的提供程序连接到 Oracle 时,我们需要将其安装到运行 SSIS IR 的节点上。这可以通过使用门户自定义 SSIS IR 来完成。

https://docs.microsoft.com/en-us/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup

步骤总结:

  1. 下载并编辑上面提供的示例脚本(main.cmd) 链接(来自 publicpreview 容器)
  2. 将其与 ODAC122010Xcopy_x64.zip 文件一起上传到 Azure 斑点容器。
  3. 获取此文件夹的“共享访问签名”uri。
  4. 关闭 SSIS IR。
  5. 去自定义 SSIS IR 并提供复制的链接。
  6. 重新启动 SSIS IR。

【讨论】:

    【解决方案2】:

    您的 SSIS 包正在访问本地本地 Oracle 数据库。

    如您所知,Azure 无法直接连接到本地资源。例如,当我们需要访问本地 SQL 服务器时,我们必须使用自托管集成运行时。

    将其部署到 Azure 并在数据工厂中运行包时,您将收到错误消息。

    我们可以从文档中得到原因:Azure-SSIS Integration Runtime:

    Azure-SSIS IR 网络环境

    Azure-SSIS IR 可以在公共网络或专用网络中预配。 通过将 Azure-SSIS IR 加入连接到本地网络的虚拟网络,支持本地数据访问

    解决方案:Join an Azure-SSIS integration runtime to a virtual network

    如果您的 SSIS 包访问仅允许特定静态公共 IP 地址的数据存储/资源,并且您希望从 Azure-SSIS IR 保护对这些资源的访问,则可以在加入时为 Azure-SSIS IR 携带自己的公共 IP 地址将其添加到虚拟网络,然后将 IP 防火墙规则添加到相关资源以允许从这些 IP 地址进行访问。

    很抱歉我不能为你测试它,因为我没有Oracle环境。

    希望这会有所帮助。

    【讨论】:

    • Azure 无法连接到本地资源是不正确的。正确配置的 VNET 集成和自定义 DNS 将允许此连接。问题似乎是 Azure-SSIS 无法使用 Oracle 提供程序,因为未安装所需的软件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-14
    • 2021-05-18
    • 1970-01-01
    相关资源
    最近更新 更多