【转帖】关于sql server 2008 的mdf收缩问题
2024-08-28 21:11:09
关于sql server 2008 的mdf收缩问题
USE 你的库名;
GO
-- 数据库空间使用情况
EXEC sp_spaceused; -- 查下文件空间使用情况
SELECT
file_id, name,
[文件大小(MB)] = size / 128.,
[未使用空间(MB)] = (size - FILEPROPERTY(name, N'SpaceUsed')) / 128.
FROM sys.database_files -- 表空间使用情况
DECLARE @tb_size TABLE(
name sysname,
rows int,
size varchar(100),
data_size varchar(100),
INDEX_size varchar(100),
unused_size varchar(100)
);
INSERT @tb_size
EXEC sp_msforeachtable '
sp_spaceused ''?''
'
SELECT * FROM @tb_size
用上面的语句检查一下你的数据库中的空间使用情况
其中,文件空间情况中的未使用空间表示你的文件可以通过 DBCC SHRINKFILE 来释放的磁盘空间
如果可以释放的空间很小, 那么你可以通过后面的查表空间的语句来查到是那些表占用了大的空间, 对于 unused_size 列的值很大的表, 你可以通过 REBUILD 聚焦索引(一般是主键) 的方式, 重组表的数据存储, 以便能够释放空间占用
最新文章
- 修改一个CGRect的值
- Yocto开发笔记之《根文件系统裁剪》(QQ交流群:519230208)
- spring结合Quartz的集群功能实现
- RMAN-06059: expected archived log not found, loss of archived log compromises recoverability
- work2
- oracle添加表字段跟修改表字段属性
- 【gitlab】版本管理工具
- 响应式设计的5个CSS实用技巧
- poj1323
- git项目同时支持多个远端仓库
- Linux 系统文件夹结构
- iOS对UIViewController生命周期和属性方法的解析
- java基础(十五章)
- C# orderby子句
- tcpdump记录
- Java(15) 多态
- wireless
- 在Windows服务中托管 ASP.NET Core的坑
- Android SDK Tools 24.3.2 Build脚本Bug
- NOIP2018保卫王国