sqlserver express自動備份數據庫

轉自 http://blog.csdn.net/liangCK/archive/2008/11/16/3311933.aspx

 

 

 

-- 第一步

-- master 庫中建立一個備份數據庫的存儲過程 .

USE master

GO

CREATE PROC p

      @db_name sysname ,         -- 數據庫名

      @bk_path NVARCHAR (1024)     -- 備份文件的路徑

  AS

      IF ISNULL (@db_name, '' )= ''

            SET @db_name= db_name () ;

     

      DECLARE @dt VARCHAR (50) ;

      SET @dt=@db_name+ '_' + CONVERT ( VARCHAR (8) , GETDATE () ,112)+ '_' ;

      SET @dt=@dt+ REPLACE ( CONVERT ( VARCHAR (10) , GETDATE () ,108), ':' , '' )

 

      IF RIGHT (@bk_path,1)<> '/'

           SET @bk_path=@bk_path+ '/' ;

 

      EXEC ( 'BACKUP DATABASE [' +@db_name+ '] TO DISK=''' +@bk_path+@dt+ '.bak'' WITH FORMAT' );

GO

 

-- 第二步

-- 在某個文件夾裏建兩個 txt 文件    -- D:/batComand.txt D:/BackupDatabase.txt

-- 然後 batCommand.txt 文件內容如下 :

sqlcmd -Smyfend/liangck -E -iG:/BackupDatabase.sql

然後保存 . 將擴展名改爲 .bat

: 這裏的 -S 服務器名 / 實例名    -E 是集成安全性

然後 BackupDatabase.txt 文件內容如下 :

USE master

GO

EXEC p ' 要備份的數據庫名 ','G:/Backup/'

然後保存 , 將擴展名改爲 .sql

-- 第三步

新建任務計劃 . 然後在選擇執行哪個任務的時候 .. 單擊瀏覽 .. 選擇 D:/batCommand.bat

設置每天執行 .. 即可 .

備份時的文件名是 : 數據庫名 _ 日期 _ 時間 .bak

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章