本文列出目前在 SQL Server 中 Microsoft Fabric 鏡像資料庫 的限制。 本文可能會有所變動。
如需疑難排解,請參閱:
平臺限制
- 目前不支援在 Azure 虛擬機中執行的 SQL Server 2025 實例中使用 SQL Server Fabric Mirroring。
- SQL Server 2025 的 Fabric 鏡像目前在 SQL Server on Linux 中不支援。
資料庫層級限制
SQL Server 的 Fabric 鏡像僅支援可用性群組的主要資料庫。
- 容錯移轉叢集執行個體目前不支援 Fabric 鏡像。
如果 SQL Server 資料庫已經設定為 Azure Synapse Link for SQL,或該資料庫已在其他 Fabric 工作空間中被鏡像,那麼該資料庫將無法進行鏡像。
- 如果來源資料庫啟用變更資料擷取(CDC),你就無法在 SQL Server 2025 實例中鏡像資料庫。
你可以將最多 1000 個資料表鏡像到 Fabric 平台。 目前無法複製超過 1000 個限制的表格。
- 如果你在設定鏡像時選擇「 鏡像所有資料 」,那麼依據架構名稱及表格名稱按字母順序排序後的前1000個表格會被鏡像。 鏡像不包含字母列表底部剩餘的表格集合。
- 如果你清除了所有 資料鏡像 並選擇單一資料表,你最多只能選取 1000 個資料表。
.dacpac部署到 SQL Server 必須使用發佈屬性/p:DoNotAlterReplicatedObjects=False,以啟用對任何鏡像資料表的修改。 如需.dacpac部署可用的發行設定詳細資訊,請參閱 SqlPackage 發行文件 。當啟用以下功能時,SQL Server 2025 的 Fabric 鏡像不被支援:
- 重複
- CDC
- 從 SQL Server 2016-2022 進行 Fabric 鏡像需要 CDC。 檢閱 CDC 的已知問題和限制。
如果啟用了資料庫的 延遲交易耐久性,就無法進行 SQL Server 資料庫的鏡像。
來源資料庫中的權限
- 支援列級安全性,但權限目前未傳遞至 Fabric OneLake 複製的資料。
- 物件層級權限,例如對特定資料行授與的權限,目前不會同步至 Fabric OneLake 中的複製資料。
- 動態資料遮罩 設定目前並未應用於 Fabric OneLake 的複寫資料。
- 若要成功設定 SQL Server 的鏡像,請授予用於連接來源SQL Server的主體權限ALTER ANY EXTERNAL MIRROR。 此權限包含在較高階權限中,如 CONTROL 或 db_owner 角色。
- 在為 2016-2022 版 SQL Server 設定 CDC 時,管理員需要先成為系統管理員伺服器角色的成員,才能初始設定 CDC。 任何未來的 CDC 維護都需要擁有系統管理員伺服器角色的成員資格。 如果資料庫和需要進行鏡像的資料表已經啟用 CDC,則會使用 CDC 來進行鏡像。 若 CDC 尚未啟用,Tutorial: Configure Microsoft Fabric Mirroring from SQL Server 會將
fabric_login登入設定為暫時成為系統管理員伺服器成員,以便設定 CDC。 如果 CDC 已經存在,你不需要暫時加入fabric_login伺服器系統管理員的角色。
網路和連線安全性
- 不要從 Fabric 鏡像資料庫項目中移除 SQL Server 服務主體名稱(SPN)貢獻者的權限。
- 當 SQL Server 實例和 Fabric 工作空間位於不同租戶中時,
Microsoft Entra 租戶間的鏡像不被支援。 - SQL Server 中定義的 Microsoft Purview Information Protection/敏感度標籤並不會串接鏡像到 Fabric OneLake。
資料表層級
你無法在不支援的類型上鏡像主鍵或叢集索引的資料表(當主鍵不存在時)。 不支援的類型包括計算欄位、使用者自訂類型、幾何、地理、階層 ID、SQL 變體、時間戳、datetime2(7)、datetimeoffset(7) 及 time(7)。
Delta Lake 僅支援六位數的精度。 - 在 Fabric OneLake 的 Delta 檔案中,SQL 的 datetime2 型態具有 7 位數微秒精確度的欄位,沒有相同精確度的資料型態。 如果鏡像此類欄位,精度會下降,第七位小數點二位數會被裁剪。
- 在 Fabric OneLake 的 Delta 檔案中,datetimeoffset(7) 資料型別沒有具有相同精確度的對應資料型別。 如果鏡像此類欄位,精確度會損失(時區損失及小數點第七位)。
目前不支援叢集列存儲索引。
如果表格中的一個或多個欄位屬於大型二元物件(LOB)型別且大小大於 1 MB,Fabric OneLake 會將欄位資料截斷為 1 MB。
你無法,同步使用以下任何功能的來源資料表:
- 時態性記錄資料表和總賬歷程記錄資料表
- Always Encrypted(始終加密)
- 記憶體中的資料表
- 圖形
- 外部資料表
當啟用鏡像時,無法對 SQL 資料庫來源資料表執行以下資料表層級資料定義語言(DDL)操作。
切換分割區
- 改變主鍵
目前,如果資料表有 json 或 向量 資料型別,你無法鏡像。
- 目前,當資料表被鏡像時,你無法更改欄位以使用 向量 或 JSON 資料型別。
在 SQL Server 2025 中,當發生 DDL 變更時,針對變更的資料表會重啟完整的資料快照,並重新初始化資料。
在 SQL Server 2016-2022 中,當 DDL 變更時,鏡像會因以下錯誤失敗:
「資料表『SCHEMA.TABLE』的定義自從啟用CDC以來發生了變更。」 請重新啟用 CDC(EXEC sys.sp_cdc_disable_table @source_schema = N'SCHEMA', @source_name = TABLE', @capture_instance = N'SCHEMA_TABLE';EXEC sys.sp_cdc_enable_table @source_schema = N'SCHEMA', @source_name = TABLE', @role_name = NULL, @capture_instance = N'SCHEMA_TABLE', @supports_net_changes = 1;)」
要恢復鏡像,請使用錯誤訊息中提供的
sys.sp_cdc_disable_table和sys.sp_cdc_enable_table指令來停止並重新啟動 CDC。 接著資料表會重置並產生新的快照。在進行 SQL Server 2016-2022 鏡像時,如果資料表沒有主鍵,則無法對其進行鏡像。
欄位層級
- 來自 SQL Server 的 Fabric 鏡像不會複製以下資料型態:
- CLR
- 向量
- json
- 幾何
- 地理位置
- 層次識別碼(hierarchyid)
- sql_variant
- 時間戳/資料列版本
- xml
- 使用者定義型別 (UDT)
- 圖像
- 文字/ntext
- 如果來源資料表包含計算式欄位,無法將這些欄位鏡像到 Fabric OneLake。
- 鏡像支持複製包含空格或特殊字元的欄位名稱(例如
,;{}()\n\t=的欄位)。 針對在啟用此功能之前處於復寫狀態的數據表,您必須更新鏡像資料庫設定或重新啟動鏡像,以納入這些欄位。 如需更多資訊,請參閱 Delta 欄位映射支援。
倉儲限制
- 來源結構層次會複製到鏡像資料庫。 針對在啟用此功能之前建立的鏡像資料庫,來源架構會扁平化,並將架構名稱編碼為數據表名稱。 如果您想要使用架構重新組織數據表,請重新建立鏡像資料庫。 欲了解更多資訊,請參閱 「複製來源結構階層結構」。
鏡射物品限制
- 你需要成為管理員或成員工作空間角色的成員,才能建立 SQL 資料庫鏡像。
- 停止鏡像會完全停用鏡像功能。
- 開始鏡像會重設所有資料表,實際上是從頭開始。
SQL 分析端點限制
- SQL 分析端點與 Lakehouse SQL 分析端點相同。 這是相同的唯讀體驗。 欲了解更多資訊,請參閱 SQL 分析端點限制。
支援的區域
資料庫鏡像與開放鏡像在所有 Microsoft Fabric 區域皆可使用。 如需詳細資訊,請參閱 Fabric 區域可用性。