データベースの自動バックアップを使用した Azure SQL Database の復旧Recover an Azure SQL database using automated database backups

SQL Database は、自動データベース バックアップおよび長期保存でのバックアップを使用して、データベース復旧のためのこれらのオプションを提供します。SQL Database provides these options for database recovery using automated database backups and backups in long-term retention. データベース バックアップは、次のものに復元できます。You can restore from a database backup to:

  • 保有期間内の特定の時点に復旧された、同じ論理サーバー上の新しいデータベース。A new database on the same logical server recovered to a specified point in time within the retention period.
  • 削除済みデータベースの削除時に復旧された、同じ論理サーバー上のデータベース。A database on the same logical server recovered to the deletion time for a deleted database.
  • geo レプリケートされている BLOB ストレージ (RA-GRS) の最新の日次バックアップの時点に復旧された、任意のリージョンの論理サーバー上の新しいデータベース。A new database on any logical server in any region recovered to the point of the most recent daily backups in geo-replicated blob storage (RA-GRS).

重要

復元中に既存のデータベースを上書きすることはできません。You cannot overwrite an existing database during restore.

復元されたデータベースでは、次の条件下で、追加のストレージ コストが生じます。A restored database incurs an extra storage cost under the following conditions:

  • データベースの最大サイズが 500 GB より大きい場合に、P11–P15 を S4-S12 または P1–P6 に復元する。Restore of P11–P15 to S4-S12 or P1–P6 if the database max size is greater than 500 GB.
  • データベースの最大サイズが 250 GB より大きい場合に、P1–P6 または PRS1–PRS6 を S4-S12 に復元する。Restore of P1–P6 or PRS1–PRS6 to S4-S12 if the database max size is greater than 250 GB.

余分なコストがかかるのは復元されるデータベースの最大サイズがパフォーマンス レベルに含まれるストレージの量を超えるためであり、含まれる量を超えてプロビジョニングされる余分なストレージに追加料金がかかります。The extra cost is because the max size of the restored database is greater than the amount of storage included for the performance level, and any extra storage provisioned above the included amount is charged extra. 追加ストレージの価格について詳しくは、「SQL Database の価格」をご覧ください。For pricing details of extra storage, see the SQL Database pricing page. 実際に使われる領域の量が含まれるストレージの量より少ない場合、データベースの最大サイズを含まれる量に減らすことで、この追加コストを回避できます。If the actual amount of space used is less than the amount of storage included, then this extra cost can be avoided by reducing the database max size to the included amount. データベース ストレージのサイズおよびデータベースの最大サイズを変更する方法について詳しくは、次を参照してください。単一データベースのリソース制限に関する記事をご覧ください。For more information about database storage sizes and changing the database maximum size, see single database resource limits.

注意

データベースのコピーを作成するときは、自動データベース バックアップが使われます。Automated database backups are used when you create a database copy.

復旧時間Recovery time

データベースの自動バックアップを使用してデータベースを復元する復旧時間は、さまざまな要因によって影響を受けます。The recovery time to restore a database using automated database backups is impacted by several factors:

  • データベースのサイズThe size of the database
  • データベースのパフォーマンス レベルThe performance level of the database
  • 関連するトランザクション ログ数The number of transaction logs involved
  • 復元時点に復旧するために再生の必要があるアクティビティ量The amount of activity that needs to be replayed to recover to the restore point
  • 別のリージョンへの復元の場合は、ネットワーク帯域幅The network bandwidth if the restore is to a different region
  • ターゲット リージョンで処理される、同時実行される復元要求の数The number of concurrent restore requests being processed in the target region.

    大規模なデータベースや、アクティビティ数が多いデータベースの場合、復元に数時間かかることがあります。For a very large and/or active database, the restore may take several hours. あるリージョンでの停止が長引いた場合、多数の geo リストア要求が他のリージョンによって処理されることがあります。If there is prolonged outage in a region, it is possible that there are large numbers of geo-restore requests being processed by other regions. 多数の要求がある場合、そのリージョンでのデータベースの復旧時間が長くなる可能性があります。When there are many requests, the recovery time may increase for databases in that region. ほとんどのデータベースの復元は、12 時間以内に完了します。Most database restores complete within 12 hours.

単一サブスクリプションの場合、送信および処理される同時実行の復元要求の数に制限があります (ポイントインタイム リストア、geo リストア、および長期間保有のバックアップからの復元ポイントも含まれます)。For a single subscription, there’re some limitations on number of concurrent restore requests (including point in time restore, geo restore and restore from long term retention backup) being submitted and proceeded:

処理される同時要求の最大数Max # of concurrent requests being processed 送信される同時要求の最大数Max # of concurrent requests being submitted
単一のデータベース (サブスクリプションごと)Single database (per subscription) 1010 6060
エラスティック プール (プールごと)Elastic pool (per pool) 44 200200

一括復元を実行する機能は組み込まれていません。There is no built-in functionality to do bulk restore. このタスクを達成する 1 つの方法として、たとえば、 Azure SQL Database: Full Server Recovery スクリプトがあります。The Azure SQL Database: Full Server Recovery script is an example of one way of accomplishing this task.

重要

自動バックアップを使って復旧するには、サブスクリプションにおける SQL Server の共同作成者ロールのメンバーまたはサブスクリプション所有者である必要があります。To recover using automated backups, you must be a member of the SQL Server Contributor role in the subscription or be the subscription owner. 復旧には、Azure Portal、PowerShell、または REST API を使用できます。You can recover using the Azure portal, PowerShell, or the REST API. Transact-SQL は使用できません。You cannot use Transact-SQL.

ポイントインタイム リストアPoint-in-time restore

Azure Portal、PowerShell、または REST API を使用して、既存のデータベースを同じ論理サーバー上の新しいデータベースとして以前の時点に復元できます。You can restore an existing database to an earlier point in time as a new database on the same logical server using the Azure portal, PowerShell, or the REST API.

ヒント

データベースのポイントインタイム リストアの実行方法を示すサンプル PowerShell スクリプトについては、PowerShell を使用した SQL データベースの復元に関するページを参照してください。For a sample PowerShell script showing how to perform a point-in-time restore of a database, see Restore a SQL database using PowerShell.

任意のサービス レベルまたはパフォーマンス レベルに、1 つのデータベースとして、またはエラスティック プールにデータベースを復元できます。The database can be restored to any service tier or performance level, and as a single database or into an elastic pool. データベースを復元する論理サーバーまたはエラスティック プールに十分なリソースがあることを確認します。Ensure you have sufficient resources on the logical server or in the elastic pool to which you are restoring the database. 完了すると、復元されたデータベースは完全にアクセス可能な通常のオンライン データベースになります。Once complete, the restored database is a normal, fully accessible, online database. 復元されたデータベースは、サービス レベルとパフォーマンス レベルに基づいて通常料金が発生します。The restored database is charged at normal rates based on its service tier and performance level. データベースの復元が完了するまで、料金は発生しません。You do not incur charges until the database restore is complete.

通常、以前の時点へのデータベースの復元は、復旧の目的で行います。You generally restore a database to an earlier point for recovery purposes. その場合、復元されたデータベースを元のデータベースの代わりとして扱うか、データを取得して元のデータベースの更新に使用できます。When doing so, you can treat the restored database as a replacement for the original database or use it to retrieve data from and then update the original database.

  • データベースの置換: 復元されたデータベースを元のデータベースの代わりに使用する場合は、パフォーマンス レベルやサービス レベルが適切であることを確認し、必要に応じてデータベースをスケールしてください。Database replacement: If the restored database is intended as a replacement for the original database, you should verify the performance level and/or service tier are appropriate and scale the database if necessary. T-SQL の ALTER DATABASE コマンドを使用して、元のデータベース名を変更し、復元したデータベースに元の名前を付けます。You can rename the original database and then give the restored database the original name using the ALTER DATABASE command in T-SQL.
  • データの復旧: ユーザー エラーまたはアプリケーション エラーからの復旧のために、復元されたデータベースからデータを取得する場合は、復元されたデータベースから元のデータベースにデータを抽出するのに必要なデータ復旧のスクリプトを書き込み、実行する必要があります。Data recovery: If you plan to retrieve data from the restored database to recover from a user or application error, you need to write and execute the necessary data recovery scripts to extract data from the restored database to the original database. 復元操作が完了するまでに時間がかかる可能性がありますが、復元プロセスを通して、復元しているデータベースがデータベース一覧に表示されます。Although the restore operation may take a long time to complete, the restoring database is visible in the database list throughout the restore process. 復元中にデータベースを削除すると、復元操作は取り消され、復元が完了していないデータベースの料金はかかりません。If you delete the database during the restore, the restore operation is canceled and you are not charged for the database that did not complete the restore.

Azure ポータルAzure portal

Azure Portal を使用してある時点に復旧するには、データベースのページを開き、ツールバーの [復元] をクリックします。To recover to a point in time using the Azure portal, open the page for your database and click Restore on the toolbar.

ポイントインタイム リストア

削除されたデータベースの復元Deleted database restore

Azure Portal、PowerShell、または REST (createMode=Restore) を使用して、削除されたデータベースを同じ論理サーバー上の削除されたデータベースの削除時刻に復元できます。You can restore a deleted database to the deletion time for a deleted database on the same logical server using the Azure portal, PowerShell, or the REST (createMode=Restore).

ヒント

削除されたデータベースの復元方法を示すサンプル PowerShell スクリプトについては、PowerShell を使用した SQL データベースの復元に関するページを参照してください。For a sample PowerShell script showing how to restore a deleted database, see Restore a SQL database using PowerShell.

重要

Azure SQL Database サーバー インスタンスを削除すると、そのデータベースもすべて削除されます。これを回復することはできません。If you delete an Azure SQL Database server instance, all its databases are also deleted and cannot be recovered. 現時点では、削除されたサーバーを復元するためのサポートはありません。There is currently no support for restoring a deleted server.

Azure ポータルAzure portal

Azure Portal を使用して、削除されたみデータベースをその保有期間中に復旧するには、サーバーのページを開き、[操作] 領域で [削除済みデータベース] をクリックします。To recover a deleted database during its retention period using the Azure portal, open the page for your server and in the Operations area, click Deleted databases.

削除されたデータベースの復元 1

削除されたデータベースの復元 2

geo リストアGeo-restore

geo レプリケートされた最新の完全バックアップおよび差分バックアップから任意の Azure リージョン内の任意のサーバーで SQL データベースを復元することができます。You can restore a SQL database on any server in any Azure region from the most recent geo-replicated full and differential backups. geo リストアではソースとして geo 冗長バックアップが使用され、障害によってデータベースまたはデータセンターにアクセスできない場合でも、geo リストアを使用してデータベースを復旧できます。Geo-restore uses a geo-redundant backup as its source and can be used to recover a database even if the database or datacenter is inaccessible due to an outage.

geo リストアは、データベースがホストされているリージョンでのインシデントが原因でデータベースが利用できない場合の既定の復旧オプションです。Geo-restore is the default recovery option when your database is unavailable because of an incident in the region where the database is hosted. リージョン内の大規模なインシデントにより、データベース アプリケーションが使用できなくなった場合、geo レプリケートされたバックアップから他の任意のリージョン内のサーバーにデータベースを復元できます。If a large-scale incident in a region results in unavailability of your database application, you can restore a database from the geo-replicated backups to a server in any other region. 差分バックアップが取得される時刻と、別のリージョンの Azure BLOB にその差分バックアップが geo レプリケートされる時刻には時間差があります。There is a delay between when a differential backup is taken and when it is geo-replicated to an Azure blob in a different region. この時間差は最大 1 時間なので、障害が発生した場合、最大 1 時間分のデータが損失する可能性があります。This delay can be up to an hour, so, if a disaster occurs, there can be up to one hour data loss. 次の図は、別のリージョン内の利用可能な最新のバックアップからのデータベースの復元を示しています。The following illustration shows restore of the database from the last available backup in another region.

geo リストア

ヒント

geo リストアの実行方法を示すサンプル PowerShell スクリプトについては、PowerShell を使用した SQL データベースの復元に関するページを参照してください。For a sample PowerShell script showing how to perform a geo-restore, see Restore a SQL database using PowerShell.

geo セカンダリでのポイントインタイム リストアは、現在はサポートされていません。Point-in-time restore on a geo-secondary is not currently supported. ポイントインタイム リストアは、プライマリ データベースでのみ実行できます。Point-in-time restore can be done only on a primary database. geo リストアを使用して障害から復旧する方法の詳細については、障害からの復旧に関するページを参照してください。For detailed information about using geo-restore to recover from an outage, see Recover from an outage.

重要

バックアップからの復旧は、目標復旧時点 (RPO) と推定復旧時間 (ERT) が最も長い、SQL Database で使用できるディザスター リカバリー ソリューションで最も基本的な方法です。Recovery from backups is the most basic of the disaster recovery solutions available in SQL Database with the longest Recovery Point Objective (RPO) and Estimate Recovery Time (ERT). Basic データベースを使用しているソリューションでは、多くの場合、ERT が 12 時間である geo リストアが妥当なソリューションです。For solutions using Basic databases, geo-restore is frequently a reasonable DR solution with an ERT of 12 hours. 短時間で復旧する必要がある大型の Standard または Premium データベースでは、アクティブ geo レプリケーションの使用を検討する必要があります。For solutions using larger Standard or Premium databases that require shorter recovery times, you should consider using active geo-replication. アクティブ geo レプリケーションでは、継続的にレプリケートされるセカンダリへのフェールオーバーを開始することだけが必要なので、RPO と ERT が大きく短縮されます。Active geo-replication offers a much lower RPO and ERT as it only requires you initiate a failover to a continuously replicated secondary. ビジネスを継続するための選択の詳細については、ビジネス継続性の概要に関するページを参照してください。For more information on business continuity choices, see Overview of business continuity.

Azure ポータルAzure portal

Azure Portal を使用して、データベースをその保有期間中に geo リストアするには、[SQL データベース] ページを開き、[追加] をクリックします。To geo-restore a database during its retention period using the Azure portal, open the SQL Databases page and then click Add. [ソースの選択] テキスト ボックスで、[バックアップ] を選択します。In the Select source text box, select Backup. 任意のリージョン内のサーバー上で復旧を実行するバックアップを指定します。Specify the backup from which to perform the recovery in the region and on the server of your choice.

自動バックアップを使用したプログラム実行の復旧Programmatically performing recovery using automated backups

前に説明したように、データベースの復旧は、Azure Portal のほかに、Azure PowerShell または REST API を使用してプログラムで実行できます。As previously discussed, in addition to the Azure portal, database recovery can be performed programmatically using Azure PowerShell or the REST API. 次の表では、使用できるコマンド セットについて説明します。The following tables describe the set of commands available.

PowerShellPowerShell

コマンドレットCmdlet 説明Description
Get-AzureRmSqlDatabaseGet-AzureRmSqlDatabase 1 つまたは複数のデータベースを取得します。Gets one or more databases.
Get-AzureRMSqlDeletedDatabaseBackupGet-AzureRMSqlDeletedDatabaseBackup 復元する削除済みデータベースを取得します。Gets a deleted database that you can restore.
Get-AzureRmSqlDatabaseGeoBackupGet-AzureRmSqlDatabaseGeoBackup データベースの geo 冗長バックアップを取得します。Gets a geo-redundant backup of a database.
Restore-AzureRmSqlDatabaseRestore-AzureRmSqlDatabase SQL Database を復元します。Restores a SQL database.

REST APIREST API

APIAPI 説明Description
REST (createMode=Recovery)REST (createMode=Recovery) データベースを復元しますRestores a database
Get Create or Update Database StatusGet Create or Update Database Status 復元操作中にステータスを返しますReturns the status during a restore operation

概要Summary

自動バックアップは、ユーザー エラーやアプリケーション エラー、偶発的なデータベースの削除、および長期間にわたる障害からデータベースを保護します。Automatic backups protect your databases from user and application errors, accidental database deletion, and prolonged outages. この組み込みの機能は、すべてのサービス レベルとパフォーマンス レベルで使用できます。This built-in capability is available for all service tiers and performance levels.

次のステップNext steps