一个非常大的tempdb

时间:2018-01-04 11:37:59

标签: sql-server spring tomcat tempdb

我有一个spring项目,当我启动服务器一个命名文件' tempdb'是在sql server目录下创建的,这个文件的大小太大(达到8G) 我想知道为什么要创建这个文件?有没有办法减少它的大小? 提前致谢

2 个答案:

答案 0 :(得分:1)

运行此

-- use the proper DB
USE tempdb;
GO
-- sync
CHECKPOINT; 
GO
-- drop buffers
DBCC DROPCLEANBUFFERS; 
DBCC FREEPROCCACHE;
DBCC FREESYSTEMCACHE('ALL');
DBCC FREESESSIONCACHE;
GO
--shrink db (file_name, size_in_MB)
DBCC SHRINKFILE (TEMPDEV, 1024);
GO

或者,您始终可以重新启动整个数据库(如服务重新启动),它也会删除tempdb。

答案 1 :(得分:0)

tempdb系统数据库是一个全局资源,可供连接到SQL Server实例的所有用户使用。 tempdb数据库用于存储以下对象:用户对象,内部对象和版本存储。它还用于存储包含在查询处理和排序期间创建的中间结果的工作表。

您可以使用" ALTER DATABASE tempdb"命令限制/缩小此大小。

8Gb的大小是可疑的,因为tempdb大小主要以MB为单位。您可能想要在启动服务器时检查任何丑陋的查询。