文章摘要
这篇文章介绍了如何通过系统工具和SQL Server的性能分析功能,排查和解决SQL Server性能问题。主要内容包括:
1. **资源排查**:使用`sysprocesses`表查找阻塞进程和使用`sp_who2`查看堵进程。
2. **SQL性能分析**:通过设置`SET STATISTICS`来获取执行时间、锁信息和IO统计。
3. **解决方法**:演示了如何使用`dbcc`命令清理输入缓冲区、临时数据库,并终止阻塞进程。
文章旨在帮助用户快速定位SQL Server性能瓶颈,关键词包括“SQL Server”、“资源排查”、“阻塞进程”、“锁ID”等。
目录一、数据库服务器资源排查二、数据库sql性能排查2.1、查询哪些资源被阻塞了 和 堵进程2.2、查询spid/BlkBy 阻塞进程语句2.3、查看指定数据库的锁id进行2.4、杀进程三、查询sql语句执行时间和sql语句性能总结

1)、查询哪些资源被阻塞了(spid为阻塞进程id)
select * from sys.sysprocesses where status=’suspended’
2)、查询堵进程(BlkBy阻塞进程id)
sp_who2 active查看堵的进程
dbcc inputbuffer(spid)
dbcc opentran(tempdb)
kill spid with statusonly
通过设置STATISTICS我们可以查看执行SQL时的系统情况。选项有PROFILE,IO ,TIME。介绍如下:
SET STATISTICS PROFILE ON –显示分析、编译和执行查询所需的时间(以毫秒为单位)。SET STATISTICS IO ON –报告与语句内引用的每个表的扫描数、逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息。SET STATISTICS TIME ON –显示每个查询执行后的结果集,代表查询执行的配置文件。SELECT [字段] FROM [表名] –SQL语句SET STATISTICS PROFILE OFFSET STATISTICS IO OFFSET STATISTICS TIME OFF

到此这篇关于sql server卡慢问题定位与排查过程的文章就介绍到这了,更多相关sql server卡慢问题定位内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:MySQL安装时一直卡在starting?server的问题及解决方法
© 版权声明
文章版权归作者所有,未经允许请勿转载。