SQLServer2005利用維護計劃自動備份數據庫

/*******************完整備份作業*******************/
--完整備份,每週一次
USE Master
GO
declare @str varchar(
100)
set @str='D:/DBtext/jgj/DBABak/FullBak'+replace(replace(replace(convert(varchar,getdate(),20),'-',''),' ',''),':','')+'.bak'
BACKUP DATABASE [demo] TO DISK
=@str
WITH RETAINDAYS
=15,NOFORMAT,NOINIT,
NAME
=N'Demo完整備份',SKIP,NOREWIND,
NOUNLOAD,STATS
=10
GO




/*******************差異備份作業*******************/
--截斷日誌
USE Master
GO
BACKUP LOG Demo  WITH NO_LOG
GO
--收縮日誌文件
USE Demo
GO
DBCC SHRINKFILE (N
'Demo_log',0,TRUNCATEONLY)
GO
--差異備份,每天一次
USE Master
GO
declare @str varchar(
100)
set @str='D:/DBtext/jgj/DBABak/DiffBak'+replace(replace(replace(convert(varchar,getdate(),20),'-',''),' ',''),':','')+'.diff'
BACKUP DATABASE [Demo] TO DISK
=@str
WITH DIFFERENTIAL,RETAINDAYS
=8,NOFORMAT,NOINIT,
NAME
=N'Demo差異備份',SKIP,NOREWIND,
NOUNLOAD,STATS
=10
GO




/******************日誌備份作業*******************/
--日誌備份,每小時一次
USE Demo
GO
declare @str varchar(
100)
set @str='D:/DBtext/jgj/DBABak/logbak'+replace(replace(replace(convert(varchar,getdate(),20),'-',''),' ',''),':','')+'.trn'
BACKUP LOG [Demo] TO DISK
=@str
WITH RETAINDAYS
=3,NOFORMAT,NOINIT,
NAME
=N'Demo日誌備份',SKIP,NOREWIND,
NOUNLOAD,STATS
=10
GO




--刪除過期的備份文件,每天兩次
declare @str varchar(
100),@dir varchar(100),@fileName varchar(30)
set @dir='del D:/DBtext/jgj/DBABak/'
set @filename=left(replace(replace(replace(convert(varchar,getdate()-15,20),'-',''),' ',''),':',''),8)
set @str=@dir+'fullbak'+@filename+'*.bak'
exec xp_cmdshell @str
set @filename=left(replace(replace(replace(convert(varchar,getdate()-8,20),'-',''),' ',''),':',''),8)
set @str=@dir+'diffbak'+@filename+'*.diff'
exec xp_cmdshell @str
set @filename=left(replace(replace(replace(convert(varchar,getdate()-8,20),'-',''),' ',''),':',''),8)
set @str=@dir+'logbak'+@filename+'*.trn'
exec xp_cmdshell @str

SQLServer2005利用維護計劃自動備份數據庫

PS:1、SQL Server Management Studio Express數據庫管理系統並沒有維護計劃,要在開發版或企業版纔有。

      2、需要在SQL Server Configuration Manager中,開啓服務SQL Server Agent(實例名)。如果服務啓動,在Management Studio中新建維護計劃時,提示以下錯誤信息:

        “代理XP”組件已作爲此服務器安全配置的一部分被關閉。系統管理員可以使用sp_configure來啓用“代理XP”。有關啓用“代理XP”的詳細信息,請參閱SQL Server聯機叢書中的“外圍應用配置器”。(ObjectExplorer)
代理XP”組件已作爲此服務器安全配置的一部分被關閉
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章