1

我在 SQL 2000 SP4 数据库上运行 BizTalk 2006 服务器实例。我有一个 10 GB 跟踪 DDB(9 GB 已用 / 1 GB 免费)。我每小时运行一次 DTADB 存档和清除作业。它在 10 天 / 14 天硬清除消息。它运行没有错误。我将清除时间缩短到 5 天 / 9 天,跟踪数据库的大小仅减少了不到 5%。

有人对我导致此问题的原因有任何想法或经验吗?

4

3 回答 3

1

我认为这可能是由于您使用的是 SQL Server 2000。

用于配置数据库清除的文档特别说明了 SQL Server 2005 和 2008。

http://msdn.microsoft.com/en-us/library/aa558715(BTS.10).aspx

还有一些人在 SQL Server 2000 上运行清除脚本时遇到问题。

http://www.biztalkgurus.com/forums/p/9443/18513.aspx

希望这可以帮助

于 2009-08-10T21:05:47.653 回答
0

默认情况下,跟踪数据库**不会减小大小 - 我怀疑如果您查看数据和日志文件的使用情况,您会发现很大比例处于未分配(数据文件)和未使用(日志文件)状态。

您将需要使用 DBCC SHRINKFILE 命令收缩数据库或单个文件以减小整体数据库大小,如使用 DBCC SHRINKFILE收缩 SQL Server 2000 中的事务日志中所述

希望这可以帮助。

** 或任何数据库,除非启用了 AUTO SHRINK 选项,但不建议这样做:SQL Server Storage Engine Blog - Turn AUTO_SHRINK off!!

于 2009-08-25T13:33:00.423 回答
0

最后,唯一的解决方案是手动清除跟踪数据库......

http://msdn.microsoft.com/en-us/library/dd800104(BTS.10).aspx

不知道为什么会这样。

DTA 存档和清除 SQL Server 代理作业减少了从 BizTalk 跟踪 (BizTalkDTADb) 数据库中手动清除数据的需要,因为会持续清除数据库并压缩存储的跟踪数据。如果您的 BizTalk 跟踪 (BizTalkDTADb) 数据库增长得如此之快以至于发生持续的性能下降并且 DTA 存档和清除作业无法跟上数据库的增长,您可能需要手动清除数据。

似乎暗示这可能是日常家务的一部分。

于 2009-09-14T15:29:48.850 回答