如何处理SQL Server的CPU占用率过高的问题?

xiaozhe 2000-04-11 10:22:00
一台Web Server
一台SQL Server
当Web Server向SQL Server发出查询请求时,返回的数据集大于300条时,SQL Server的CPU占用率将过高。并且同一个页面我不停地刷新,CPU占用率将越来越大。直至100%。
这种问题有没有办法解决?
...全文
1038 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaozhe 2000-04-17
  • 打赏
  • 举报
回复
谢谢各位的回答,虽然没有达到我的要求,但是还是把分给分了吧。
l_wind 2000-04-14
  • 打赏
  • 举报
回复
如果你在SQL Server上用存储过程来查询,会优化性能,减少资源消耗。
因为存储过程是线程调用并对数据表专门优化。随便说说,希望有帮助。
paul_feng 2000-04-12
  • 打赏
  • 举报
回复
试试在你的WEB程序里,把打开的连接都关掉,把对象都破坏掉
例如如果你的页面是用ASP写的,定义了一个CONNECTION和RECORDSET对象
如:set conn=server.createobject("adodb.connection")
conn.open "你的连接数据库参数"
set rs=server.createobject("adodb.recordset")
sqlstr="...."
rs.open sqlstr,conn
...
在程序的最后,调用以下语句
rs.close
set rs=nothing
conn.close
set conn=nothing
这样不仅可以断开无谓的连接,节省数据库资源,还可以防止内存泄漏,节省宝贵的内存空间,当然还可以解决你的问题
sintony 2000-04-11
  • 打赏
  • 举报
回复
用top语句限制数据集的大小。
呵呵
xiaozhe 2000-04-11
  • 打赏
  • 举报
回复
这个办法不能根本上解决问题。我用这种办法限制返回的数据集的大小,在单个页面的情况下没有问题,但是当我不停地刷新同一个页面时,就有问题了,CPU的占用率就不断地增大,直至100%。
本课程根据讲师十多年在世界500强外企的生产环境中的SQL Serer数据库管理和项目实施经验倾心打造。课程系统性强,知识体系完整,覆盖90%以上的企业环境下SQL Server高可用场景,课程中不仅演示详细的操作步骤,更加突出最常见的故障和问题,让学员少走“弯路”,不只是让学员学会“操作”更能让学员“操作”的规范,满满的干货分享,一些课程资料(架构图、部署规划表格等)不仅可以帮助学员掌握技能,也可以作为学员在企业生产环境中实施SQL Server高可用的配置文档、操作手册等。课程的实验环境介绍:1)全部基于微软域环境和企业版SQL Server AOAG - 95%以上的企业环境都是在域环境中,不介绍非域环境和标准版的SQL Server高可用性组,这的配置在企业中较罕见,没有实践意义,不浪费学员时间。2)相应域环境已提前部署和配置好 - 学员导入虚拟机即可开始实验,无需从零开始搭建域环境,所有实验中SQL Server均已加域,直入主题,节省大量时间。3)最新的Windows Server故障转移集群(WS2016、WS2019)和最新版本的SQL ServerSQL2017、SQL2019) -  WS2016-SQL2017与WS2019-SQL2019是目前大多数企业SQL Server高可用的主要平台,基于微软产品生命周期现在一些企业也在讲早期的AOAG向这两个版本迁移,掌握这两种组合不仅让学员学会,更能学有所用。本课程为后续SQL Server进阶课程铺垫,是通向SQL Server DBA 专家的必经之路,讲师每周答疑两次。所有课程资料包括:课程PPT、架构图、部署规划表格、各类脚本学员均可下载。     

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧