3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Azure VM にある MS SQL Server バックアップ方法まとめ

Last updated at Posted at 2023-08-24

こんにちは、駆け出しアーキテクトのやまぱんです。

今回は Azure VM に構築した MS SQL Server のバックアップ手法ってどういう選択肢があるのかをまとめてみました。
詳細については各種リンクをたどって確認してもらえればと思います。
なにかあればぜひコメントください!!!

比較的下記の 公式の MS Docs がまとまってると思います。この Docs の内容を補足できればと思います。
この記事にあって下記に記載がないのは Azure VM バックアップを使った手法になります。

・ Azure VM における SQL Server のバックアップと復元
https://learn.microsoft.com/ja-jp/azure/azure-sql/virtual-machines/Windows/backup-restore?view=azuresql#automated

なにを使うか

サポートマトリックスを確認のうえ、要件に合うか、各種メリット・デメリットを把握したうえで選択していただくのがよいかと思います。
個人的にはせっかく Azure 上にあるんだから、マネージドなバックアップソリューションが使えるのであれば使うのがいいんじゃないかと思います。

結論からいうと大きく下記の4種類があります。

[MS SQL の機能 / Azure 外の機能]

[Azure の機能]

MS SQL の機能 / Azure 外の機能

MS SQL Server の機能を使ったバックアップ (手動バックアップ / MS SQL のネイティブバックアップ)

私は MSSQL ネイティブなバックアップと呼んだり、手動バックアップと呼んだりしています。
一番カスタマイズ性が高く保存先も自由に選べることが最大のメリットだと思います。
バックアップデータの保存先は Azure であればマネージドディスクに保存したり、ストレージ アカウントに保存したりといった選択肢があるかと思います。
そのためバックアップデータの冗長性は保存先に依存します。

・ SQL Server バックアップを直接 Azure Blob Storage へ作成する方法について
https://www.nobtak.com/entry/azbackup0

・手動バックアップ
https://learn.microsoft.com/ja-jp/azure/azure-sql/virtual-machines/Windows/backup-restore?view=azuresql#manual

・クイックスタート: Azure Blob Storage への SQL のバックアップと復元
https://learn.microsoft.com/ja-jp/sql/relational-databases/tutorial-sql-server-backup-and-restore-to-azure-blob-storage-service?view=sql-server-ver16&tabs=SSMS

・ネットワーク ファイル システム (NFS) 3.0 プロトコルを使用して Blob Storage をマウントする
https://learn.microsoft.com/ja-jp/azure/storage/blobs/network-file-system-protocol-support-how-to

Azure の機能

Azure VM の SQL 拡張機能を使ったバックアップ(自動バックアップ)

Azure VM エージェントの拡張機能である SQL 拡張機能を使ったバックアップです。
"Azure Portal" → "SQL 仮想マシン" → "バックアップ" から設定することができます。
Azure VM が起動し、SQL 拡張機能(agent)が正常に動作していることが前提です、そうでない場合はグレーアウトして設定できません。
ログバックアップの最高頻度は 5 分間隔です。
比較的構成が容易です。

*Azure Market Place からデプロイした MS SQL Server の入ったイメージであれば最初から SQL 拡張機能がインストールされています。

バックアップデータの保存先は選択したストレージ アカウントになります。

ご参考までに設定画面のスナップショットです。

image.png

・ Azure Virtual Machines の自動バックアップ (Resource Manager)
https://learn.microsoft.com/ja-jp/azure/azure-sql/virtual-machines/Windows/automated-backup?view=azuresql

・自動バックアップ
https://learn.microsoft.com/ja-jp/azure/azure-sql/virtual-machines/Windows/backup-restore?view=azuresql#automated

・ SQL IaaS Agent 拡張機能への自動登録
https://learn.microsoft.com/ja-jp/azure/azure-sql/virtual-machines/Windows/sql-agent-extension-automatic-registration-all-vms

・ Windows SQL Server IaaS Agent 拡張機能を使用して管理を自動化する
https://learn.microsoft.com/ja-jp/azure/azure-sql/virtual-machines/Windows/sql-server-iaas-agent-extension-automate-management?view=azuresql&tabs=azure-portal

Azure Backup の Azure VM バックアップ (Azure VM バックアップ)

Azure Backup サービスの 1 つ、もはや一番有名な? Azure VM Backup で SQL DB も含めて取得する方法です。
こちらも比較的構成が容易です。
Azure VM Backup で保護している場合はそれで SQL DB も保護されるので、要件に合う場合は Azure VM Backup だけでもよいパターンがあります。

あくまで、Azure VM のバックアップであり、SQL DB に特化したバックアップではありません。
そのため、リストアは Azure VM 単位(またはディスク単位) のリストアとなりますし、ログバックアップはできません。

また、他の バックアップ方法に比べると RPO が緩いですが、これで要件を満たせる場合は通信要件も気にする必要がなく(Azure VM では必須の通信先の 168.63.129.16 への通信のみ)設定も容易かと思います。
保存先は Azure Backup の専用ストレージ(Recovery Services コンテナー) になります。

バックアップアイテムは Recovery Services コンテナーから確認・管理可能です。
image.png

下記私が以前に投稿した MS サポートの公式ブログです。
・ SQL Server のインストールされた Windows OS のバックアップについて
https://jpabrs-scem.GitHub.io/blog/AzureVMBackup/Consistencies/#1-2

またよくハマる例として、共有ディスクや CSV は執筆時時点で Not Support です。
・ VM ストレージのサポート - Azure VM バックアップのサポート マトリックス
https://learn.microsoft.com/ja-jp/azure/backup/backup-support-matrix-iaas#vm-storage-support

Azure Backup の Azure SQL DB バックアップ (Azure Backup for SQL DB in Azure VM)

こちら既出の Azure Backup ソリューションの中の SQL DB in Azure VM のバックアップです。
Azure Backup の SQL ワークロードバックアップなどと呼んだりします。
比較的構成が複雑です。
マネージドバックアップでバックアップ比較的高機能です。
保持期間は最大 99 年まで設定可能です。

例えば下記のようなものがあります。(後述の URL 先に記載されています。)

  • 15 分の復旧ポイント目標 (RPO) :SQL トランザクション ログのバックアップを最大 15 分ごとに構成できます。
  • ポイントインタイム リストア:ポータルを使用して、データベースを特定の時点に復元できます。複数の完全バックアップ、差分バックアップ、およびログ バックアップを手動で復元する必要はありません。

保存先は Azure Backup の専用ストレージ(Recovery Services コンテナー) になります。

復元オプションはこちらをご覧ください。
クロスリージョン リストアや異なる Azure VM にもリストアなども可能です。
・ Azure VM 上の SQL Server データベースを復元する
https://learn.microsoft.com/ja-jp/azure/backup/restore-sql-database-azure-vm

バックアップアイテムは Recovery Services コンテナーから確認・管理可能です。
(この環境では構成していませんので 0 になってます。)
image.png

またプロキシ環境下での設定はひと手間必要です。
・ SQL Server DB に対する Azure Backup を、Proxy Server をバイパスして PE 経由でバックアップする場合の設定
https://jpabrs-scem.GitHub.io/blog/AzureSQLBackup/How_to_PE_SQL_backup_bypass_proxy/

・ Azure VM での SQL Server Backup について
https://learn.microsoft.com/ja-jp/azure/backup/backup-azure-sql-database

・ Azure VM 内の SQL Server のバックアップに関するサポート マトリックス
https://learn.microsoft.com/ja-jp/azure/backup/sql-support-matrix

・ SQL Server のバックアップの種類
https://learn.microsoft.com/ja-jp/azure/backup/backup-architecture#sql-server-backup-types

・ネットワーク接続を確立する
https://learn.microsoft.com/ja-jp/azure/backup/backup-sql-server-database-azure-vms#establish-network-connectivity

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?