環境
- SQL Expresss (starting with 2008)
- sqlcmd
事先閱讀
操作步驟
-
create backupSQL file
PRINT '==============================Start==========================================' PRINT '' USE [master] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO DECLARE @DB_NAME VARCHAR(128) = N'leodb', @BACKUP_PATH VARCHAR(64) = N'D:\downloadTemp\dbbackup', --datetime format https://www.w3schools.com/sql/func_convert.asp @DateTime NVARCHAR(20) = REPLACE(CONVERT(VARCHAR, GETDATE(),102),'.','') + '__' + REPLACE(CONVERT(VARCHAR, GETDATE(),108),':',''), @BackupName varchar(100) SET @BACKUP_PATH = @BACKUP_PATH + '\' + @dateTime + '_' + @DB_NAME + '.bak' PRINT @BACKUP_PATH --Backing Up a Whole Database BACKUP DATABASE [leodb] TO DISK = @BACKUP_PATH WITH INIT --是否初始化備份覆寫已存在檔案(INIT)或是附加已存在檔案上(預設NOINIT) PRINT '' PRINT '==============================END============================================'
-
create batch file
-i
是讀取檔案輸入指令、-o
檔案輸出指令
sqlcmd -i C:\MyFolder\MyScript.sql -o C:\MyFolder\MyOutput_log.txt
-
create 工作排程
-
打開工作排程
-
建立基本工作任務
-
選擇執行方式 (天、週、月……)
-
選擇執行時間
-
選擇動作為執行程式 (execute batch file)
-
選擇程式檔案路徑 (batch file)
-
選擇確認完成建立
-
排程列表
-
-
執行結果
-
執行完成後的檔案列表,多兩個檔案 (db bak、log檔)
-
執行完成後的log檔內容
-