Shr*_*rma 5 database sql-server temp-tables
在创建和删除临时表时,将数据插入到这些表中,临时数据库及其日志的大小会导致数据库的大小无限增长.它达到100s的gb并填充硬盘.这可能导致数据库服务器缺乏大小,应用程序可能会崩溃.我们需要重新启动sqlexpress服务,我认为这是一个坏主意.停止服务会导致站点/应用程序停止运行.那么这个问题的替代方案是什么呢?
您始终可以尝试收缩数据库文件:
USE [tempdb]
GO
DBCC SHRINKFILE (N'templog' , 0)
GO
DBCC SHRINKFILE (N'tempdev' , 0)
GO
Run Code Online (Sandbox Code Playgroud)
这将从 tempdb 中释放所有未使用的空间。但无论如何,MSSQL 都应该重用该空间。因此,如果您的文件如此大,您需要研究您的逻辑并找到创建真正大表的位置,并尝试减小它们的大小和/或它们的生命周期。
另外,您不应该避免删除未使用的临时表。
您可以尝试减少会话生命周期。它将保证旧的未使用的表将被删除。
| 归档时间: |
|
| 查看次数: |
12521 次 |
| 最近记录: |