适用范围:SQL Server
简介
Microsoft SQL Server 混合产品支持使用故障排除工具帮助客户收集日志并缩小技术问题的范围。 这些工具可用于公开使用。 本文总结了 SQL Server 产品支持工程师使用的诊断工具。 本文详细介绍了各种故障排除方案,并显示了相应的日志收集和日志分析工具。
SQL Server 诊断工具
场景 | 要收集的基本日志 | 用于收集日志的工具 | 用于分析日志的工具 |
---|---|---|---|
可用性组 | - 群集日志 - 事件日志 - 系统监视器(性能监视器日志) - SQL Server 错误日志 - SQLDIAG XEL 文件 - AlwaysOn Health 会话 XEL 文件 - 系统运行状况会话 XEL 文件 - AG 数据移动的扩展事件 - AG 的 DMV 和目录视图快照 |
- 首选: SQL LogScout 使用 方案 “AlwaysOn”。 - 替代项: TSSv2 使用方案“SQL Base”。 - 替代项: PSSDIAG 使用自定义诊断“Always On 基本信息”。 |
- 首选: AGDiag 要使用的方案:分析故障转移和故障。 - 替代项: SQL Nexus 要使用的方案:性能、延迟、运行状况和最佳做法。 |
性能较低 | - 扩展事件 (XEvent) 跟踪捕获批处理级别的启动/已完成事件、错误和警告、日志增长/收缩、锁定升级和超时、死锁、登录/注销 - 主动运行 SQL 跟踪和 Xevents 的列表 - 跟踪等待/阻塞和高 CPU 查询的 SQL DMV 的快照 - 查询数据存储信息(如果处于活动状态) - tempdb SQL DMV/系统视图中的争用信息- 链接服务器元数据(SQL DMV/系统视图) - Service Broker 配置信息(SQL DMV/系统视图) |
- 首选: SQL LogScout 使用 方案 “GeneralPerf”、“DetailedPerf”或“LightPerf”。 - 替代项: PSSDIAG 使用方案“常规性能”、“详细性能”或“轻型性能”。 |
- 首选: SQL Nexus 要使用的方案:性能分析、最佳做法建议、瓶颈分析、阻塞和排名靠前的查询。 - 替代项: RML 实用工具 要使用的方案:查询分析,了解消耗资源最多的查询。 |
连接 | - BID 跟踪/驱动程序跟踪 - 网络跟踪 - 身份验证跟踪 - SQL Server 错误日志 - Windows 事件日志 NETSTAT 和 TASKLIST 的快照 |
- 首选: SQL 跟踪 在 INI 文件中配置收集设置。 - 替代项: SQL LogScout 使用 方案 “NetworkTrace”。 - 替代项: SSPICLIENT 遇到 SSPI 或 Kerberos 错误并记录详细的分析跟踪时,请使用此工具。 |
- 首选: SQL 网络分析器 UI SQL 网络分析器 要使用的方案:读取网络数据包捕获文件并生成报告,其中突出显示了感兴趣的潜在领域。 - 替代项: SQLCHECK 报告可能影响连接的任何设置。 - 替代方法: SQLBENCH 显示比较分析的计时。 - 替代项: DBTEST 记录连接所需的时间以及执行命令需要多长时间。 |
复制 | - SQL Server 错误日志 - 复制、CDC、CT 诊断信息(SQL DMV/系统视图) |
- 首选: SQL LogScout 使用数据收集 方案 “Replication”。” - 替代项: PSSDIAG 使用自定义诊断“复制”。 |
- 首选: SQL Nexus 要使用的方案:复制报表、性能分析、最佳做法建议、瓶颈分析、阻塞和排名靠前的查询。 |
安装/安装 | - 使用所有安装日志设置 Bootstrap 文件夹 | - 首选: SQL LogScout 使用数据收集 方案 “安装程序”。 |
|
备份/还原 | - 备份/还原进度 Xevent (backup_restore_progress_trace) - 备份还原进度的跟踪标志 - SQL VSS 编写器日志(在 SQL Server 2019 及更高版本上) - VSS 备份相关方案的 VSS 管理员(OS)日志 - 性能监视器 |
- 首选: SQL LogScout 使用数据收集 方案 “BackupRestore”。 |
|
内存使用率 | - 内存 clerk DMV 或 DBCC MEMORYSTATUS - 性能监视器 |
- 首选: SQL LogScout 使用数据收集 方案 “内存”。 |
- 首选: SQL Nexus 在 Memory Brokers 中使用:导入内存输出和查看的方案。 |
内存转储 | - 为特定 t-shooting 方案捕获的手动内存转储 - 针对异常方案自动生成的内存转储 |
- 首选: SQL LogScout 使用数据收集 方案 “DumpMemory”。 - 替代项: SQLDumper - 替代项: TSS V2 使用方案“SQL Base”收集现有内存转储。 |
- 首选: WinDbg (适用于 Windows 的调试工具) 要使用的方案: 加载和分析 内存转储。 - 替代方法: SQL CallStack 解析程序 |
数据库损坏 | SQL I/O 模式压力模拟 | SQLIOSim |