針對 Azure SQL 受控執行個體 的網狀架構鏡像資料庫進行疑難解答 (預覽)
本文涵蓋鏡像 Azure SQL 受控執行個體 的疑難解答步驟。
Fabric 容量或工作區的變更
原因 | 結果 | 建議的解決方案 |
---|---|---|
Fabric 容量已暫停/刪除 | 鏡像停止 | 1. 從 Azure 入口網站繼續或指派容量 2. 移至 Fabric 鏡像資料庫項目。 從工具列中,選取 [停止複寫]。 3. 在 Fabric 入口網站中選取鏡像項目的鏡像資料庫,以啟動複寫。 |
繼續 Fabric 容量 | 鏡像不會繼續 | 1. 移至 Fabric 鏡像資料庫項目。 從工具列中,選取 [停止複寫]。 2. 在 Fabric 入口網站中選取鏡像項目的鏡像資料庫,以啟動複寫。 |
工作區已刪除 | 鏡像自動停止 | 1.如果鏡像在 Azure SQL 受控執行個體 上仍然作用中,請在 Azure SQL 受控執行個體 上執行下列預存程式:exec sp_change_feed_disable_db; 。 |
Fabric 試用版容量已過期 | 鏡像自動停止 | 請參閱 Fabric 試用版容量到期。 |
T-SQL 查詢以進行疑難排解
如果您遇到鏡像問題,請使用動態管理檢視 (DMV) 和預存程序來執行下列資料庫層級檢查,進而驗證組態。
執行下列查詢,以檢查變更是否正確流動:
SELECT * FROM sys.dm_change_feed_log_scan_sessions;
如果
sys.dm_change_feed_log_scan_sessions
DMV 未顯示處理累加變更的任何進度,請執行下列 T-SQL 查詢,以檢查是否有回報任何問題:SELECT * FROM sys.dm_change_feed_errors;
如果沒有回報任何問題,請執行下列預存程式來檢閱鏡像 Azure SQL 受控執行個體 目前的組態。 確認其已正確啟用。
EXEC sp_help_change_feed;
這裡要尋找的索引鍵資料行是
table_name
和state
。4
以外的任何值都表示潛在的問題。 (表格不應該坐得太久, 以外的4
狀態)如果複寫仍然無法運作,請確認正確的 SAMI 物件具有許可權(請參閱 SPN 許可權)。
- 在 Fabric 入口網站中,選取鏡像資料庫上的 "..." 省略號選項。
- 選取 [管理權限] 選項。
- 確認 Azure SQL 受控執行個體 名稱會顯示為 [讀取]、[寫入] 許可權。
- 確定顯示的 AppId 符合 Azure SQL 受控執行個體 SAMI 的識別碼。
如果需要疑難排解,請連絡客戶支援。
受控識別
必須啟用 Azure SQL 受控執行個體 的系統指派受控識別 (SAMI),而且必須是主要身分識別。
啟用之後,如果 SAMI 設定狀態已關閉或一開始啟用,則為停用,然後再次啟用,則 Azure SQL 受控執行個體 至 Fabric OneLake 的鏡像將會失敗。 重新啟用後的 SAMI 與停用前的身分識別不同。 因此,您必須授與新的 SAMI 許可權,才能存取 Fabric 工作區。
SAMI 必須是主要身分識別。 使用下列 SQL 確認 SAMI 是主要身分識別: SELECT * FROM sys.dm_server_managed_identities;
不支援使用者指派的受控識別 (UAMI)。 如果您新增 UAMI,它會成為主要身分識別,並將 SAMI 取代為主要身分識別。 這會導致複寫失敗。 解決方式:
- 移除所有 UAMI。 驗證已啟用 SAMI。
SPN 權限
請勿移除網狀架構鏡像資料庫專案的 Azure SQL 受控執行個體 服務主體名稱 (SPN) 參與者許可權。
如果您不小心移除 SPN 許可權,鏡像 Azure SQL 受控執行個體 將無法如預期般運作。 來源資料庫無法鏡像任何新資料。
如果您移除 Azure SQL 受控執行個體 未正確設定 SPN 許可權或許可權,請使用下列步驟。
- 選取鏡像受控實例專案上的省略號選項,將SPN新增為使用者
...
。 - 選取 [管理權限] 選項。
- 輸入公用端點 Azure SQL 受控執行個體。 提供 [讀取] 和 [寫入] 權限。