先备份,再
DBCC SHRINKDATABASE(库,10)

解决方案 »

  1.   

    dump transaction database with nolog
      

  2.   

    run below script,you will shrink you database log files immediately,in my experience,you need to run the script for 3 or 4 minutes before stopping it manually
    good luck!!!/* Run "select * from sysfiles to get fileid you want to shrink"*/
    use northwind
    go
    dbcc shrinkfile(2,notruncate)
    dbcc shrinkfile(2,truncateonly)
    create table t1(char1 char(4000))
    go
    declare @i int
    select @i=0
    while(1=1)
    begin 
       while(@i<100)
      begin
    INSERT INTO T1 VALUES ('A')
    SELECT @I=@I+1
    END
    TRUNCATE table T1
    BACKUP LOG northwind with truncate_only
    end
    go
      

  3.   

    还有十分感谢大家的帮助,只是楼上的一位高手的建议,小妹不是很懂,请帮助分析一下,好吗?下面一段是干什么的?declare @i int
    select @i=0
    while(1=1)
    begin 
       while(@i<100)
      begin
    INSERT INTO T1 VALUES ('A')
    SELECT @I=@I+1
    END
    TRUNCATE table T1
      

  4.   

    数据库文件将成为自动周期性收缩的候选文件。 
    USE master
    EXEC sp_dboption 'pubs', 'autoshrink', 'true'============================================
    举个例子,TRUNCATE table 删除表中的所有行,而不记录单个行删除操作。 
    即不记行删除日志(但是记页删除日志),故也叫无日志操作或最小日志操作.