次の方法で共有


Azure に格納されたバックアップからの復元

このトピックでは、Azure Blob Storage サービスに格納されたバックアップを使用してデータベースを復元するときの注意事項について説明します。 このトピックは、SQL Server Backup to URL または Microsoft Azure への SQL Server マネージド バックアップを使用して作成されたバックアップが対象です。

Azure Blob Storage サービスに格納されたバックアップを復元する計画がある場合は、このトピックを確認した後、データベースの復元方法 (オンプレミス バックアップでも Azure バックアップでも同じ) の手順が説明されているトピックを確認することをお勧めします。

概要

内部設置型バックアップからデータベースを復元するために使用するツールや方法は、クラウド バックアップからのデータベースの復元にも当てはまります。 以下のセクションでは、これらの注意事項に加えて、Azure Blob Storage サービスに格納されたバックアップを使用するときに知っておく必要がある相違点について説明します。

Transact-SQL の使用

  • SQL Server はバックアップ ファイルを取得するために外部ソースに接続する必要があるため、SQL 資格情報を使用してストレージ アカウントへの認証を行います。 そのため、RESTORE ステートメントには WITH CREDENTIAL オプションが必要です。 詳細については、「 Azure BLOB ストレージ サービスを使用した SQL Server のバックアップと復元」をご覧ください。

  • Microsoft Azure への SQL Server マネージド バックアップ を使用してクラウドへのバックアップを管理している場合は、 smart_admin.fn_available_backups システム関数を使用すると、ストレージ内の使用可能なバックアップをすべて確認できます。 このシステム関数により、テーブル内のデータベースの使用可能なすべてのバックアップが返されます。 結果はテーブルで返されるため、結果のフィルター処理または並べ替えが可能です。 詳細については、「 smart_admin.fn_available_backups (Transact-SQL)」を参照してください。

SQL Server Management Studio を使用する

  • 復元タスクは、SQL Server Management Studio を使用してデータベースを復元するために使用されます。 現在、バックアップ メディアのページには、Azure Blob Storage サービスに格納されたバックアップ ファイルを表示するための [URL] オプションがあります。 また、ストレージ アカウントへの認証に使用する SQL 資格情報を指定することも必要です。 その後、 [復元するバックアップ セット] グリッドには、Azure Blob Storage 内の使用可能なバックアップが表示されます。 詳細については、「SQL Server Management Studio を使用した Microsoft Azure Storage からの復元」を参照してください。

復元の最適化

復元の書き込み時間を短縮するには、SQL Server ユーザー アカウントに [ボリュームの保守タスクを実行] ユーザー権利を追加します。 詳細については、「 データベース ファイルの初期化」をご覧ください。 ファイルの瞬時初期化が有効な状態で復元が依然として低速な場合は、データベースをバックアップしたときに使用したインスタンスに対応するログ ファイルのサイズに注目します。 ログのサイズが非常に大きい場合 (数 GB) は、復元が低速であることが予期されます。 ログ ファイルの処理に長い時間が費やされるために、復元中はログ ファイルのサイズを 0 にする必要があります。

復元時間を短縮するには、圧縮されたバックアップを使用することをお勧めします。 バックアップ サイズが 25 GB を超える場合は、 AzCopy ユーティリティ を使用してローカル ドライブにダウンロードしてから復元を実行します。 バックアップに関するその他のベスト プラクティスと推奨事項については、「 SQL Server Backup to URL のベスト プラクティスとトラブルシューティング」を参照してください。

復元を実行するときに詳細ログを生成するために、トレース フラグ 3051 を有効にすることもできます。 このログ ファイルはログ ディレクトリに配置され、BackupToUrl-instancename-dbname-action-PID.log<>><>< という形式で名前が付けられます。 このログ ファイルには、問題の診断に役に立つタイミングも含め、Azure Storage への各ラウンド トリップが記録されます。

復元操作の実行に関するトピック