机房有台windows server2003的服务器上装了sql server200。服务器配置为4CPU,8G.
同网段内的客户端访问数据库服务很正常。
但是不同网段的客户端访问数据库服务器,能连接上数据库服务,直接ping 数据库服务所在的服务器。延时小于1毫秒。
但是在服务器上通过任务管理器查看到sqlserver.exe这个进程的CPU占用率为50%。请问大家遇到过这样的问题吗?
同网段内的客户端访问数据库服务很正常。
但是不同网段的客户端访问数据库服务器,能连接上数据库服务,直接ping 数据库服务所在的服务器。延时小于1毫秒。
但是在服务器上通过任务管理器查看到sqlserver.exe这个进程的CPU占用率为50%。请问大家遇到过这样的问题吗?
解决方案 »
- 面试题 没做出来 郁闷
- 惊天梦幻超困难的select排序语句!!!挑战人体左脑逻辑推理极限!!!
- 帮女朋友问个MS-S中查询优化的问题(回答和帮顶的都有分!)
- 为什么我的SQL Server2000的master库里没有XP_COMMSHELL存储过程?
- 数据库语句纠错。。在线等,准备散分
- 无法登录。求解决方法
- 能否自己定义违反约束时候报错的异常信息?
- 请教个语句?
- 帮我看看这个问题:http://community.csdn.net/Expert/topic/4517/4517570.xml?temp=.4794123
- A good sp form MSDN (SP_LOCK2)
- SQL复杂打撒排序问题(平均分配会员信息条数排序)
- sqlserver datepart 可以用变量表示吗?
我觉得应该和语句没有任何关系。只要一连接上sql server服务,
不做任何操作,sqlserver.exe的cpu占用率就很高.
SELECT
substring(text,qs.statement_start_offset/2
,(CASE
WHEN qs.statement_end_offset = -1 THEN len(convert(nvarchar(max),
text)) * 2
ELSE qs.statement_end_offset
END - qs.statement_start_offset)/2)
,qs.plan_generation_num as recompiles
,qs.execution_count as execution_count
,qs.total_elapsed_time - qs.total_worker_time as total_wait_time
,qs.total_worker_time as cpu_time
,qs.total_logical_reads as reads
,qs.total_logical_writes as writes
,last_execution_time
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st
LEFT JOIN sys.dm_exec_requests r
ON qs.sql_handle = r.sql_handle
ORDER BY 3 DESC
如果没有查出比较占CPU的查询,有可能中了SQL的蠕虫病毒?
http://topic.csdn.net/t/20051114/10/4391346.html
或--占用CPU最多
SELECT TOP 10 total_worker_time / execution_count AS [Avg CPU Time],
(SELECT Substring(text, statement_start_offset / 2, ( CASE
WHEN statement_end_offset = -1 THEN Len(CONVERT(NVARCHAR(max), text)) * 2
ELSE statement_end_offset
END - statement_start_offset ) / 2)
FROM sys.Dm_exec_sql_text(sql_handle)) AS query_text,
*
FROM sys.dm_exec_query_stats
ORDER BY [Avg CPU Time] DESC 找到后分析问题所在
用SQL Profiler工具跟踪一下.