Fabric 中的镜像是一种基于云的企业级零 ETL SaaS 技术。 在这部分,你将了解如何创建镜像 Azure SQL 数据库,从而在 OneLake 中创建 Azure SQL 数据库数据的只读、连续复制的副本。
先决条件
- 创建或使用现有的 Azure SQL 数据库。
- 源 Azure SQL 数据库可以是单一数据库,也可以是弹性池中的数据库。
- 如果没有 Azure SQL 数据库,请创建一个新的单一数据库。 如果尚未使用 Azure SQL 数据库免费服务,可以使用它。
- 查看 Azure SQL 数据库的层级和购买模型要求。
- 在教程中,我们建议使用现有数据库之一的副本或任何可从备份中快速恢复的现有测试或开发数据库。 如果要使用现有备份中的数据库,请参阅从 Azure SQL 数据库的备份还原数据库。
- 需要 Fabric 的现有容量。 如果没有,请启动 Fabric 试用版。
- 如果要从现有备份镜像数据库,请参阅从 Azure SQL 数据库中的备份还原数据库。
- Fabric 容量需要处于活动状态并正在运行。 暂停或删除的容量会影响镜像,不会复制任何数据。
- 确保启用以下 Fabric 租户设置。 若要了解如何启用租户设置,请参阅 Fabric 租户设置。
- 检查 Fabric 的网络要求以访问 Azure SQL 数据库:如果 Azure SQL 数据库不可公开访问,并且不允许 Azure 服务连接到 Azure 数据库,则可以 创建虚拟网络数据网关 或 安装本地数据网关 来镜像数据。 确保 Azure 虚拟网络或网关计算机的网络可以通过 专用终结点 连接到 Azure SQL Server,或者防火墙规则允许。
启用 Azure SQL 逻辑服务器的系统分配的托管标识 (SAMI)
必需启用 Azure SQL 逻辑服务器的系统分配托管标识 (SAMI),并且必须是主要标识,才能将数据发布到 Fabric OneLake。
- 若要配置 SAMI 或验证 SAMI 是否已启用,请转到 Azure 门户中的逻辑 SQL Server。 在“资源”菜单中的“安全性”下,选择“标识”。
- 然后在“系统分配的托管标识”下,将“状态”设置为“开启”。
- SAMI 必须是主要标识。 使用以下 T-SQL 查询验证 SAMI 是否为主要标识:
SELECT * FROM sys.dm_server_managed_identities;
Fabric 的数据库主体
接下来,需要建立将 Fabric 服务连接到 Azure SQL 数据库的方法。
可以使用登录名和映射的数据库用户来完成此操作。
使用登录名和映射的数据库用户
注释
Microsoft Entra 服务器主体(登录名)当前处于 Azure SQL 数据库的预览阶段。 在使用 Microsoft Entra ID 身份验证之前,请查看 Microsoft Entra 服务器主体的限制。
使用 SQL Server Management Studio (SSMS) 或 Visual Studio Code mssql 扩展连接到 Azure SQL 逻辑服务器。
连接到
master
数据库。 创建服务器登录名并分配相应的权限。- 创建名为
fabric_login
的 SQL 身份验证登录名。 可以为此登录名选择任何名称。 提供自己的强密码。 在master
数据库中运行以下 T-SQL 脚本:
CREATE LOGIN [fabric_login] WITH PASSWORD = '<strong password>'; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [fabric_login];
- 或者,以 Microsoft Entra 管理员身份登录,并从现有帐户创建经过身份验证的 Microsoft Entra ID。 在
master
数据库中运行以下 T-SQL 脚本:
CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [bob@contoso.com];
- 创建名为
连接到要镜像的用户数据库。 创建连接到登录名的数据库用户,并授予所需的最低权限:
对于经过 SQL 身份验证的登录:
CREATE USER [fabric_user] FOR LOGIN [fabric_login]; GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW PERFORMANCE DEFINITION TO [fabric_user];
或者,使用 Microsoft Entra 身份验证登录:
CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com]; GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW PERFORMANCE DEFINITION TO [bob@contoso.com];
创建镜像 Azure SQL 数据库
- 打开 Fabric 门户。
- 使用现有的工作区,或创建新的工作区。
- 导航到“创建”窗格。 选择“创建”图标。
- 滚动到“数据仓库”部分,然后选择“镜像 Azure SQL 数据库”。 输入要镜像的 Azure SQL 数据库的名称,然后选择“创建”。
连接到 Azure SQL 数据库
要启用镜像,需要从 Fabric 连接到 Azure SQL 逻辑服务器,以启动 SQL 数据库 和 Fabric 之间的连接。 以下步骤将指导你创建与 Azure SQL 数据库的连接:
- 在“新建源”下选择“Azure SQL 数据库”。 或者,从 OneLake 中心选择现有的 Azure SQL 数据库连接。
- 如果选择了“新建连接”,请输入 Azure SQL 数据库的连接详细信息。
-
服务器:通过导航到 Azure 门户中的 Azure SQL 数据库“概述”页面,可以找到服务器名称。 例如,
server-name.database.windows.net
。 - 数据库:输入 Azure SQL 数据库的名称。
- 连接:创建新连接。
- 连接名称:会自动提供名称。 无法更改它。
- 数据网关: 选择默认(无)或根据方案设置的虚拟网络数据网关/本地数据网关的名称。
-
身份验证种类:
- 基本(SQL 身份验证)
- 组织帐户 (Microsoft Entra ID)
- 租户 ID(Azure 服务主体)
- 需要服务主体凭据,但不需要服务主体密钥。
-
服务器:通过导航到 Azure 门户中的 Azure SQL 数据库“概述”页面,可以找到服务器名称。 例如,
- 选择“连接” 。
启动镜像过程
“配置镜像”屏幕允许你镜像数据库中的所有数据,这是默认选项。
镜像所有数据意味着,镜像启动后创建的任何新表都会被镜像。
也可选择只镜像某些对象。 禁用“镜像所有数据”选项,然后从数据库中选择单独的表。
在本教程中,我们将选择“镜像所有数据”选项。
选择“镜像数据库”。 镜像开始。
等待 2-5 分钟。 然后,选择“监视复制”以查看状态。
几分钟后,状态应变为“正在运行”,这表明正在同步表。
如果未看到表和相应的复制状态,请等待几秒钟,然后刷新面板。
完成表的初始复制后,“上次刷新”列中会显示一个日期。
现在,你的数据已启动并运行,整个 Fabric 中具有各种可用的分析场景。
重要
在源数据库中建立的任何粒度的安全性,都必须在 Microsoft Fabric 中的镜像数据库中重新配置。
监视 Fabric 镜像
配置镜像后,将定向到“镜像状态”页。 可以在此处监视复制的当前状态。
有关复制状态的详细信息和详细信息,请参阅 Monitor Fabric 镜像数据库复制。