sql2008定期清理映象日誌

2021-06-19 07:30:44 字數 1176 閱讀 9580

create

proc

[dbo].

[cleantranlog]as

begin

declare

@num

tinyint

--執行次數

declare

@backlogname

varchar

(100

) ;--

備份日誌檔名稱

declare

@backlogpath

varchar

(100

) ; 

--備份日誌檔案的路徑

set@num=0

;set

@backlogpath=n

'c:\sqlbackup';

--設定備份日誌的路徑

--備份3次映象日誌檔案,同時刪除

while

( @num

<3)

begin

declare

@logpath

varchar

(100

)set

@backlogname

=cast

(@num

asvarchar(2

)) +

'.trn';

set@logpath

=@backlogpath+'

\'+@backlogname

backup

logdb  

todisk

=@logpath

with

noformat, noinit,

name

=@backlogname

, skip, rewind, nounload,stats =10

set@num

=@num+1

--刪除剛備份的trn日誌檔案結束的備份日誌檔案

execute

master.dbo.xp_delete_file 0, 

@logpath

;end

--收縮日誌檔案到300m

dbcc

shrinkfile (db_log, 

300) ;     

--注意

--db 這裡指: 資料庫名稱

--db_log 為日誌邏輯名稱

end

SQL2008映象,清理log日誌

在做sql 2008映象,由於主伺服器必須做完整備份,這時log日誌很大,必須定期清理log日誌,將下列儲存過程沒6個小時執行一次,其定期會將日誌檔案縮小到300m create proc dbo cleantranlog as begin declare num tinyint 執行次數 decl...

SQL Server2008定期清理日誌

日誌記錄了對資料庫的操作,如果前端程式頻繁運算元據庫,會使資料庫日誌越來越大。日誌過大會影響系統執行,甚至造成前端程式崩潰。應該定期壓縮清理,可以在 中新增乙個作業,因為有時如果日誌被占用,清理會失敗,建議一周清理3次,以保證至少有1次清理成功。下面的作業 將日誌壓縮至20m use master ...

清空sql2008 日誌

alter database dnname set recovery 簡單模式 go右鍵 任務 收縮 檔案 確定 下來資料庫的日誌只保留了1m alter database dnname set recovery full 還原為完全模式 go優點 此清除日誌所執行消耗的時間短,90gb的日誌在分鐘...