教程:配置来自 Azure SQL 数据库的 Microsoft Fabric 镜像数据库
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 API”。 若要了解如何启用租户设置,请参阅 Fabric 租户设置。
- Fabric 访问 Azure SQL 数据库的网络要求:
- 目前,镜像不支持 Azure 虚拟网络或专用网络后的 Azure SQL 数据库逻辑服务器。 如果 Azure SQL 逻辑服务器在专用网络后,则无法启用 Azure SQL 数据库镜像。
- 需要将 Azure SQL 逻辑服务器防火墙规则更新为“允许公用网络访问”,并启用“允许 Azure 服务”选项以连接到 Azure SQL 数据库逻辑服务器。
启用 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 数据库的方法。
可以使用登录名和映射的数据库用户来完成此操作。
使用登录名和映射的数据库用户
使用 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 ID 身份验证的登录名。 在
master
数据库中运行以下 T-SQL 脚本:
CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [bob@contoso.com];
- 创建名为
使用 Azure 门户查询编辑器、SQL Server Management Studio (SSMS) 或 Visual Studio Code mssql 扩展连接计划镜像到 Microsoft Fabric 的 Azure SQL 数据库。
创建连接到登录名的数据库用户:
CREATE USER fabric_user FOR LOGIN fabric_login; GRANT CONTROL TO fabric_user;
或者,
CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com]; GRANT CONTROL 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 镜像数据库复制。
重要
如果源表中没有更新,复制引擎将开始以指数级速度延长处理的间隔时间,最长可达一小时。 检测到更新数据后,复制引擎将自动恢复常规的轮询。