實現EXPRESS速成版自動備份的具體步驟:
首先我們要先編寫好備份數據庫的存儲過程,這樣可以極大方便我們進行自動備份操作,具體可以參考微軟MSDN資料:BACKUP語法。
這里先展示我自己的數據庫備份存儲過程,備份的數據庫是InformationManagementSystem,備份文件存放位置是F:\Database\Backup,示例:
CREATE PROCEDURE sp_BackupDatabases AS
BEGIN
--設置備份數據庫的存放目錄
DECLARE @diskPath NVARCHAR(300)
SET @diskPath='F:\Database\Backup\InformationManagementSystem_'
+CONVERT(VARCHAR, GETDATE(),112)+'_'
+REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')+'.BAK'
BACKUP DATABASE InformationManagementSystem TO DISK = @diskPath WITH FORMAT;
END
這里我們可以運行下存儲過程測試下,直接在SQL SERVER EXPRESS中新建查詢然后運行語句:
EXEC InformationManagementSystem.dbo.sp_BackupDatabases
這里我們要編寫一個批處理文件,主要是讓系統自動執行這個批處理文件,而批處理文件的語句則調用了sqlcmd命令來運行數據庫備份的存儲過程。
假設我們的批處理文件放在"F:\Database\Backup",我們先右鍵新建一個文本文件,將下面的執行語句復制到文本中并保存(這里一定要注意大小寫,sqlcmd命令是區分大小寫的):
sqlcmd -S . -E -Q "EXEC InformationManagementSystem.dbo.sp_BackupDatabases"
保存成功后將文件后綴改成.bat,比如“Sqlbackup.bat"。
打開控制面板,選擇管理工具=》任務計劃程序
右鍵任務計劃程序,選擇創建任務,如下圖設置相關基礎信息:
這里要注意的是在安全選項的用戶賬號要選擇當前系統賬號,比如上圖標記3中的SYSTEM賬號,之所以要選擇system賬號,是由于如果選擇當前系統的管理員賬號,每次任務計劃運行批處理文件的時候,系統都會彈出執行對話框,雖然只是一閃而過,但是還是會對用戶造成不必要的干擾
設置完常規選項后,接下來點擊觸發器,設置任務自動執行的時間,比如下圖中我們設置每天的12點都執行一次自動備份(會自動運行數據庫備份的批處理文件),然后點擊確定。
這里設置我們要執行的操作,選擇啟動程序,然后瀏覽并選擇步驟二中保存在"F:\Database\Backup\Sqlbackup.bat"的批處理文件,以后每天中午12點都會執行這個自動備份腳本。
最后這里設置其他相關選項,這里根據自己的要求進行設置。
到了這里就大功告成,我們通過使用系統的任務計劃程序,從而定時執行批處理腳本,實現了SQL Server Express速成版的自動備份數據庫的功能。
網址:http://www.prpcpat.com
地址:江蘇省徐州市云龍區清風路9號新城區碧桂園綜合樓2樓