因為SQL SERVER EXPRESS無法在軟體內做排程備份,所以要透過一些方法達成排程備份。

步驟:

一、建立批次檔,並放在固定位置。

二、將要執行的SQL SCRIPT放置與批次檔同一資料夾中,並確認是否正確。

三、設定WINDOWS排程,執行批次檔。

四、驗證排程。


一、建立批次檔

 

‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐

 

@echo off

 

"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\sqlcmd.exe" ‐S .\SQLEXPRESS ‐U sa ‐Pkeepout ‐i D:\backup_full.sql ‐o D:\backup_full.log

 

‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐

@each off

"sqlcmd的路徑" -S 'SQL SERVER的IP位置' -U 'SQL SERVER的帳號' -P 'SQL SERVER的密碼' -i '要執行的SCRIPT語法及存放路徑' -o '執行後所產生log放置的地方與檔名'


二、建立SQL SCRIPT

常用語法如下:

----------------------------------------------------------------------------------------------------------------------------------

備份資料庫:backup <----範例

 

BACKUP DATABASE [DB_Name]

TO DISK = N'D:\SmartIT_DB_BAK\smartit_bk.bak' WITH INIT,NOUNLOAD,

NAME = N'smartit_bk',NOSKIP,STATS = 10,NOFORMAT

----------------------------------------------------------------------------------------------------------------------------------

清除交易紀錄檔

 

use DB_Name

Backup Log  DB_Name with TRUNCATE_ONLY

dbcc shrinkfile ( DB_Name_log , 2)

---------------------------------------------------------------------------------------------------------

資料庫壓縮

DBCC SHRINKDATABASE ( DB_Name, 10)

-----------------------------------------------------------------------------------------------------------------------------------

一週資料備份

 

DECLARE @bkFileName nvarchar(255)

 

SET DATEFIRST 1

 

SELECT @bkFileName =

 

CASE DATEPART(dw, GETDATE())

 

WHEN 1 THEN N'D:\星期一.bak'

 

WHEN 2 THEN N'D:\星期二.bak'

 

WHEN 3 THEN N'D:\星期三.bak'

 

WHEN 4 THEN N'D:\星期四.bak'

 

WHEN 5 THEN N'D:\星期五.bak'

 

WHEN 6 THEN N'D:\星期六.bak'

 

WHEN 7 THEN N'D:\星期日.bak'

 

END

 

BACKUP DATABASE [DB_Name] TO DISK = @bkFileName WITH INIT,NOUNLOAD,NAME=N'SMARTIT 備份',NOSKIP,STATS=10,NOFORMAT

----------------------------------------------------------------------------------------------------------------------------

arrow
arrow
    全站熱搜

    阿麻 發表在 痞客邦 留言(1) 人氣()