it54 发表于 2008-11-14 16:16:57

贡献币求如何缩小数据库mdf文件

从网上下载了源码。SQL数据库文件mdf太大。200多MB。我的数据库空间只有100MB

在后台把所有内容都删完了。还是老样子。 如何缩小数据库mdf文件????

高手出来解答。答对马上给5个贡献。绝不食言!!!!!!!!!!!!!

在这回复答案。或加QQ125866238

rsbar 发表于 2008-11-14 19:13:52

楼主,给你一个方法:

新建一个数据库,然后将你的数据库的所有数据导进去,导完之后你会发现小很多,
注意选择“扩展属性”

忆风 发表于 2008-11-14 19:58:56

首先应检查数据是否真的删干净了
1、可在企业管理器中尝试收缩数据库
2、或者新建数据在导入数据库结构
3、或者没办法就扩容吧

softzhang 发表于 2008-11-14 20:14:26

楼主可以尝试用以下方法:

通过压缩指定数据库文件和日志来缩小
1、将数据文件收缩到指定的目标大小
---DB 数据库中名为 Data的数据文件的大小收缩到 7MB
   USE DB;
   GO
   DBCC SHRINKFILE (Data, 7);
   GO
2、将日志文件收缩到指定的目标大小
--将DB数据库中的日志文件收缩到 1 MB。若要允许 DBCC SHRINKFILE 命令收缩文件,首先需要通过将数据库恢复模式设置为 ** 来截断该文件。(**:简单的英文单词,打不出来,被屏蔽啦)

   USE DB;
   GO
   ALTER DATABASE DB
   SET RECOVERY **;
   GO
   DBCC SHRINKFILE (DB_Log, 1);
   GO

   ALTER DATABASE DB
   SET RECOVERY FULL;
   GO
3、截断数据文件
--截断DB数据库中的主数据文件。需要查询 sys.database_files 目录视图以获得数据文件的 file_id。

USE DB;
   GO
   SELECT file_id, name
   FROM sys.database_files;
   GO
   DBCC SHRINKFILE (1, TRUNCATEONLY);


我用的是Sql2005

[ 本帖最后由 softzhang 于 2008-11-14 20:21 编辑 ]

hxyly 发表于 2008-11-14 23:01:51

呵呵 以上说的都很正确
SQL数据库删除数据之后默认的大小不会改变
只有再你收缩数据库之后他才会变成当前的容量大小
页: [1]
查看完整版本: 贡献币求如何缩小数据库mdf文件