Sql server 2008 r2 SQL Server 2008 r2 TempDB数据文件未将空间释放回操作系统

Sql server 2008 r2 SQL Server 2008 r2 TempDB数据文件未将空间释放回操作系统,sql-server-2008-r2,tempdb,dbcc,Sql Server 2008 R2,Tempdb,Dbcc,DBCC CheckDB“myDB”进程成功完成后,临时数据库数据文件未清除空间或将空间分配给操作系统。我使用SP_WhoIsActive脚本进行诊断,发现DBCC-CheckDB进程导致了temp-db的增长,但这只发生在一个大约16gb的数据库中,DBCC-CheckDB正在使用temp-db,正如我使用SP_-WhoIsActive所看到的那样 注意:当我重新启动SQL Server时,tempdb将释放分配给操作系统的空间,但在DBCC Check DB作业运行且未释放已用空间后,tem

DBCC CheckDB“myDB”进程成功完成后,临时数据库数据文件未清除空间或将空间分配给操作系统。我使用SP_WhoIsActive脚本进行诊断,发现DBCC-CheckDB进程导致了temp-db的增长,但这只发生在一个大约16gb的数据库中,DBCC-CheckDB正在使用temp-db,正如我使用SP_-WhoIsActive所看到的那样


注意:当我重新启动SQL Server时,tempdb将释放分配给操作系统的空间,但在DBCC Check DB作业运行且未释放已用空间后,tempdb将增长到45 GB

临时数据库只是…暂时的。SQL Server将在重新启动时将其恢复为默认大小。一般来说,指南是不要收缩tempdb,因为自动扩展是一项昂贵的操作。请参阅和@Jeremy,有一个表具有2000万行计数,并且有一个非聚集索引-您认为这可能是DBCC Checkdb包含索引的原因吗?感谢阅读第二篇文章,使用tempdb空间的一个方法是dbcccheckdb命令。如果有磁盘空间,请不要使用tempdb。它将稳定在它满意的大小,但是如果您再次阅读这些文章,您将看到您可以为tempdb设置初始大小,这样它就不必在重新启动SQL Server时重新增长到它想要的大小。tempdb只是…临时的。SQL Server将在重新启动时将其恢复为默认大小。一般来说,指南是不要收缩tempdb,因为自动扩展是一项昂贵的操作。请参阅和@Jeremy,有一个表具有2000万行计数,并且有一个非聚集索引-您认为这可能是DBCC Checkdb包含索引的原因吗?感谢阅读第二篇文章,使用tempdb空间的一个方法是dbcccheckdb命令。如果有磁盘空间,请不要使用tempdb。它将稳定在它满意的大小,但是如果您再次阅读这些文章,您将看到您可以为tempdb设置初始大小,这样它就不必在重新启动SQL Server时重新增长到它想要的大小。