日期:2014-05-17  浏览次数:20594 次

sqlserver2000可用空间99%,反复收缩还是那么大
从老的服务器里面拷贝过来一个mdf文件101GB,附加上去,用企业管理器里面显示99%的可用空间,可反复收缩,都完成收缩,就是大小不变。请问我该从哪些方面考虑啊?这个mdf文件里面的数据是可正常使用的。
sqlserver?服务器

------解决方案--------------------
新年快乐!
------解决方案--------------------
还有 收缩文件 的菜单项
------解决方案--------------------
步骤1、找到前十个(这个数量不一定固定)的大表,然后如果没有聚集索引,就创建聚集索引,如果有,那就重建聚集索引。
步骤2、使用收缩文件选项来收缩mdf文件。而不要使用收缩数据库。
------解决方案--------------------
但是要注意好别一次性收缩太多及别留那么一点点可用空间,否则下次自动增长时开销很大。
------解决方案--------------------
这个数据库的属性里,设置为“简单”,就可以收缩了。
------解决方案--------------------
设置简单模式只能收缩LDF文件,对于MDF是没有效果的。按照DBA_Huangzj讲的,如果有聚集索引先REBUILD INDEX,然后再收缩。使用文件收缩,然后指定收缩到多大(target不能小于实际使用的大小)
------解决方案--------------------
另外你可以查一下你最大的表看看占用了多大的空间,如果没有聚集索引,你可以重建表将数据导入,然后再收缩,肯定可以缩小。 
------解决方案--------------------
重建表,然后导下数据就小了。