来自 Azure SQL 数据库的 Microsoft Fabric 镜像数据库的限制和行为(预览版)

本页面列出了来自 Azure SQL 数据库的 Microsoft Fabric 镜像数据库当前存在的限制。 此页面的内容可能随时发生变化。

有关故障排除,请参阅:

活动事务、工作负载以及复制程序引擎行为

  • 活动事务将继续保留事务日志截断,直到事务提交并且镜像 Azure SQL 数据库跟上进度,或事务中止。 长时间运行的事务可能会导致填充超过通常情况的事务日志量。 应监视源数据库事务日志,以避免填充大量事务日志。 有关详细信息,请参阅长时间运行的事务和 CDC 导致事务日志增长
  • 用户工作负载各不相同。 在初始快照期间,源数据库的 CPU 和 IOPS(读取页面的每秒输入/输出操作)资源使用量可能会增加。 表更新/删除操作可能会导致生成的日志增加。 详细了解如何监视 Azure SQL 数据库的资源
  • 复制引擎会单独监视每个表的更改。 如果源表中没有更新,复制引擎将开始以指数级速度延长处理表的间隔时间,最长可达一小时。 如果出现暂时性错误,数据刷新受阻,也会出现同样的情况。 检测到更新数据后,复制引擎将自动恢复常规的轮询。

数据库级别的限制

  • 对 Azure SQL 数据库的 Fabric 镜像仅支持可写的主数据库。
  • 如果数据库已启用变更数据捕获 (CDC)、Azure Synapse Link for SQL,或数据库已在其他 Fabric 工作区中镜像,则无法镜像该 Azure SQL 数据库。
  • 可以镜像到 Fabric 中的表不超过 500 个。 当前,超出 500 个表的限制后,无法复制任何表。
    • 如果在配置镜像时选择“镜像所有数据”,将依次根据架构名称和表名称按字母顺序对所有表进行排序,要镜像的表为前 500 个表。 按字母顺序排序的列表底部的剩余表不会被镜像。
    • 如果取消选择“镜像所有数据”,并选择单独的表,则无法选择超过 500 个表。

源数据库中的权限

  • 对于配置为镜像到 Fabric OneLake 的 Azure SQL 数据库,目前不支持行级安全性
  • 对象级权限(例如向某些列授予的权限)当前不会从源 SQL 数据库传播到 Fabric 中。
  • 动态数据掩码设置当前不会从源 SQL 数据库传播到 Fabric。
  • 若要为 Azure SQL 数据库成功配置镜像,需要向用于连接源 Azure SQL 数据库的主体授予 CONTROLdb_owner 权限。

网络和连接安全性

  • 源 SQL 服务器需要启用“允许公用网络访问”“允许 Azure 服务”,以进行连接。
  • 需要启用 Azure SQL 逻辑服务器的系统分配托管标识 (SAMI),并且必须是主要标识。
  • 不应从 Fabric 镜像数据库项中移除 Azure SQL 数据库服务主体名称 (SPN) 参与者权限。
  • 如果 Azure SQL 数据库和 Fabric 工作区位于不同的租户中,则不支持跨 Microsoft Entra 租户进行镜像。 
  • 在 Azure SQL 数据库中定义的 Microsoft Purview 信息保护/敏感度标签不会级联和镜像到 Fabric OneLake。

表级别

  • 不能镜像没有定义的主键的表。
    • 不能镜像使用定义为非聚集主键的主键的表。
  • 如果主键是数据类型之一,则无法镜像表:sql_varianttimestamp/rowversiondatetime2(7)datetimeoffset(7)time(7)(精度7为 7 位)。 Delta Lake 仅支持六位数的精度。
  • 聚集列存储索引当前不受支持。
  • 如果表中的一个或多个列是大型二进制对象 (LOB) 类型,并且大小 > 1 MB,则列数据在 Fabric OneLake 中将被截断为 1 MB 大小。
  • 无法镜像使用了以下任何功能的源表。
    • 时态历史记录表和账本历史记录表
    • Always Encrypted
    • 内存中表
    • Graph
    • 外部表
  • 源表启用 Fabric SQL 数据库镜像后,不允许在源表上进行以下表级别的数据定义语言 (DDL) 操作。 
    • 切换/分割/合并分区
    • 更改主键
    • 截断表
  • 有 DDL 更改时,会为更改的表重新启动完整的数据快照,并重新设定数据种子值。

列级别

  • 如果源表包含计算列,则无法将这些列镜像到 Fabric OneLake。 
  • 如果源表包含数据类型不受支持的列,则无法将这些列镜像到 Fabric OneLake。 不支持以下数据类型。
    • image
    • text/ntext
    • xml
    • json
    • rowversion/timestamp
    • sql_variant
    • 用户定义类型 (UDT)
    • geometry
    • 地理
  • SQL 表的列名称不能包含空格,也不能包含以下字符:space , ; { } ( ) \n \t =

仓库限制

  • 源架构层次结构不会复制到镜像数据库。 相反,源架构将被平展,架构名称会被编码为镜像数据库表名称。 

镜像项限制

  • 用户必须是工作区管理员/成员角色的成员,才能创建 SQL 数据库镜像。 
  • 停止镜像会完全禁用镜像。 
  • 启动镜像后,会重新设定所有表的种子值,实际上就是从头开始。 

SQL 分析终结点限制

支持镜像的 Fabric 区域

以下是支持 Azure SQL 数据库镜像的 Fabric 区域:

亚太:

  • 澳大利亚东部
  • 澳大利亚东南部
  • 印度中部
  • 东亚
  • Japan East
  • 韩国中部
  • 东南亚
  • 印度南部

欧洲

  • 北欧
  • 西欧
  • 法国中部
  • 德国中西部
  • 挪威东部
  • 瑞典中部
  • 瑞士北部
  • 瑞士西部
  • 英国南部
  • 英国西部

美洲:

  • 巴西南部
  • 加拿大中部
  • 加拿大东部
  • 美国中部
  • 美国东部
  • 美国东部 2
  • 美国中北部
  • 美国西部
  • 美国西部 2

中东和非洲

  • 南非北部
  • 阿拉伯联合酋长国北部

下一步