SQL Server 收缩数据库

最近发现磁盘空间不够了,就想把SQL Server里不用的数据给删掉,然后使用收缩数据库的功能,可越收缩越大,什么鬼,什么鬼?

https://msdn.microsoft.com/zh-CN/library/ms189035(v=sql.120).aspx

当您计划收缩数据库时,请考虑一下信息:

    在执行会产生许多未使用空间的操作(如截断表或删除表操作)后,执行收缩最有效

    大多数数据库都需要一些可用空间,以供常规日常操作使用。如果反复收缩数据库并注意到数据库大小表大,则表明收缩的空间是常规操作所必需的。在这种情况下,反复收缩数据库是一种无谓的操作。

    收缩不会保留数据库中索引的碎片状态,通常还会在一定程度上增加碎片。这是不要反复收缩数据库的另一个原因。

    除非有特定要求,否则不要将AUTO_SHRINK数据库选项设置为ON。

    收缩数据文件通过将数据页从文件末尾移动到更靠近文件开头的未占用的空间来恢复空间。在文件末尾创建足够的可用空间后,可以取消对文件末尾的数据页的分配并将它们返回给文件系统。

在SSMS中随便选择个数据库,右键---任务---收缩---数据库,会出现带有如下截图的界面,

image

选择收缩文件,会出现带有如下截图的界面:

image

“若要收缩所有数据文件,请使用‘收缩数据库’”,这句话是收缩SSMS中所有的数据库吗?

疑问。应该这是某单个数据库。否则为什么为什么每个数据库都有收缩数据库的选项。

原文地址:https://www.cnblogs.com/cnmarkao/p/4914869.html