sqlservr.exe进程cpu占用很高,经常到100%,怎么办?
在我的服务器上,机器配置是比较高的,数据库有10几个,现在sqlservr.exe进程cpu占用很高,经常到100%,看了sql server里面的进程占用情况,经常是master,msdb,等占用cpu很高,另外一个数据库lumigent数据库占用也很高,朋友们帮我分析分析,如何降低cpu的占用率。不胜感谢!
------解决方案--------------------SP4与防火墙有没有装?
------解决方案--------------------有没有特耗cpu的存储过程与函数
------解决方案--------------------据说这在sql 2005非常正常
------解决方案--------------------使用 SQL Server Profiler 跟踪一下,主要是跟踪每个事件所使用的 CPU 时间,看看是什么占用的最长,
跟踪2个小时以后分析一下Sql语句的问题还是系统进程的问题,IsSystem字段判断是系统还是非系统
------解决方案--------------------路过关注
------解决方案--------------------sp4 是肯定要装的,要跟踪你的数据库管理的,进程信息,看看锁定的对象。再看看事务处理的东西有没有在忙时间处理的。看看其它进程,锁定对象有没有影响触发器。还要知道大部分锁的内容
------解决方案--------------------杀毒
跟踪一下SQL语句,检查一下可能是哪些SQL语句的低效率导致CPU居高不下
------解决方案--------------------SQL語句盡量都加上with(nolock)
------解决方案--------------------重启服务器,断开所有连接看看!
------解决方案--------------------要么真的请求繁忙,要么就是数据库程序写的糟糕