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的日誌在分鐘...