ネットワーク対応・沙羅の上位版・シンサラ

機能重視型・ご相談はお気軽に 開発:寺院コム

お見積
Lineサポート
遠隔サポート
最近の記事
予約・相談
スマホ版
サラデン
旧沙羅
業者様向け情報

SQLServerのバックアップをタスクスケジューラーに登録

※このページは業者様向け情報です。

ファイル構成

ローカルサーバー(localhost)
sqlコマンドのファイル + バッチファイル + vbsのスクリプト でvbs をタスクスケジューラーに登録します。

例:sarabak.sql

E:\Sarabackup\フォルダにバックアップを作成する場合のサンプル


/* データベース名 */
DECLARE @DATABASE_NAME  VARCHAR(MAX)    = 'sara2019';
 
/* 拡張子 */
DECLARE @EXTENSION_NAME VARCHAR(MAX)    = '.bak';
 
/* ディレクトリ名 */
DECLARE @DIRECTRY_PATH  VARCHAR(MAX)    = 'E:\SaraBackup\';
 
/* ファイル名 */
DECLARE @FILE_NAME      VARCHAR(MAX)    = '';
 
/* ファイルフルパス作成 */
SET @FILE_NAME = @DIRECTRY_PATH + FORMAT(CURRENT_TIMESTAMP,'yyyyMMddHHmmss') + '_' + @DATABASE_NAME + @EXTENSION_NAME;
 
/* バックアップ実行 */
BACKUP DATABASE @DATABASE_NAME TO DISK=@FILE_NAME WITH INIT
GO

例:sarabak.bat

※最新10個を残す設定


echo off
setlocal

REM === ログの保存先 ===
set LOGDIR=C:\SARA2019S\BackupBat

REM === SQLServer バックアップ ===
sqlcmd -d sara2019 -E -S localhost -i %LOGDIR%\sarabak.sql > %LOGDIR%\Backup.log 2>&1

REM === 実行結果チェック ===
if %errorlevel% neq 0 (
    echo %date% %time% : バックアップ失敗 >> %LOGDIR%\BackupError.log
) else (
    echo %date% %time% : バックアップ成功 >> %LOGDIR%\BackupSuccess.log
)

REM === 古いバックアップ削除(最新10個を残す) ===
for /f "skip=10 delims=" %%i in ('dir /b /a:-d /o-d "E:\SaraBackup\*.bak"') do del "E:\SaraBackup\%%i"

endlocal

例:sarabak.vbs

※単に黒いcmd画面を表示しないだけの理由です。


Set WshShell = CreateObject("WScript.Shell")
' バッチを非表示で実行
WshShell.Run """C:\SARA2019S\BackupBat\sarabak.bat""", 0, True

関連記事

予約カレンダー
2026年4月
1
2
3
4
×
5
×
6
7
8
9
10
11
×
12
×
13
14
15
16
17
18
×
19
×
20
21
22
23
24
25
×
26
×
27
28
29
30
PAGE TOP