如何讓SQL Server自動定時備份數(shù)據(jù)庫并按日期命名
通常備份的方式有兩種:手動備份和自動備份,如果數(shù)據(jù)庫服務(wù)器中有這么多的數(shù)據(jù)庫需要備份,那么手動備份必定是一個很大的工作量,這個時候我們可以采用另外一種備份方式---定時自動備份。
SQLServer的維護計劃里面自帶了備份數(shù)據(jù)庫任務(wù),但不會自動按日期命名,不方便,下面的方法是以存儲過程來解決的,以sql2000為例:
首先要確認(rèn)SQL Server Agent服務(wù)是在啟動狀態(tài),

下一步,我們來創(chuàng)建作業(yè),在創(chuàng)建作業(yè)之前,我們需要創(chuàng)建備份數(shù)據(jù)庫及命名的存儲過程
比如是對TestDB操作,打開查詢分析器,把下面的存儲過程拷到里面執(zhí)行下就行了,當(dāng)然了,命名規(guī)則可以自動更改

- USE [TestDB]
 - GO
 - SET ANSI_NULLS ON
 - GO
 - SET QUOTED_IDENTIFIER ON
 - GO
 - CREATE PROCEDURE [BackupDatabase](@FolderPath varchar(500))
 - as
 - DECLARE @FullPath varchar(1000)
 - set @FullPath = @FolderPath+ 'TestDB_'+convert(VARCHAR(4),year(getdate()))+right( '0'+convert(VARCHAR(2),MONTH(getdate())),2)+right('0'+convert(VARCHAR(2),DAY(getdate())),2)+ '.bak'
 - backup database [TestDB] to disk=@FullPath WITH INIT
 - return
 
這樣就創(chuàng)建了一個BackupDatabase的存儲過程。
下面來創(chuàng)建作業(yè)吧。
常規(guī)里添加名稱,選擇下分類就行了,下面的步驟很重要。

添加步驟的時候,有點很重要,就是執(zhí)行剛才我們創(chuàng)建的存儲過程如圖
- use [TestDB]
 - exec BackupDatabase 'E:\SqlData\TestDB\'
 
最后設(shè)置下自動備份的時間,也就是調(diào)度下即可

這樣我們就創(chuàng)建一個這樣定時備份數(shù)據(jù)庫,以時間命名的作業(yè)。

到了指定的時間會自動執(zhí)行備份數(shù)據(jù)庫,其他的sql2005和sql2008和sql2000大同小異。
關(guān)于SQL Server定時自動備份數(shù)據(jù)庫的知識就介紹這些,如果您想了解更多SQL Server數(shù)據(jù)庫的知識,這里的文章不容錯過哦:http://database.51cto.com/sqlserver/。
【編輯推薦】















 
 
 

 
 
 
 