我们正在使用SQL Server 2005.最近,由于tempdb大小很大,SQL Server 2005在我们的生产环境中崩溃。 1)什么可能是大tempdb大小的原因? 2)有什么方法可以查看tempdb中有哪些数据?SQL Server 2005 TempDB大小
回答
的常用方法长出了SQL Server数据库—任何数据库,而不仅仅是tempdb
—是有它的数据和日志设置为自动增长的文件(尤其是日志文件)。 SQL Server非常高兴地增长日志和数据文件,直到消耗所有可用的磁盘空间。
最佳做法,恕我直言,是为了让上的数据文件自动增长有限(穿上它有多大可以生长的上限),并修复日志文件的大小。您可能需要做一些分析来确定日志文件需要多大。对于tempdb,尤其是,恢复模式也应该设置为简单。
通常的方式(非专业环境< - 这是你忘了)。我不知道任何大/重要的数据库服务器管理员只是让事情自动增长。但是,后来,我每天处理1000 + gb数据库,数据库数量达数亿行。 – TomTom 2011-03-11 05:52:41
也许你没有读到我说的话:他的数据库吞噬他硬盘的原因是因为它保留在默认(自动增长)配置中。馊主意。 – 2011-03-11 19:08:53
好tempdb是一个有点特殊的数据库。在这里创建你在程序中使用的任何临时对象。因此,如果应用程序在查询中使用了大量临时表,它们将全部驻留在此处,但在连接(spid)重置后它们应该自行清理。
能长出tempdb的另一件事是数据库维护任务,但他们将采取更大的通行费上的数据库日志文件。
每当您重新启动SQL服务时,Tempdb也会被清除。它基本上会丢弃数据库并重新创建它。我同意@Nic关于将tempdb保持原样,不要与它混淆,tempdb中的任何空间问题,通常表示另一个更大的问题。更多的空间将会掩盖这个问题,但只会持续很长时间。您的驱动器有多少可用空间,您有tempdb?
其他的东西,如果没有,尝试,把tempdb中它自己的驱动器,以及一个更可能的话,有自己独立的驱动器上的数据和日志文件。
所以,如果你不重新启动您的SQL Server /服务,您的驱动器将很快耗尽空间,
2)有什么办法来看看什么样的数据是有在tempdb?
没有,因为它不保存在那里。 Tempdb有非常特殊的处理方式,就像每次服务器重新启动时一样。
1)可能是什么原因,大的tempdb大小?
低效的SQL,维护工作,或只是手头上的数据。显然,一个800GB,6000GB的数据库可能需要比4GB的在线crm尝试更多的tempdb空间。您绝对不会指定任何尺寸。什么是大?我在我的小型服务器上安装了64GB的tempdb数据库。
是进入临时数据库典型的SQL是:
- 排序是不可解作为查询的一部分(你需要存储的密钥某处)
- DISCTINCT。需要tempdb中的所有返回数据来查找双打。
- 在连接期间可能会有某些诗歌。
- Tempdb用法(临时表)。我只是提到它们,因为在加载和清理过程中,我经常保存数百兆字节的数据。
通常情况下,您可以通过在查询日志中查找统计信息来查找这些查询,或者只是简单地查询。
也就是说,维护计划也在那里,但有理由。最后,你的“大”可能是我的“甚至不值得一提的小”。这真的取决于你做什么。使用查询跟踪工具来查找需要很长时间。
物理Tempdb是非常特殊的治疗 - sql服务器不会写入文件,如果它不必(即保持内存thigh)。写入光盘是内存流动的标志。这与正常的db写入行为不同。 Tempdb,如果它流过,最好放在一个体面快的SSD上......它通常不会太贵,因为它仍然会相对较小。
在此处使用查询来查找有关tempdb的其他查询 - 基本上,您在这里的脏水中钓鱼,需要尝试一些东西,直到找到罪魁祸首。
使用tempdb
选择(尺寸* 8)FileSizeKB从sys.database_files中
- 1. SQL Server 2005 - 如何缩小tempdb
- 2. SQL Server 2005中的NVARCHAR大小
- 3. 按大小SQL Server 2005自动增长
- 4. SQL Server 2005中VARBINARY字段的大小
- 5. Sql Server 2000 - tempdb增长非常大
- 6. 数据仓库的SQL Server tempDB的大小
- 7. SQL Server 2005用户定义的数据类型,tempdb和权限
- 8. TempDB用法SQL Server 2012
- 9. SQL Server 2005表太大了
- 10. SQL 2005:硕士,模态,msdb,tempdb
- 11. SQL server 2005
- 12. 在SQL Server 2005
- 13. SQL Server备份大小
- 14. 在SQL Server 2005
- 15. SQL Server 2008,SQL Server 2005
- 16. SQL Server 2008到SQL Server 2005
- 17. 大型查询增加TempDB
- 18. SQL Server行大小
- 19. sql server nvarchar大小?
- 20. 在SQL Server 2005
- 21. SQL Server 2005 sp_send_dbmail
- 22. SQL Server 2005 Views
- 23. SQL SERVER 2005 OFFSET
- 24. 在SQL Server 2005
- 25. 在SQL Server 2005
- 26. 在SQL Server 2005
- 27. SQL Server 2005中
- 28. SQL Server 2005 Express
- 29. 在SQL Server 2005
- 30. Sql Server 2005 AutoCompletion
增加了一些更相关的标签。 – 2011-03-11 02:53:06