0

要求:我想将驻留在本地 SQL Server 上的特定表/视图中的数据复制到 Azure SQL DB。

基础设施:如下图所示。本质上,Azure 网络通过 Express Route 与企业网络直接相连。因此它是一个纯粹的私有网络连接;与企业网络本身一样好。

在此处输入图像描述

问题/问题:我知道有多种方法可以完成此操作,而且我不仅限于使用 ADF 复制数据工具。但是,对于所有这些,我看到一些需要注意的事项或额外的步骤,如下所示:

ADF 复制数据工具:需要 SH-IR 并且需要在托管 SQL 服务器的本地计算机上安装一个小型 MSI 包以进行注册。

逻辑应用:需要虚拟网关 (OR) ASE

应用服务:如果操作包装在 C# 应用程序中,并且我选择部署到 Azure Web 应用程序。然后为了连接到本地 SQL Server,我们需要设置混合连接管理器,并且在 #1 中,我们需要在本地机器上安装一些东西。

就我而言,这些额外的步骤都无法完成。本质上,本地 SQL Server 属于不同的 BU,因此我在那里没有任何权限;除非他们已授予表/视图。因此,这些额外的糟糕步骤都无法完成。

此外,如上所述;由于它是通过快速路由作为直接连接连接的,如上图所示,本地和 Azure SQL 本质上都在同一个公司网络内。因此,我应该能够直接访问它们,而无需配置上述任何额外步骤。

请确认这些并提供建议。

谢谢你。

4

2 回答 2

1

您仍然可以在没有 SHIR 的情况下使用 ADF 方案,方法是使用私有端点在托管 VNET 中创建 ADF。由于您已经拥有 ER 电路并且可以灵活地配置 Azure 端,您能否使用 Azure IR 执行此操作:使用私有终结点从数据工厂托管 VNet 访问本地 SQL Server - Azure 数据工厂 | 微软文档

于 2022-02-11T22:00:53.447 回答
0

有 2 种解决方案可以适用于您的场景,但即使它们可以正常工作,您也需要在某种程度上访问本地 SQL 服务器机器访问权限,至少一次配置和 Azure SQL db 应该可以通过安装在本地的 SSMS 访问机器。

  1. 使用链接服务器

您可以在本地服务器上创建链接服务器(此处解释的过程https://www.sqlshack.com/create-linked-server-azure-sql-database/)并创建代理服务器作业以将数据插入到 Azure SQL数据库表。

  1. 通过 Python 脚本

这需要在本地机器上安装 Python。安装后,您可以编写脚本在本地 SQL 服务器和 Azure SQL db 之间传输数据。您可以使用代理服务器作业再次安排此脚本。

于 2022-02-11T17:11:13.380 回答