2024年5月30日发(作者:)
sqlserver收缩数据库
为什么要收缩数据库
SQL Server 2000采取预先分配空间的方法来建立数据库的数据文件或者日志文件,
比如数据文件的空间分配了100MB,而实际上只占用了50MB空间,这样就会造成存储
空间的浪费。为此,SQL Server 2000提供了收缩数据库的功能,允许对数据库中的每个
文件进行收缩,删除已经分配但没有使用的页。
不能将整个数据库收缩到比其原始大小还要小。因此,如果数据库创建时的大小为 10
MB,后来增长到100MB,则该数据库最小能够收缩到10MB(假定已经删除该数据库中
所有数据)。不能在备份数据库时收缩数据库,也不能在收缩数据库时创建或备份数据库。
4.8.2 什么是自动收缩和手动收缩
SQL Server 2000支持对数据库实行自动收缩和手工收缩。在如图4.38所示的数据库
属性的【选项】选项卡中选择【自动收缩】复选框将实现自动收缩。SQL Server 2000服
务器每30分钟检查数据库的空间使用情况。如果发现大量闲置的空间,就会自动缩小数
据库的文件大小。
图4.38 设置自动收缩功能
利用企业管理器或DBCC SHRINKDATABASE 和 DBCC SHRINKFILE 语句可以完成
手工收缩操作。
4.8.3 收缩数据文件和日志文件有什么不同
不论是收缩数据文件还是日志文件,都会确实减少物理文件的大小,两者不同之处如
下。
数据文件可以作为文件组或单独地进行手工收缩。日志文件收缩分别考虑每个文件,


发布评论