渔鱼

人生豪迈,在此一博!

  博客园 :: 首页 :: 博问 :: 闪存 :: :: 联系 :: 订阅 订阅 :: 管理 ::
一般有如下方法:
1. 分离数据库,删除日志文件,再附加。
也可以用命令:
A.exec sp_detach_db yourDBName,true                 --卸除这个DB在MSSQL中的注册信息
B.删除该日志文件或者将该日志文件移出该目录
C.exec sp_attach_single_file_db yourDBName,'d:\mssql7\data\yourDBName_data.mdf'
--以单文件的方式注册该DB,如果成功则MSSQL将自动为这个DB生成一个500K的日志文件。
尽可能不用这个方法。

2. 使用如下命令:
Use 数据库名
DBCC SHRINKDATABASE(数据库名) 
一次收缩数据库和日志。
http://support.microsoft.com/kb/272318/

3. 使用如下命令:
Use 数据库名
DBCC SHRINKFILE(1)                                           --收缩数据库
DBCC SHRINKFILE(2)                                           --收缩日志
似乎只是压缩了日志文件,处理后的文件虽然明显减小,但还不是最小的。

4. 使用如下一组命令:
Use 数据库名
DUMP TRANSACTION 数据库名 WITH  NO_LOG        --清空日志
BACKUP LOG 数据库名 WITH NO_LOG                    --截断日志
DBCC SHRINKFILE(2)                                           --收缩日志,2表示日志文件,1表示数据库文件
或者DBCC SHRINKDATABASE(数据库名)                  --收缩数据库和日志
日志文件被置最小。
posted on 2008-02-29 13:21  博闻李  阅读(289)  评论(0编辑  收藏  举报