Azure SQL Managed Instance および Azure SQL Database では Azure 側でデータの自動バックアップが行われます。
また、ポイントインタイムリストアを使用することで、過去の特定の時点におけるデータベースのコピーを作成することができます。
これについて、社内で「ポイントインタイムリストアを使用せず手動で任意のタイミングのバックアップを取得することは可能か」という話題がありました。
そこで、今回は手動で Azure SQL Managed Instance のデータベースのバックアップ取得が可能がどうか調査をしました。
- Transparent Data Encryption について
- Transparent Data Encryption を変更する
- 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 ではサポートされていません。
手動でのバックアップ取得を行う場合はカスタマー マネージド キーに切り替える必要があります。
Transparent Data Encryption を変更する
Microsoft Azure portal より、「サービス マネージド キー」から「顧客が管理するキー」へ設定を変更します。
Transparent Data Encryption 画面の「キーの変更」よりキー格納の種類を選択します。
今回は「キーコンテナー」を選択します。
「キーを選択してください」画面の「新しいキーコンテナの作成」よりキーコンテナを作成します。
「キーを選択してください」画面の「新しいキーの作成」よりキーを作成します。
作成したキーが「Transparent Data Encryption」画面の「キー」項目に設定されていることを確認します。
Azure SQL Managed Instance から手動でバックアップを取得する
Azure SQL Managed Instance に SQL Server Management Studio より接続します。
対象データベースを右クリック > タスク > バックアップ を選択します。
バックアップ先 の 追加ボタンを押下します。
バックアップの保存先となる Azure ストレージコンテナーを選択し、OKボタンを押下します。
データベースのバックアップ設定を確認し、OKボタンを押下します。
選択したストレージにバックアップが保存されていることを確認できました。
おわりに
ポイントインタイムリストアや Transparent Data Encryption 等について調査を行いました。
上記のような対応をすることは多くないかもしれませんが、普段あまり意識しない機能について知識を深めることができました。
この記事が参考になれば幸いです。