SQLServer CPU占用100%
解决CPU100%的情况,首先需排除病毒的情况 阻塞,其当前进程执行的 SQL 语法如下 ' exec sp_who2 5、看一下任务管理器,如果Sql Server 占有的内存即使在服务器最忙得时候都不超过2GB,而你有4GB内存,可以考虑在Windows boot.ini启动文件中加入 /3GB变量。这样SqlServer就可以使用3GB的内存,多1GB意味着更大的缓存,可以不用到Disk取频繁读取了6、运行profiler,跟踪器只选Stored procedure 和 T-Sql,在Filter(过滤) tab,选duration(时长)大于5000,这告诉跟踪器只捕捉运行时间超过5秒的程序。 你可以根据自己的情况调整这个变量。目的是找到制造麻烦的SQL.7、运行sp_who2,看blk by 栏, 如果这栏不是空白, 有一个数字, 这就是造成阻塞(blocking)的线程id. 然后运行DBCC Inputbuffer(线程id),你就可以看见这个线程在干什么。8、确认你的客户端程序使用connection pooling,并在完成任务后关闭连接。Sqlserver默认255个连接,如果使用connection pooling,这个值应该足够应付大多数情况。 如果你确认255不够,可以使用sp_configure重设这个值9、如果你不做日常维护,请立即开始。 经常用 DBCC indexDefrag. 每隔一段时间用DBCC DBREINDEX 重建 index. 你可以运行 DBCC Showcontig,然后看Scan Density ,如果主要的大表Scan Density < 40%,意味着你有严重的Fragmentation(碎片),该用DBCC REINDEX去整理了 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- sql-server – 优化数千个SQL Server数据库的性能
- 如何从包含多个数据库的mysqldump恢复一个数据库?
- 数据库 – 盐化密码哈希有什么好处?
- 数据库 – 删除旧域信任. Now Progress(9.1D)无法打开DB Fi
- 安装程序 – WIX,Dot Net管理的自定义Action,动态填充组合框
- sql – 基于VARCHAR大小的Amazon Redshift查询性能不佳
- SQL 存储过程语句拼接时间类型的问题解决方法
- SqlServe零碎要点---sqlserver如何使用日期计算,DateTime类
- 是否有.Net的动态Sql builder库?
- MySQL数据库优化技术之索引使用技巧总结