タイトル通り、今回はSQL Serverの機能であるメンテナンスプランを使用して、バックアップを取得します。
実施作業
メンテナンスプランとは
簡単にいうと、DBのメンテナンスをするために標準で提供する機能で、DBの定期バックアップはもちろんのこと、DB最適化やデータ不整合の修正等色々とやれるそう。
ワークフローも作成できるので、フルバックアップを取得した後に日時で差分バックアップを取得する、等といった制御が可能になるため、意図的に時間をずらして個別に設定するということが不要になるみたいです。
他の機能も興味ありますが、今回はフルバックアップの取得のみを実施しようと思います。
公式のドキュメントは以下
docs.microsoft.com
メンテナンスプランを設定する方法として、ウィザードを使用する方法と、デザイン画面を使用する方法がありますが、ウィザードによるメンテナンスプランの作成を実施します。
docs.microsoft.com
設定対象
メンテナンスプランを設定する対象情報はこちらです。
サーバ:Windows Server 2016 Datacenter
SQL Server :2016 Standard
バックアップ対象DB:AdventureWorks2016
メンテナンスプラン設定
最初にRDPサーバーに接続し、SQL Serverにログインする

[Management]を展開し、[Maintenance Plans]を右クリックして出てきた[Maintenance Plan Wizard]を選択する

メンテナンスプランのウィザードが立ち上がるので、Nextボタンを押下します。

次にプロパティの設定に移るので、メンテナンスプランの名前を入力し、[Single schedule for the entire plan or no schedule]を選択します。
今回スケジュールを設定するつもりはないので、Nextボタンを押下します。

※選択した項目について
上記で選択した[Single schedule for the entire plan or no schedule]は作成するプラン全体でスケジュールを使用するかしないかを判断する項目で、もう一つの[Separate schedules for each task]項目はプランに設定するタスク単位でスケジュールを設定するかしないかを判断したい場合はこちらを選択します。
次の画面でメンテナンスタスクを選択します。
フルバックアップにチェックを付けてNextボタンを押下します。

それぞれのタスクの説明は以下をご確認ください。
| タスク名 | 日本語(直訳) |
| Check Database Integrity | データベースの整合性を確認する |
| Shrink Database | データベースの縮小 |
| Reorganize Index | インデックスの再編成 |
| Rebuild Index | インデックスを再構築 |
| Update Statistics | 統計を更新する |
| Clean Up History | 履歴をクリーンアップする |
| Execute SQL Server Agent Job | SQL Serverエージェントジョブの実行 |
| Back Up Database (Full) | データベースのバックアップ(フル) |
| Back Up Database (Differential) | データベースのバックアップ(差分) |
| Back Up Database (Transaction Log) | データベースのバックアップ(トランザクションログ) |
| Maintenance Cleanup Task | メンテナンスクリーンアップタスク |
タスクの選択ができたらタスクの実施順序を設定します。
今回はタスクが1つなので、そのままNextボタンを押下します。

次からはタスクの詳細を設定していきます。
フルバックアップの設定ではバックアップを行うDBのみ指定します。

バックアップ先にDiskを選択して、Nextボタンを押下します。

ログ・レポートはデフォルト設定を使用します。

最後に設定内容の確認をして、Finishボタンを押下します。

メンテナンスプランの実行でエラーが発生していないことを確認できました。

[Maintenance Plans]フォルダ配下に指定した名前でメンテナンスプランが作成されていることを確認できます。

バックアップ取得確認
メンテナンスプラン名で右クリックして、Modifyを選択するとメンテナンスプランのデザイン画面が表示され、フルバックアップのタスクが設定されていることがわかります。

バックアップタスクで右クリックしPropertiesを選択、[DestinationAutoFolderPath]項目に記載のパスを確認して、バックアップが取得されていることを確認します。
