MSSQL中如何表收缩空间(表收缩空间-mssql)

收缩空间是一个非常重要的操作,可以有效的优化系统性能。下面介绍MSSQL中如何对空间进行收缩的一些方法。

1、使用DBCC SHRINKDATABASE命令

DBCC SHRINKDATABASE命令可以用来缩减数据库和I/O空间,清理剩余空间,释放多余的空间。 使用DBCC SHRINKDATABASE,数据库文件和相关I/O空间都可以收缩,还可以清理脏页, 清除脏页,释放可能可回收的多余空间。 下面是MSSQL对DBCC SHRINKDATABASE命令的简要说明,以及使用该命令的实例代码:

–DBCC SHRINKDATABASE说明:

— 用途:Shrinks the size of the specified user or resource database

— 参数:数据库名,可选参数FreeSpace释放空间比例,可选参数NOTRUNCATE 不减少数据文件最小可用空间

— 利用DBCC SHRINKDATABASE收缩数据库空间

USE master

GO

— 语句可以指定收缩DatabaseName数据库,释放空间比例为10%

DBCC SHRINKDATABASE (DatabaseName, 10)

2、利用alter database命令

MSSQL 的alter database命令可以用来收缩数据库的和I/O空间。alter database语句和DBCC SHRINKDATABASE相比有一点特殊之处, 也就是可以通过设置相应参数来收缩某个特定的文件,多次使用alter database也可以收缩空间。 下面是使用alter database对数据库文件进行收缩的代码:

— 利用alter database收缩数据库文件空间

USE master

GO

— 指定将要收缩的文件名

ALTER DATABASE Test_Data SET FILE (NAME=Test_Data_11, SIZE=204800KB)

总结:

MSSQL中表空间的收缩可以通过DBCC SHRINKDATABASE命令来完成,也可以使用alter database进行收缩。 用DBCC SHRINKDATABASE可以压缩整个数据库,如果只是想收缩某个数据文件,则可以使用alter database来实现。收缩过程可能会比较慢,操作之前可以先备份数据以防出错,以免造成数据丢失。


数据运维技术 » MSSQL中如何表收缩空间(表收缩空间-mssql)