摘:DBA案例CPU占用100%的问题
2009-04-07 14:58
399 查看
1.操作系统:排除可能是木马或病毒等。
2.应用系统:(a)重要表的索引建立和使用,(b)执行效率低的SQL导致查询或更新进程的阻塞,直至引发的死锁现象。
这都将成为引发SQL Server响应异常缓慢,CPU占用率高居不下的主要原因。
(1).首先执行sp_lock,排除X锁和IX锁。
(2).查询是否是由于重要表引起的CPU占用率高:
SELECT TOP 5 total_worker_time, last_worker_time,
max_worker_time, min_worker_time,
SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE statement_end_offset WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1)
as statement_text
FROM sys.dm_exec_query_stats as qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st
ORDER BY max_worker_time DESC
(3).开启SQL Server Profiler进行跟踪。
(a)通过trc文件可得知,Duration出现较大值的次数及objectType对象类型。
(b)有了trc文件,可让数据库引擎优化顾问分析并得出优化报告。
(c)择其善者而从之,执行一些重建索引和静态信息的语句等。
(d)更改备份计划,让备份完成后自动进行索引碎片重新组织的任务等。
2.应用系统:(a)重要表的索引建立和使用,(b)执行效率低的SQL导致查询或更新进程的阻塞,直至引发的死锁现象。
这都将成为引发SQL Server响应异常缓慢,CPU占用率高居不下的主要原因。
(1).首先执行sp_lock,排除X锁和IX锁。
(2).查询是否是由于重要表引起的CPU占用率高:
SELECT TOP 5 total_worker_time, last_worker_time,
max_worker_time, min_worker_time,
SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE statement_end_offset WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1)
as statement_text
FROM sys.dm_exec_query_stats as qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st
ORDER BY max_worker_time DESC
(3).开启SQL Server Profiler进行跟踪。
(a)通过trc文件可得知,Duration出现较大值的次数及objectType对象类型。
(b)有了trc文件,可让数据库引擎优化顾问分析并得出优化报告。
(c)择其善者而从之,执行一些重建索引和静态信息的语句等。
(d)更改备份计划,让备份完成后自动进行索引碎片重新组织的任务等。
相关文章推荐
- DBA案例分析:如何解决CPU占用100%的问题
- DBA案例分析:如何解决CPU占用100%的问题
- 摘:DBA案例CPU占用100%的问题
- DBA案例分析:如何解决CPU占用100%的问题
- DBA案例分析:如何解决CPU占用100%的问题
- DBA案例分析:如何解决CPU占用100%的问题
- Win7 64位系统总是出现CPU占用100%的问题解决!
- 解决SQLServer CPU占用100%的问题
- Oracle诊断案例---如何诊断和解决CPU高度消耗(100%)的数据库问题
- 解决VirtualBox占用100%CPU的问题
- WerFault.exe 占用CPU 100%的问题处理
- VMware运行后,CPU占用100%的问题解决
- 解决w3wp.exe内存占用问题w3wp.exe CPU占用100%
- oracle真实案例之oem大量占用cpu与内存问题的解决方法
- Eclipse启动参数解决占用CPU 100%,必须“立即结束”的问题
- 解决 flume KafkaSink 启动后cpu占用100%的问题
- openstack kvm WINDOWS虚拟机VDAGENT导致CPU占用100%问题的解决
- Eclipse启动参数解决占用CPU 100%,必须“立即结束”的问题
- 关于iexplore.exe占用CPU100%的问题
- 解决Dynamips对CPU 100%占用问题