Windows Server バックアップのスケジュールを任意に設定する

Windows Server バックアップでバックアップスケジュールを作成する際、下図のように最大で取れるバックアップ間隔は最大1日までとなっています。頻繁にバックアップを取りたくない場合は1週間単位や1か月単位で指定したいところですが、残念ながらここではそういった設定はできません。

image

ここのバックアップ スケジュールは設定を行うと実はタスク スケジューラーに設定されています。ということはそこの設定を変えれば自由にスケジュールを変更できるということです。

場所は「Microsoft」-「Windows」-「Backup」に「Microsoft-Windows-WindowsBackup」が作成されますのでこれを直接変更してください。

image

週1で実行する場合はこんな感じで設定します。

image

余談ですが、このスケジュールは Windows Server バックアップでスケジュールを設定した場合に更新されますので、スケジュールの設定を変更、例えばバックアップ対象を変えただけでもタスク スケジューラーの設定が戻りますのでその場合は再設定してあげる必要があります。


SQL Server データベースの自動バックアップ

今まで SQL Server のデータベースのバックアップは SSIS や Windows タスクを使用したバックアップ SQL でやってたのですが、SQL Server Management Studio を使えば簡単にバックアップスケジュールを組めたんですね。

せっかくなのでその手順を簡単に書いておきます。

【環境】

  • SQL Server 2008 R2
  • Windows Server 2008 R2

【手順】

  1. SQL Server Management Studio を起動
  2. 対象データベースエンジンを開き、「管理」フォルダを展開
  3. 「メンテナンス プラン」を右クリックし、「新しい メンテナンス プラン」を選択
  4. 新しいメンテナンス プランで任意の名前を指定
  5. デザイン画面が表示されるので、ツールボックスから「データベースのバックアップ タスク」をデザイナー画面にドラッグ&ドロップ
  6. 配置したデータベースのバックアップ タスクをダブルクリック
  7. ダイアログが開くので、バックアップするデータベースの選択、バックアップファイルの出力先、追加、上書きなどを指定して OK をクリック。
  8. ビューの上にあるサブプランからカレンダーアイコンをクリック。
  9. ジョブ スケジュールのプロパティが開くので、バックアップを行うタイミングを任意に設定して OK をクリック

後は指定した時間に自動的にデータベースがバックアップされます。

ちなみにこのメンテナンスは内部では SQL Server エージェントのジョブを作成しており単にそれを実行しているので、ジョブを見てみると作成したバックアップ タスクが追加されていることがわかります。