SQLServer中Tempdb空间异常增长及占用非常大该怎么办

技术SQLServer中Tempdb空间异常增长及占用非常大该怎么办SQLServer中Tempdb空间异常增长及占用非常大该怎么办,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章

如果SQLServer中的Tempdb空间增长异常,占用了太多空间,该怎么办?我相信很多没有经验的人对此无能为力。为此,本文总结了问题产生的原因及解决方法。希望你能通过这篇文章解决这个问题。

一、问题现象

我们大量生产的SQLServer在半夜发出了磁盘空间不足的警报。登上检查后发现tempdb已经超过500GB。

二、原因解析

与AP用户沟通后,AP用户告诉我们AP逻辑有问题,导致tempdb异常增长。

三、解决方法

1.如果可以重新启动SQL Server,将自动重新创建tempdb,这样tempdb将恢复到其原始大小。但是,除非绝对必要,否则尽量不要重启大规模生产环境。

2.直接收缩tempdb(但总是不成功)。

命令

使用[tempdb]

DBCC收缩文件(n' tempdb.mdf ',0,仅截断)-释放所有可用空间。

DBCC收缩文件(n' tempdb.mdf ',500)-将数据文件收缩到500MB

DBCC收缩文件(n' templog.ldf ',10)-将日志收缩到10MB

(2)图形界面

3.如果不能收缩tempdb,可以先用下面的方法处理,然后再收缩。

为了提高tempdb的性能,SQL Server 2005和更高版本缓存了一些IAM页面以供将来重用。在这种情况下,必须先释放IAM页面,然后才能释放其对应的页面。因此,通过DBCC FREESYSTEMCACHE,从所有缓存中释放所有未使用的缓存条目,然后收缩tempdb。

使用[tempdb]

DBCC自由系统高速缓存(“所有”)

DBCC SHRINKFILE (N'tempdb.mdf ',500)

看完以上内容,你是否掌握了如何处理SQLServer中Tempdb空间异常增长和巨大占用的方法?如果您想学习更多技能或了解更多相关内容,请关注行业资讯频道,感谢您的阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/124807.html

(0)

相关推荐

  • 有哪些更改数据库密码的方式

    技术有哪些更改数据库密码的方式这篇文章主要讲解了“有哪些更改数据库密码的方式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“有哪些更改数据库密码的方式”吧!1.忘记 roo

    攻略 2021年10月22日
  • geojson在线可视化(制作geojson)

    技术如何通过手动修改GeoJson文件实现省级镂空Feature制作如何通过手动修改GeoJson文件实现省级镂空Feature制作,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小

    攻略 2021年12月13日
  • ?【Java深层系列】「技术盲区」让我们一起探索一下Netty(Java)底层的“零拷贝Zero-Copy”技术,上)

    技术?【Java深层系列】「技术盲区」让我们一起探索一下Netty(Java)底层的“零拷贝Zero-Copy”技术,上) ?【Java深层系列】「技术盲区」让我们一起探索一下Netty(Java)底层

    礼包 2021年12月24日
  • 如何借力Docker搞定MySQL主从复制!

    技术如何借力Docker搞定MySQL主从复制!如何借力Docker搞定MySQL主从复制!,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。不过很多小伙伴反映

    攻略 2021年10月25日
  • c++面试题(c++和Python哪个好)

    技术如何进行C++模板显式具体化的分析如何进行C++模板显式具体化的分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。模板函数虽然非常好用,但是也存在一些问

    攻略 2021年12月18日
  • 如何使用variant代替union

    技术如何使用variant代替union如何使用variant代替union,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。union(联合体

    攻略 2021年11月10日