Fabric 中的镜像是一种基于云的企业级零 ETL SaaS 技术。 本节将介绍如何创建一个镜像 SQL Server 数据库,即在 OneLake 中创建一个只读的、连续复制的 SQL Server 数据副本。
先决条件
- 在本地或云中安装或使用现有的SQL Server实例。
- 在教程中,我们建议使用现有数据库之一的副本或任何可从备份中快速恢复的现有测试或开发数据库。
- 安装 T-SQL 查询工具,例如 SQL Server Management Studio (SSMS)或 MSSQL 扩展用于 Visual Studio Code。
- 你需要已经存在的 Fabric 容量。 如果没有, 请启动 Fabric 试用版。
- Fabric 容量需要处于活动状态并正在运行。 被暂停或删除的容量会阻止 Fabric Mirroring 功能,而且不会复制任何数据。
- 需要 Fabric 租户设置。 请确保启用以下两个 Fabric 租户设置:
- 查看 Microsoft Fabric 中从 SQL Server 镜像数据库平台限制。
- SQL Server实例的网络中的本地数据网关或虚拟网络数据网关。 数据网关的网络必须通过专用终结点连接到SQL Server实例,或者防火墙规则允许。
Fabric 的数据库主体
接下来,需要创建一种方法,让 Fabric 服务向SQL Server实例进行身份验证。
可以使用登录名和映射的数据库用户来完成此操作。
使用登录用户和映射的数据库用户
Fabric 将使用专用登录名连接到源SQL Server实例。
按照以下说明操作以在 SQL Server 2025 或 SQL Server 2016-2022 中创建用于数据库镜像的登录名和数据库用户。
要从 SQL Server 2025 镜像数据,您在通过 Fabric 门户创建镜像数据库时,需要在工作区中具有成员或管理员角色。 在创建期间,会自动向SQL Server的托管标识授予对镜像数据库的“读取和写入”权限。 具有参与者角色的用户没有完成此步骤所需的重新共享权限。
从 SQL Server 2025 开始,Fabric 登录所需的权限为:
- 用户数据库中的以下权限:
- SELECT
- 更改任何外部镜像
- 查看数据库性能状态
- 查看数据库安全状态
- 用户数据库中的以下权限:
使用 T-SQL 查询工具(如 SQL Server Management Studio(SSMS) 或 适用于 Visual Studio Code 的 MSSQL 扩展)连接到 SQL Server 实例。
连接到
master数据库。 创建服务器登录名并分配相应的权限。重要
对于 AlwaysOn 可用性组中的SQL Server实例,必须在所有SQL Server实例中创建登录名。 主体
fabric_login在每个副本实例中必须具有相同的 SID。- 创建名为
fabric_login的 SQL 身份验证登录名。 可以为此登录名选择任何名称。 提供自己的强密码。 在master数据库中运行以下 T-SQL 脚本:
--Run in the master database USE [master]; CREATE LOGIN [fabric_login] WITH PASSWORD = '<strong password>';- 或者,以 Microsoft Entra 管理员身份登录,并从现有帐户创建使用 Microsoft Entra ID 进行身份验证的登录信息(建议)。 在
master数据库中运行以下 T-SQL 脚本:
--Run in the master database USE [master]; CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER;- 创建名为
连接到您计划镜像到Microsoft Fabric的用户数据库。 创建连接到登录名的数据库用户,并授予所需的最低权限:
- 对于经过 SQL 身份验证的登录:
--Run in the user database CREATE USER [fabric_user] FOR LOGIN [fabric_login]; GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW DATABASE PERFORMANCE STATE, VIEW DATABASE SECURITY STATE TO [fabric_user];- 或者,可以使用经过身份验证的 Microsoft Entra 登录(建议):
--Run in the user database CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com]; GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW DATABASE PERFORMANCE STATE, VIEW DATABASE SECURITY STATE TO [bob@contoso.com];
连接到您的SQL服务器
从 SQL Server 2025 开始,从 SQL Server 配置 Fabric 镜像数据库的说明和要求有所不同。
从 SQL Server 2025 开始,启用Azure Arc的服务器是与 Fabric 通信的必要配置的一部分。 在 SQL Server 2025 之前,不需要 Azure Arc,复制基于 变化数据捕获(CDC)。
将服务器连接到Azure Arc并启用托管标识
若要配置 Fabric 镜像,需要为 SQL Server 2025 实例配置Azure Arc。
如果尚未安装,请将服务器连接到Azure Arc并安装 SQL Server 的 Azure 扩展。
- 按照 快速入门 - 将混合机器连接到启用了 Azure Arc 的服务器 中的步骤进行。
- 将SQL Server实例连接到Azure Arc时,SQL Server的 Azure 扩展会自动安装。
- 对于在 AlwaysOn 可用性组中运行的SQL Server实例,所有节点都必须连接到Azure Arc。
如果尚未配置,您应该为由 Azure Arc 启用的 SQL Server 配置托管身份,以便启用 Fabric 镜像所需的出站身份验证。
连接到本地 SQL Server 2025 实例。 连接时,选择 “信任服务器证书”。
查看托管标识:
--Run in the master database USE [master]; SELECT * FROM sys.dm_server_managed_identities;这应返回 1 行,其中包含正确的
client_id和tenant_id。Identity_type应为“系统分配”。
在Microsoft Fabric中添加托管标识权限
SQL Server的托管标识由Microsoft Fabric自动创建和授予权限。
但是,对于在 Always On 可用性组中运行的 SQL Server 实例,需要为每个辅助节点的系统分配托管标识(SAMI)授予对 Fabric 工作区 Contributor 权限。 当 SQL 实例连接到 Azure Arc 时,Azure 扩展会为 SQL Server 创建一个托管标识,并且需要手动为每个托管标识授予 Fabric 权限。
- 在 Fabric 门户中,向每个辅助节点的托管标识授予 Fabric 权限。
在 Fabric 工作区中,选择“ 管理访问权限”。
选择“添加人员或组”。
在 “添加人员 ”对话框中,查找可用性组中每个节点的服务器名称。
将每个成员身份分配给 贡献者 角色。
配置本地或虚拟网络数据网关
检查 Fabric 是否满足访问 SQL Server 的网络要求。 需要 安装本地数据网关 或 创建虚拟网络数据网关 来镜像数据。 请确保本地网关计算机的网络可以连接到SQL Server实例。 有关详细信息,请参阅
若要使用本地数据网关,请执行以下步骤:
- 从官方Microsoft下载中心下载本地数据网关。
- 开始安装。 请按照 安装本地数据网关中的说明进行操作。
- 提供Microsoft帐户电子邮件地址。
- 名称:
MyOPDG或所需的任何名称。 - 恢复密钥:提供强大的恢复密钥。
创建镜像SQL Server
- 打开 Fabric 门户。
- 使用现有的工作区,或创建新的工作区。
- 导航到“创建”窗格。 选择“创建”图标。
- 滚动以选择 Mirrored SQL Server 数据库。
- 输入要镜像的SQL Server数据库的名称,然后选择 Create。
将 Fabric 连接到SQL Server实例
若要启用镜像,需要从 Fabric 连接到 SQL Server 实例,以从 Fabric 启动连接。 以下步骤指导你完成创建与SQL Server的连接的过程:
在 “新建源”下,选择SQL Server数据库。 或者,从 OneLake 中心选择现有的SQL Server连接。
如果选择新连接,请输入SQL Server实例的连接详细信息。
- Server:Fabric 用于访问SQL Server实例的完全限定服务器名称路径,与 SSMS 使用的完全限定服务器名称路径相同。
小窍门
SQL Server AlwaysOn 可用性组中的实例,请对 Server 使用 Always On 侦听器。
-
Database:输入SQL Server的名称。
- 连接:创建新连接。
- 连接名称:会自动提供名称。 你可以更改它。
- 数据网关: 根据使用场景选择您设置的数据网关。
- 身份验证类型:选择身份验证方法并提供在 “使用登录名和映射数据库用户”中设置的主体。
- 选中“ 使用加密连接 ”复选框。
选择 连接。
重要
必须在Microsoft Fabric镜像数据库中重新配置源数据库中建立的任何精细安全性。 有关详细信息,请参阅如何:保护从 SQL Server 到 Microsoft Fabric 的镜像数据库数据。
启动镜像过程
“配置镜像”屏幕允许你镜像数据库中的所有数据,这是默认选项。
镜像所有数据意味着,镜像启动后创建的任何新表都会被镜像。
也可选择只镜像某些对象。 禁用“镜像所有数据”选项,然后从数据库中选择单独的表。
在本教程中,我们将选择“镜像所有数据”选项。
选择“ 创建镜像数据库”。 镜像开始。
等待 2-5 分钟。 然后,选择“监视复制”以查看状态。
几分钟后,状态应变为“正在运行”,这表明正在同步表。
如果未看到表和相应的复制状态,请等待几秒钟,然后刷新面板。
完成表的初始复制后,“上次刷新”列中会显示一个日期。
现在,您的数据已准备就绪,整个 Fabric 平台提供了各种可用的分析场景。
监视结构镜像
配置镜像后,将定向到“镜像状态”页。 可以在此处监视复制的当前状态。
有关复制状态的详细信息,请参阅监控 Fabric 镜像数据库的复制。
验证 OneLake 中的数据
在 Fabric 镜像启动并运行后,现在可以从 Microsoft Fabric 中的 SQL Server 数据库中查询。 有关可能性,请参阅 使用 Microsoft Fabric 探索镜像数据库中的数据。
性能优化
现在镜像已启动并运行,请了解如何在 Microsoft Fabric 中通过 SQL Server 优化源数据库和镜像数据库的性能。