ITPub博客

首页 > 数据库 > SQL Server > tempdb数据文件暴增分析

tempdb数据文件暴增分析

原创 SQL Server 作者:z_cloud_for_SQL 时间:2023-02-27 11:44:50 0 删除 编辑
背景

某客户tempdb数据文件突然暴增,导致磁盘可用空间紧张,让我们找到暴增的原因。

现象 1

登录到SQL专家云,通过趋势分析进行回溯,在4月12日,tempdb数据文件在3个小时内从10GB涨到了80GB。随后使用空间(黄线)下降,但是总空间(蓝线)保持不变。

进一步查看发现暴增的为tempdb内部对象。

分析 2

 

 


在活动会话页面看到对应时间段内在运行很多个消耗大、运行时间长的语句。

进入ID为61的会话完整信息,可以看到该会话内部对象释放空间达到了27G左右。是集团报表产生的查询语句,十分复杂,里面用到了 大量的jion、union、order by、子查询等,都会消耗tempdb的内部对象空间。其他的会话也是相同的语句。



定位到语句后就很容易找到原因,以前都是选择一个月的时间进行统计,这次因为误操作,选择了一年的时间,执行时间长导致页面一直没有返回,所以操作人员重复进行查询,造成了同时运行多个相同的语句。

解决 3

  1. 重启SQL Server服务把tempdb恢复到初始大小;

  2. 发现SQL语句写法存在严重的性能问题,进行优化后,性能得到十几倍的提升;

  3. 完善程序,例如限制时间的选择,不允许重复点击按钮等。



北京格瑞趋势科技有限公司是聚焦于数据服务的高新技术企业,成立于2008年,创始团队及核心技术人员来自微软和雅虎。微软数据平台金牌合作伙伴,卫宁健康数据平台战略合作伙伴。通过产品+服务双轮驱动的业务模式,14年间累计服务4000+客户,覆盖互联网、市政、交通、电信、医疗、教育、电力、制造业等各个领域。



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70023658/viewspace-2937129/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
数据库技术运营,多年IT行业从业经验。

注册时间:2022-11-02

  • 博文量
    55
  • 访问量
    61931