Restore from a backup in SQL database in Microsoft Fabric

Applies to:SQL database in Microsoft Fabric

This article provides steps to restore any database from a backup in SQL database in Microsoft Fabric.

Important

This feature is in preview.

Point-in-time restore

Automated database backups help protect your databases from user and application errors, accidental database deletion, and prolonged outages. This is a built-in capability that SQL database in Fabric provides to protect your data from unwanted modifications. Point-in-time restore (PITR) is a capability to recover database into a specific point in time within the retention period. With a database restore, you create a new SQL database in the same Workspace, from backups.

In the current preview, there's no cost or consumption of CPU resources associated with restoring a database.

Restore time

Several factors affect the time to restore a database through automated database backups:

  • Database size
  • Number of transaction logs involved
  • Amount of activity that needs to be replayed to recover to the restore point
  • Number of concurrent restore requests that are processed in the targeted region

For a large or very active database, the restore might take several hours. When there are many concurrent restore requests in the targeted region, the recovery time for individual databases can increase.

Permissions

To restore a database using a point-in-time restore capability, you must have one of the following roles on your Fabric Workspace:

  • Admin
  • Contributor
  • Member

For more information, see Microsoft Fabric roles.

How to restore a SQL database in Microsoft Fabric

You can restore any database to an earlier point in time within its retention period. By performing this operation, you're actually creating a new SQL database in Fabric. When the restore is complete, Fabric creates a new database in the same workspace as the original database.

Note

You cannot overwrite an existing database with a restore.

The core use case of point-in-time restore is to recover from human accident by restoring a SQL database to an earlier point in time. You can treat the restored database as a replacement for the original database, or use it as a data source to update the original database.

  1. In your workspace, right-click on the SQL database, or the ... context menu. Select Restore database.

    Screenshot from the Fabric portal of the items in a workspace. The context menu for a database is expanded and the Restore database dialogue option is highlighted.

  2. The Restore database popup opens. Provide a name of a new database that will be created from the backups of the source/original database.

  3. Choose a point-in-time. You can see the earliest restore point available, the latest restore point, or any point in time between.

    Note

    Times are listed in your local time zone, not in UTC. The time dropdown list is also editable – you can select time by your choice.

  4. Select Create.

  5. The database restore progress starts in the background. Notifications appear in top right corner, and you'll also be able to see the notification about database restore being in progress in the notification center.

    Screenshot of the Notifications tab of the Fabric portal, showing database restore progress.

    Note

    You cannot open the new database until the restore operation is finished.

View SQL database restore points in Microsoft Fabric

You can see earliest (oldest) and latest (newest) restore point in the properties that you can access through the database view of the Fabric portal.

You can restore a database into any point in time between these two restore points showed.

  1. Open your database in the Fabric portal. Select the Settings icon in the ribbon or right-click and select Settings.

  2. Select Restore Points. Times are listed in your local time zone.

    Screenshot from the Fabric portal showing restore points for a SQL database.

Limitations

Current limitations in restore for SQL database:

  • Retention of backups is seven days for a live database.
  • Restoring backups from dropped databases is not currently possible after the retention period of seven days.
  • Cross-workspace restore is not supported.
  • Cross-region restore is not supported.
  • If you delete the database during the restore, the restore operation is canceled. You can't recover the data from deleted database.