共用方式為


教學課程:從 Azure SQL 受控執行個體 設定Microsoft網狀架構鏡像資料庫 (預覽)

Fabric 中的鏡像是一項企業級、雲端式、零 ETL、SaaS 技術。 在本節中,您會瞭解如何建立鏡像 Azure SQL 受控執行個體 資料庫,此資料庫代表 OneLake 中所選資料庫 Azure SQL 受控執行個體 的只讀、持續復寫複本。

必要條件

開啟您 Azure SQL 受控執行個體 的系統指派受控識別 (SAMI)

您 Azure SQL 受控執行個體 的系統指派受控識別 (SAMI) 必須啟用,而且必須是主要身分識別,才能將數據發佈至 Fabric OneLake。

  1. 若要設定或確認 SAMI 已啟用,請移至 Azure 入口網站 中的 SQL 受管理執行個體。 在資源功能表的 [安全性] 底下,選取 [身分識別]
  2. 在 [系統指派的受控識別] 下,選取 [狀態] 為 [開啟]
  3. SAMI 必須是主要身分識別。 使用下列 T-SQL 查詢驗證 SAMI 是否是主要身分識別:SELECT * FROM sys.dm_server_managed_identities;

Fabric 的資料庫主體

接下來,您必須建立網狀架構服務連線到 Azure SQL 受控執行個體 的方式。

您可以使用登入和對應的資料庫使用者來完成此作業。 遵循安全性最低許可權的原則,您應該只授與您想要鏡像之資料庫中的CONTROL DATABASE許可權。

使用登入和對應的資料庫使用者

  1. 使用 SQL Server Management Studio (SSMS)Azure Data Studio 連線到您的 Azure SQL 受控執行個體。 連線至 master 資料庫。

  2. 建立伺服器登入並指派適當的權限。

    • 建立 SQL 驗證登入。 您可以選擇此登入的任何名稱,並在下列文稿中將其取代為 <fabric_login>。 提供您自己的強式密碼。 在 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];
    
  3. 將查詢範圍切換至您要鏡像的資料庫。 將資料庫的名稱取代為 <mirroring_source_database> ,然後執行下列 T-SQL:

    USE [<mirroring_source_database>];
    
  4. 建立連線到登入的資料庫使用者。 請以這個目的取代新資料庫用戶的名稱:<fabric_user>

    CREATE USER <fabric_user> FOR LOGIN <fabric_login>;
    GRANT CONTROL TO <fabric_user>;
    

    或者,針對 Microsoft Entra 登入,

    CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com];
    GRANT CONTROL TO [bob@contoso.com];
    

建立鏡像 Azure SQL 受控執行個體 資料庫

  1. 開啟 Fabric 入口網站
  2. 使用現有的工作區,或建立新的工作區。
  3. 瀏覽至 [建立] 窗格。 選取 [建立] 圖示。
  4. 捲動至 [數據倉儲] 區段,然後選取 [鏡像 Azure SQL 受控執行個體 (預覽)

線上到您的 Azure SQL 受控執行個體

若要啟用鏡像,您必須從 Fabric 連線到 Azure SQL 受控執行個體,以起始 SQL 受管理執行個體 與 Fabric 之間的連線。 下列步驟會引導您完成建立 Azure SQL 受控執行個體 連線的程式:

  1. 在 [新增來源] 下,選取 [Azure SQL 受控執行個體]。 或者,從 OneLake 目錄選取現有的 Azure SQL 受控執行個體 連線。
    1. 您無法使用現有 Azure SQL 受控執行個體 類型為 「SQL Server」 的連線(一般連接類型)。 只有連線類型為 「SQL 受管理執行個體」 的連線才支援 Azure SQL 受控執行個體 數據的鏡像。
  2. 如果您選取 [新增連線],請輸入 Azure SQL 受控執行個體 的連線詳細數據。 您必須連線到特定資料庫,您無法設定整個 SQL 受控實例及其所有資料庫的鏡像。
    • 伺服器:您可以流覽至 [Azure 入口網站 ][安全性] 功能表下的 [Azure SQL 受控執行個體 網络] 頁面,並查看 [公用端點] 字段,以找到 [伺服器名稱]。 例如: <managed_instance_name>.public.<dns_zone>.database.windows.net,3342
    • 資料庫:輸入您想要鏡像的資料庫名稱。
    • 連線:建立新連線。
    • 連線名稱:提供自動名稱。 您可以視需要變更它,以便日後尋找此 SQL 受控實例資料庫連線。
    • 驗證種類
      • 基本 (SQL 驗證)
      • 組織帳戶 (Microsoft Entra ID)
      • 租用戶 ID (Azure 服務主體)
  3. 選取 Connect

啟動鏡像程序

  1. 依預設,[設定鏡像] 畫面可讓您鏡像資料庫中的所有資料。

    • 鏡像所有資料表示啟動鏡像之後建立的任何新資料表都會進行鏡像。

    • (選擇性) 僅選擇要鏡像的特定物件。 停用 [鏡像所有資料] 選項,然後從資料庫選取個別資料表。

    • 如果數據表完全無法鏡像,它們會顯示錯誤圖示和相關說明文字。 同樣地,如果數據表只能鏡像並具有限制,則會以相關的說明文字顯示警告圖示。

    在本教學課程中,我們會選取 [鏡像所有資料] 選項。

  2. 在下一個畫面上,為目的地專案指定名稱,然後選取 [ 建立鏡像資料庫]。 現在請等候一兩分鐘,讓 Fabric 為您布建所有專案。

  3. 2-5 分鐘之後,選取 [ 監視複寫 ] 以查看狀態。

  4. 幾分鐘後,狀態應該會變更為 [執行中],這表示資料表正在同步處理。

    如果您沒有看到資料表和對應的複寫狀態,請等待幾秒鐘,然後重新整理面板。

  5. 當數據表的初始複製完成時,日期會出現在 [ 上次重新整理 ] 資料行中。

  6. 現在您的資料已啟動並執行,所有 Fabric 都有各種可用的分析案例。

重要

在來源資料庫中建立的任何細微安全性,都必須在 Microsoft Fabric 的鏡像資料庫中重新設定。

監視 Fabric 鏡像

設定鏡像後,系統會將您導向至 [鏡像狀態] 頁面。 在此,您可監視複寫的目前狀態。

以下是復寫狀態:

  • 針對整體資料庫層級監視:

    • 執行 – 複寫目前正在執行,將快照集和變更數據帶入 OneLake。
    • 執行時出現警告:複寫正在執行,並出現暫時性錯誤
    • 停止/已停止 – 複寫已停止。
    • 錯誤 – 無法復原的復寫嚴重錯誤。
  • 針對資料表層級監視:

    • 執行 –數據表中的數據已成功復寫到倉儲中。
    • 以警告執行 – 從數據表復寫數據時發生非嚴重錯誤的警告
    • 停止/已停止 - 複寫已停止
    • 錯誤 – 該資料表復寫時發生嚴重錯誤。

如果初始同步處理已完成, 則會在數據表名稱旁邊顯示 [上次完成 的時間戳]。 此時間戳表示 Fabric 上次檢查數據表是否有變更的時間。

此外,請注意數據列 復寫的數據 行。 它會計算數據表復寫的所有數據列。 每次復寫數據列時,都會再次計算。 這表示,例如,在來源上插入主鍵 =1 的數據列會增加一個「複寫的數據列」計數。 如果您使用相同的主鍵來更新數據列,請再次復寫至 Fabric,而且數據列計數會增加一個,即使它是再次復寫的相同數據列也一樣。 網狀架構會計算數據列上發生的所有複寫,包括插入、刪除、更新。

[ 監視復 寫] 畫面也會反映所鏡像數據表的任何錯誤和警告。 如果數據表有不支持的數據行類型,或整個數據表不受支援(例如,在記憶體或數據行存放區索引中),則會在此畫面上顯示有關限制的通知。 如需復寫狀態的詳細資訊和詳細數據,請參閱 監視網狀架構鏡像資料庫複寫。

重要

如果來源資料表中沒有任何更新,複寫引擎會開始退避,其中持續時間呈指數遞增,且最多為一小時。 複寫器引擎會在偵測到更新的資料之後自動繼續定期輪詢。