排查 SQL Server 中的 Fabric 镜像数据库问题

本文介绍在 SQL Server 实例中镜像数据库的故障排除步骤。

对 Fabric 容量或工作区的更改

更改到构造容量了解详细信息。

此外,请特别注意 SQL Server 的以下原因:

原因 结果 建议的解决方法
工作区已删除 镜像会自动停止,并禁用 SQL Server 中的更改源 如果镜像在 SQL Server 上仍然处于活动状态,请在 SQL Server 上执行以下存储过程: exec sp_change_feed_disable_db;
任何其他资源错误 镜像已禁用 为了确保计算资源不受影响并最大程度地减少对 SQL Server 的影响,将对任何持久性资源错误禁用镜像。
“用户可以使用 Fabric 外部的应用访问 OneLake 中存储的数据”设置已禁用 “复制程序 - 表无法访问复制状态” 启用租户设置 用户可以使用 Fabric 外部的应用访问 OneLake 中存储的数据

查询和常见解决方案疑难解答

SQL Server 2025 和 SQL Server 2025 之前的版本中,故障排除步骤和诊断查询可能有所不同。

SQL Server 2025 中的Fabric镜像疑难解答

SQL Server 2025 中故障排除的查询

如果在 SQL Server 2025 中遇到镜像问题,请使用动态管理视图(DMV)和存储过程执行以下数据库级别检查以验证配置。

  1. 执行以下查询,检查更改是否正确流动:

    SELECT * FROM sys.dm_change_feed_log_scan_sessions;
    
  2. sys.dm_change_feed_log_scan_sessions如果 DMV 在处理增量更改时未显示任何进度,请执行以下 T-SQL 查询来检查是否报告了任何问题:

    SELECT * FROM sys.dm_change_feed_errors;
    
  3. 如果没有报告任何问题,请执行以下存储过程来查看镜像 SQL Server 的当前配置。 确认它已正确启用。

    EXEC sp_help_change_feed;
    

    要在此处查找的键列是 table_namestate。 除指示潜在问题外 4 的任何值。

  4. 查看 Fabric 镜像数据库疑难解答

  5. 如果需要故障排除,请联系支持人员

扩展事件会话

以下扩展事件会话可用于对 SQL Server 2025 实例上的 Fabric 镜像进行故障排除。 建议仅创建此会话以进行故障排除或支持。

CREATE EVENT SESSION [sqlmirroringxesession] ON SERVER  
ADD EVENT sqlserver.synapse_link_addfilesnapshotendentry,  
ADD EVENT sqlserver.synapse_link_db_enable,  
ADD EVENT sqlserver.synapse_link_end_data_snapshot,  
ADD EVENT sqlserver.synapse_link_error,  
ADD EVENT sqlserver.synapse_link_info,  
ADD EVENT sqlserver.synapse_link_library,  
ADD EVENT sqlserver.synapse_link_perf,  
ADD EVENT sqlserver.synapse_link_scheduler,  
ADD EVENT sqlserver.synapse_link_start_data_snapshot,  
ADD EVENT sqlserver.synapse_link_totalsnapshotcount,  
ADD EVENT sqlserver.synapse_link_trace  
WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=ON)  
GO
 
ALTER EVENT SESSION [sqlmirroringxesession] ON SERVER
STATE = start;
GO

事务日志已满,因为复制日志重用等待

如果结构镜像源 SQL Server 数据库事务日志已满,因为 REPLICATION 日志重用等待,请考虑 启用自动执行的功能

对 SQL Server 中的源镜像数据库的性能影响

在 SQL Server 2025 中,可以创建资源调控器池来管理和限制 SQL Server 上的 Fabric 镜像的工作负荷。 可以使用资源调控器来管理数据库引擎资源消耗,并强制实施用户工作负荷的策略。 资源调控器允许你保留或限制各种服务器资源,包括用户查询工作负载可以使用的 CPU、内存和物理 I/O 量。 这样,就可以保护主要业务工作负荷免受 Fabric Mirroring 更改源数据收集的压力。