首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是一次性收缩数据库文件,还是增量收缩数据库文件?

是一次性收缩数据库文件,还是增量收缩数据库文件?
EN

Stack Overflow用户
提问于 2012-05-10 22:04:39
回答 2查看 1.5K关注 0票数 1

我必须缩小数据库的大概大小。1 to减少到700 Gb左右(这使得200+ Gb可以在不进行扩展的情况下增长)。我有一个脚本,它将按设定的增量(例如,1 1GB)循环和收缩数据库。如果您必须在任何时候中止,这是非常有用的,因为进度不会丢失,整个收缩操作可能会运行4-5天。问题是,数据库文件的增量收缩与单次收缩(执行一个dbcc收缩文件)是否会导致更多的碎片?谢谢!!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-10 22:18:07

(这是基于MS SQL Server的。您的里程数可能因其他RDBMSes而异。)

如果其他条件相同,我怀疑你不会因为分割你的收缩过程而导致更大的碎片。当文件收缩时,SQL可能必须在内部移动数据,从要删除的页移动到不会删除的空页。如果将块A、B和C移动到X、Y和Z,然后从数据库文件中删除,那么分三步执行可能会产生与分三步执行一样多的碎片。

我看到的问题是,如果您首先“缩小”块A,在开始处理块B之前,加载了更多的数据,导致数据库将数据存储在块D中--这是一个以前是空的部分,最终会缩小?更糟糕的是,如果添加新数据需要重新创建区块A,然后您必须重新缩小区块A,那该怎么办?

这是一次高层次的尝试,试图描述一些我只知道其外观和感觉的东西。我怀疑多个收缩可能会产生更多的碎片,如果仅仅是因为在收缩会话之间添加了数据库。你拥有的会话越少,你可能会过得越好。

票数 2
EN

Stack Overflow用户

发布于 2012-05-10 22:54:22

请参考下面的链接,了解有关“为什么不应该收缩数据库或不按收缩按钮”的详细信息。

http://www.sqlskills.com/BLOGS/PAUL/post/Why-you-should-not-shrink-your-data-files.aspx http://sqlinthewild.co.za/index.php/2007/09/08/shrinking-databases/

HTH,\K

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10535697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档