请问兄弟们要如何真正收缩数据库文件,急啊,先谢了!
sql2005数据文件已经快100G了,在数据库的右键:任务--收缩---文件收缩,数据文件收缩提示成功,重复多次文件大小还是没变,请问兄弟们要如何真正收缩数据库文件,硬盘不够大了,急啊,先谢了!
--------------------编程问答-------------------- DUMP TRANSACTION 数据库名 WITH NO_LOG
BACKUP LOG 数据库名 WITH NO_LOG
DBCC SHRINKDATABASE(数据库名)
EXEC sp_dboption '数据库名', 'autoshrink', 'TRUE' --------------------编程问答-------------------- 那要看数据库本身的数据量
一般来说,数据库删除数据之后并不真正的释放空间,收缩数据库可以将这部分的空间释放出来
如果数据库本身的数据就占有了100G,那么这种收缩就没有用了
看看你的数据库里面是不是有大量的流数据
如果不是,看一下ldf文件占用的空间,如果是ldf占用的话,可以将ldf文件备份到别的地方
然后将数据库detach,删除ldf,重新attach
具体要看产生的原因是什么 --------------------编程问答--------------------
谢谢shinstone
数据记录已经删除,收缩文件提示有99%可用空间,提示收缩成功,但mdf文件没有变小 --------------------编程问答-------------------- --------------------编程问答-------------------- 收缩只是一种手段
分析增长原因才是根本,才能对病症下药
-----------------------------------
另:问题发错地方了
--------------------编程问答--------------------
兄弟,按您的方法运行后文件大小还是没改变 --------------------编程问答-------------------- 很奇怪,以前我删除数据记录之后,收缩是有作用的 --------------------编程问答-------------------- --------------------编程问答-------------------- 难道是疑难杂证 --------------------编程问答-------------------- 日志文件只有1G,几个记录大的表删除也收缩后没变小数据库文件 --------------------编程问答--------------------
这是压缩数据日志文件的.我以为你要减小日志文件大小的.
一般如果空间不足.优先压缩日志文件.毕竟那么大的数据量在哪里呢.收缩数据MDF文件的大小是有限的
补充:.NET技术 , C#