| 導購 | 订阅 | 在线投稿
分享
 
 
 

通過作業調度建立SQL Server的自動備份

來源:互聯網  2008-07-12 07:37:33  評論

SQL Server的作業調度來建立自動備份的方法

◆1、進入企業管理器中->管理->sql server代理->作業;

◆2、新建作業,作業名稱隨便取,例如:data備份,所有者選擇sa,當然你也可以選擇其他用戶,前提是該用戶有執行作業的權限;

◆3、點擊步驟標簽,進入步驟面板。新建步驟,步驟名可以隨便填寫,如步驟1,類型和數據庫默認,不需要修改。命令中寫入以下語句:

BACKUP DATABASE [數據庫名] TO DISK = N'F:\data\數據庫備份' WITH NOINIT , NOUNLOAD , NAME = N'數據庫 備份', NOSKIP , STATS = 10, NOFORMAT

注意:需要修改的地方,數據庫名,DISK=(這裏需要填寫路徑和你的數據庫備份的名稱)後面的Name=可以隨便填寫。

◆4、點擊調度標簽,進入調度面板,新建調度,名稱隨便填寫,選擇反複出現,點更改可以選擇你想要執行任務的隨意調度。如每天,每2天,每星期,每月等。根據需要自己設置;

◆5、確定後,不要忘記一件事情,在你剛才建立的工作上點右鍵,啓動工作,如果你的工作沒有問題,將會提示執行成功,並有相對應的備

份文件在你的磁盤上出現;

◆6、還有一個重要的問題就是你的sql server agent服務器已經啓動。

如果我們需要根據每天的日期來生成一個新的備份,以便我們區別備份文件。這時,我們需要修改一下剛才的sql語句。參考實例:

declare @filename nvarchar(100)

set @filename='E:\data_Backup\BIS_data_backup_'+convert(char(10),getdate(),112)+'.bak'

print @filename

BACKUP DATABASE [BIS] TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKIP , STATS = 10, NOFORMAT

或者按如下寫法:

DECLARE @BACKFILENAME VARCHAR(200)

DECLARE @DATE CHAR(10)

DECLARE @FILENAME VARCHAR(200)

DECLARE @NAME VARCHAR(200)

SET @DATE=CONVERT(CHAR(10),GETDATE(),120)

SET @FILENAME='E:\data_Backup\'

SET @BACKFILENAME=@FILENAME+@DATE

SET @NAME='BIS_data_backup'

BACKUP DATABASE [BIS]

TO DISK = @BACKFILENAME WITH INIT , NOUNLOAD , NAME = @NAME, NOSKIP , STATS = 10, NOFORMAT

或者:

EXECUTE master.dbo.xp_sqlmaint N'-PlanID 1FAEE7FD-F0CC-4E9C-8100-FC1F9AF39063 -WriteHistory -VrfyBackup -BkUpMedia DISK

-BkUpDB "E:\data_backup" -BkExt "BAK"'

舉例:

declare @filename nvarchar(100)

set @filename='E:\data_Backup\BIS_data_backup_'+replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),'

',''),':','')+'.bak'

print @filename

BACKUP DATABASE [BIS] TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKIP , STATS = 10, NOFORMAT

時間戳不帶秒:

substring(replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':',''),1,12 )

SQL Server的作業調度來建立自動備份的方法 ◆1、進入企業管理器中->管理->sql server代理->作業; ◆2、新建作業,作業名稱隨便取,例如:data備份,所有者選擇sa,當然你也可以選擇其他用戶,前提是該用戶有執行作業的權限; ◆3、點擊步驟標簽,進入步驟面板。新建步驟,步驟名可以隨便填寫,如步驟1,類型和數據庫默認,不需要修改。命令中寫入以下語句: BACKUP DATABASE [數據庫名] TO DISK = N'F:\data\數據庫備份' WITH NOINIT , NOUNLOAD , NAME = N'數據庫 備份', NOSKIP , STATS = 10, NOFORMAT 注意:需要修改的地方,數據庫名,DISK=(這裏需要填寫路徑和你的數據庫備份的名稱)後面的Name=可以隨便填寫。 ◆4、點擊調度標簽,進入調度面板,新建調度,名稱隨便填寫,選擇反複出現,點更改可以選擇你想要執行任務的隨意調度。如每天,每2天,每星期,每月等。根據需要自己設置; ◆5、確定後,不要忘記一件事情,在你剛才建立的工作上點右鍵,啓動工作,如果你的工作沒有問題,將會提示執行成功,並有相對應的備 份文件在你的磁盤上出現; ◆6、還有一個重要的問題就是你的sql server agent服務器已經啓動。 如果我們需要根據每天的日期來生成一個新的備份,以便我們區別備份文件。這時,我們需要修改一下剛才的sql語句。參考實例: declare @filename nvarchar(100) set @filename='E:\data_Backup\BIS_data_backup_'+convert(char(10),getdate(),112)+'.bak' print @filename BACKUP DATABASE [BIS] TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKIP , STATS = 10, NOFORMAT 或者按如下寫法: DECLARE @BACKFILENAME VARCHAR(200) DECLARE @DATE CHAR(10) DECLARE @FILENAME VARCHAR(200) DECLARE @NAME VARCHAR(200) SET @DATE=CONVERT(CHAR(10),GETDATE(),120) SET @FILENAME='E:\data_Backup\' SET @BACKFILENAME=@FILENAME+@DATE SET @NAME='BIS_data_backup' BACKUP DATABASE [BIS] TO DISK = @BACKFILENAME WITH INIT , NOUNLOAD , NAME = @NAME, NOSKIP , STATS = 10, NOFORMAT 或者: EXECUTE master.dbo.xp_sqlmaint N'-PlanID 1FAEE7FD-F0CC-4E9C-8100-FC1F9AF39063 -WriteHistory -VrfyBackup -BkUpMedia DISK -BkUpDB "E:\data_backup" -BkExt "BAK"' 舉例: declare @filename nvarchar(100) set @filename='E:\data_Backup\BIS_data_backup_'+replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')+'.bak' print @filename BACKUP DATABASE [BIS] TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKIP , STATS = 10, NOFORMAT 時間戳不帶秒: substring(replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':',''),1,12 )
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有