kikukawa's diary

都内で活動するシステムエンジニアが書いてます。 興味を持った技術やハマったポイント、自分用メモをつけてます。 最近はweb中心

バッチでDBのバックアップを作成

SQL Server のDBのバックアップをバッチで作成

バックアップをとるためだけに、毎回ManagementStudioを立ち上げるのが面倒なので作成。

以下のコードをテキストファイルに保存し、拡張子を.batに変える。
また、改行してあるが、実際は全て1行で記述する

localhost\sqlexpressはDBがあるインスタンス
hogeUserはSQL Serverのユーザー名
hogePasswordはSQL Serverのパスワード
hogeDBNameはバックアップを作成したいDBの名前

ここから--------------------------------------------------------

sqlcmd -S localhost\sqlexpress -U hogeUser -P hogePassword -d hogeDBName -Q "



DECLARE


    @d1 CHAR(8), @d2 CHAR(6), @fName SYSNAME

    SELECT @d1 = CONVERT(CHAR(8),GETDATE(),112);

    SELECT @d2 = REPLACE( CONVERT(CHAR(8),GETDATE(),108), ':', '')

    SELECT @fName = N'E:\00work\' + @d1 + @d2 + '.bak' BACKUP DATABASE hogeDBName TO DISK = @fName WITH FORMAT, NAME = 'Full Backup of hogeDBName'

"

ここまで--------------------------------------------------------