SQLServer表查询变慢

thewitcher~ 2014-04-16 10:43:42
Card表 ,慢慢积累到现在有300多万条数据了。现在客户反应有时候查询很慢,有时候正常。
1.请问一般怎么检查导致这种状况的原因?
2.考虑怎么优化,从哪些场景考虑?
3.具体优化方法,请赐教。(包括数据库是否考虑压缩...)
求DBA大神~
...全文
438 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaojunyi3721 2014-05-04
  • 打赏
  • 举报
回复
没积分发问题 A表有MODULE_NAME(模块名称)和MODULE_ID列,其中MODULE_ID为空,MODULE_NAME列为一个这样格式可能是:”1、模块列表-产品实现-献血服务-献血核查。“,也可能是“1、产品实现。” B表(模块名称表)有ID和NAME(模块名称)列,NAME列的数据为标准信息,如“产品实现”。 数据就是这样的:A表的模块名称列里的数据包含B表的NAME的数据。 现在想通过将A表关联B表实现将B表的ID更新到A表的MODULE_ID列。 请问如何实现,谢谢。
haitao 2014-04-17
  • 打赏
  • 举报
回复
300多万条数据 算中小吧 索引做对了,应该不会慢 除非是like '%xxx%'
發糞塗牆 2014-04-17
  • 打赏
  • 举报
回复
如果只是这个表涉及的功能很慢,可以考虑把这些查询的执行计划贴出来,如果整个服务器很慢,建议从等待状态入手
Mr_Nice 2014-04-16
  • 打赏
  • 举报
回复
1、分析发生问题得时间点,比如业务高峰期 2、查看发生问题时的锁,阻塞信息 3、监控服务器IO变化 4、查看该查询相关表的碎片状况,索引状况 5、对查询语句进行优化 以上做了,基本能找到问题点,就好办了。 具体问题具体分析。 lz参考
唐诗三百首 2014-04-16
  • 打赏
  • 举报
回复
可能的原因很多,如锁阻塞,索引缺失,索引碎片,服务器磁盘IO繁忙等. 建议具体问题应具体分析,看所谓"查询很慢"时对应执行的TSQL语句是什么,当时进程是否有阻塞. 分析原因,然后针对性的解决问题.
Q315054403 2014-04-16
  • 打赏
  • 举报
回复
没实际诊断+分析,没法猜原因 或许慢时是因为阻塞,可能性太多 乐意提供有偿优化支持

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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