【Azure SQL Managed Instance】手動でバックアップを取得する

Azure SQL Managed Instance および Azure SQL Database では Azure 側でデータの自動バックアップが行われます。

また、ポイントインタイムリストアを使用することで、過去の特定の時点におけるデータベースのコピーを作成することができます。

これについて、社内で「ポイントインタイムリストアを使用せず手動で任意のタイミングのバックアップを取得することは可能か」という話題がありました。

そこで、今回は手動で Azure SQL Managed Instance のデータベースのバックアップ取得が可能がどうか調査をしました。

Transparent Data Encryption について

Azure SQL Managed Instance 等のデータファイルは、古い Azure SQL Database 等を除いて Transparent Data Encryption によって暗号化されています。

Azure で Transparent Data Encryption の既定の設定では、組み込みのサーバー証明書によって保護されています。

また、サービス マネージド Transparent Data Encryption によって暗号化されたデータベースのコピーのみの手動バックアップを取得することは、Azure SQL Managed Instance ではサポートされていません。

手動でのバックアップ取得を行う場合はカスタマー マネージド キーに切り替える必要があります。

learn.microsoft.com

learn.microsoft.com

Transparent Data Encryption を変更する

Microsoft Azure portal より、「サービス マネージド キー」から「顧客が管理するキー」へ設定を変更します。

カスタマーマネージドキーに変更する
カスタマーマネージドキーに変更する

Transparent Data Encryption 画面の「キーの変更」よりキー格納の種類を選択します。

今回は「キーコンテナー」を選択します。

キーを選択する
キーを選択する

「キーを選択してください」画面の「新しいキーコンテナの作成」よりキーコンテナを作成します。

キーコンテナを作成する
キーコンテナを作成する

「キーを選択してください」画面の「新しいキーの作成」よりキーを作成します。

キーを作成する
キーを作成する

作成したキーが「Transparent Data Encryption」画面の「キー」項目に設定されていることを確認します。

カスタマーマネージドキーの設定
カスタマーマネージドキーの設定

Azure SQL Managed Instance から手動でバックアップを取得する

Azure SQL Managed Instance に SQL Server Management Studio より接続します。

対象データベースを右クリック > タスク > バックアップ を選択します。

SQL Server Management Studioからのバックアップ
SQL Server Management Studioからのバックアップ

バックアップ先 の 追加ボタンを押下します。

バックアップ設定画面
バックアップ設定画面

バックアップの保存先となる Azure ストレージコンテナーを選択し、OKボタンを押下します。

バックアップ先の選択
バックアップ先の選択

データベースのバックアップ設定を確認し、OKボタンを押下します。

選択したストレージにバックアップが保存されていることを確認できました。

Azure Blob Storageへのバックアップ出力
Azure Blob Storageへのバックアップ出力

おわりに

ポイントインタイムリストアや Transparent Data Encryption 等について調査を行いました。

上記のような対応をすることは多くないかもしれませんが、普段あまり意識しない機能について知識を深めることができました。

この記事が参考になれば幸いです。

執筆担当者プロフィール
石橋 侑樹

石橋 侑樹(日本ビジネスシステムズ株式会社)

これまで業務システムやWebアプリの開発、業務自動化等に携わってきました。サッカーが好きで休日は試合を見ていることが多いです。

担当記事一覧