熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL Server >> 正文

SQL Server日志清除的兩種方法

2013-11-15 14:50:44  來源: SQL Server 

  方法一

  一般情況下SQL數據庫的收縮並不能很大程度上減小數據庫大小其主要作用是收縮日志大小應當定期進行此操作以免數據庫日志過大

  設置數據庫模式為簡單模式打開SQL企業管理器在控制台根目錄中依次點開Microsoft SQL Server>SQL Server組>雙擊打開你的服務器>雙擊打開數據庫目錄>選擇你的數據庫名稱(如論壇數據庫Forum)>然後點擊右鍵選擇屬性>選擇選項>在故障還原的模式中選擇簡單然後按確定保存

  在當前數據庫上點右鍵看所有任務中的收縮數據庫一般裡面的默認設置不用調整直接點確定

  收縮數據庫完成後建議將您的數據庫屬性重新設置為標准模式操作方法同第一點因為日志在一些異常情況下往往是恢復數據庫的重要依據

  方法二

         SET NOCOUNT ON
  DECLARE @LogicalFileName sysname

  @MaxMinutes INT

  @NewSize INT

  USE tablename 要操作的數據庫名

  SELECT @LogicalFileName = tablename_log 日志文件名

  @MaxMinutes = Limit on time allowed to wrap log

  @NewSize = 你想設定的日志文件的大小(M)

   Setup / initialize

  DECLARE @OriginalSize int

  SELECT @OriginalSize = size

  FROM sysfiles

  WHERE name = @LogicalFileName

  SELECT Original Size of + db_name() + LOG is +

  CONVERT(VARCHAR()@OriginalSize) + K pages or +

  CONVERT(VARCHAR()(@OriginalSize*/)) + MB

  FROM sysfiles

  WHERE name = @LogicalFileName

  CREATE TABLE DummyTrans

  (DummyColumn char () not null)

  DECLARE @Counter INT

  @StartTime DATETIME

  @TruncLog VARCHAR()

  SELECT @StartTime = GETDATE()

  @TruncLog = BACKUP LOG + db_name() + WITH TRUNCATE_ONLY

  DBCC SHRINKFILE (@LogicalFileName @NewSize)

  EXEC (@TruncLog)

   Wrap the log if necessary

  WHILE @MaxMinutes > DATEDIFF (mi @StartTime GETDATE()) time has not expired

  AND @OriginalSize = (SELECT size FROM sysfiles WHERE name = @LogicalFileName)

  AND (@OriginalSize * /) > @NewSize

  BEGIN Outer loop

  SELECT @Counter =

  WHILE ((@Counter < @OriginalSize / ) AND (@Counter < ))

  BEGIN update

  INSERT DummyTrans VALUES (Fill Log)

  DELETE DummyTrans

  SELECT @Counter = @Counter +

  END

  EXEC (@TruncLog)

  END

  SELECT Final Size of + db_name() + LOG is +

  CONVERT(VARCHAR()size) + K pages or +

  CONVERT(VARCHAR()(size*/)) + MB

  FROM sysfiles

  WHERE name = @LogicalFileName

  DROP TABLE DummyTrans

  SET NOCOUNT OFF


From:http://tw.wingwit.com/Article/program/SQLServer/201311/22424.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.