----- -->
-----
<a name="manualbackup"></a>
## Create a custom backup
1. Go to your app management pane in the [Azure portal](https://portal.azure.com). On the left menu, select **Backups**.
1. At the top of the **Backups** page, select **Configure custom backups**.
1. In **Storage account**, select an existing storage account in the same subscription or select **Create new**. Repeat in **Container**.
To back up the linked databases, select **Next: Advanced** > **Include database**, and select the databases to backup.
> [!NOTE]
> A supported database only appears in this list when its connection string exists in the **Connection strings** section of the **Configuration** page for your app.
>
> In-app MySQL databases are always backed up without any configuration. If you manually create settings for in-app MySQL databases, like adding connection strings, the backups might not work correctly.
>
>
1. Select **Configure**.
After the storage account and container are configured, you can initiate an on-demand backup at any time. On-demand backups are retained indefinitely.
1. At the top of the **Backups** pane, select **Backup Now**.
The custom backup is displayed in the list with a progress indicator. If it fails with an error, you can select the line item to see the error message.
<a name="automatedbackups"></a>
## Configure custom scheduled backups
1. On the **Configure custom backups** pane, select **Set schedule**.
1. Configure the backup schedule as desired and then select **Configure**.
### Back up and restore a linked database
> [!NOTE]
> Custom backups with linked databases for App Service support only Single Server tiers of Azure Database for MySQL and PostgreSQL. Since Single Server tiers are being retired, upgrading linked databases to Flexible Server might cause backups to fail. Use native database backup tools to prevent data loss. Standalone MySQL and PostgreSQL servers (for example, on VMs) are unaffected by the Single Server tier retirement. For retirement details, see [MySQL Single Server retirement](/azure/mysql/migrate/whats-happening-to-mysql-single-server) and [PostgreSQL Single Server retirement](/azure/postgresql/migrate/whats-happening-to-postgresql-single-server).
>
> For backup and restore of Flexible Servers, see the respective database documentation:
>- [Azure Database for MySQL - Flexible Server: Back up and restore](/azure/mysql/flexible-server/concepts-backup-restore)
>- [Azure Database for PostgreSQL - Flexible Server: Back up and restore](/azure/postgresql/flexible-server/concepts-backup-restore)
>
Custom backups can include linked databases (except when the backup is configured over Azure Virtual Network). To make sure your backup includes a linked database, take the following steps:
1. Make sure the linked database is [supported](#automatic-vs-custom-backups).
1. Create a connection string that points to your database. A database is considered "linked" to your app when there's a valid connection string for it in your app's configuration.
1. Follow the steps in [Create a custom backup](#create-a-custom-backup) to select the linked database in the **Advanced** tab.
To restore a database included in a custom backup:
1. Follow the steps in [Restore a backup](#restore-a-backup).
1. In **Advanced options**, select **Include database**.
For troubleshooting information, see [Why is my linked database not backed up?](#why-is-my-linked-database-not-backed-up).
## Deprecation of linked database backups
Starting **3/31/2028**, Azure App Service custom backups will **no longer support backing up linked databases**. We recommend using the native backup and restore tools provided by each database service instead.
To help users prepare for this change, the App Service team will **remove the option to include linked databases** in new custom backup configurations according to the following schedule:
- **November 2025** – Removal for linked **MySQL** and **PostgreSQL** databases
- **April 2026** – Removal for linked **Azure SQL** and **SQL Server** databases
Custom backups that already include linked databases will **continue to back up those databases** until **3/31/2028**, after which linked databases will no longer be included.
## Back up and restore over Azure Virtual Network
With [custom backups](#create-a-custom-backup), you can back up your app's files and configuration data to a firewall-protected storage account if the following requirements are met:
- The app is [integrated with a virtual network](overview-vnet-integration.md), or the app is in a v3 [App Service Environment](environment/overview.md).
- The storage account [allows access from the virtual network](../storage/common/storage-network-security.md#grant-access-from-a-virtual-network) that the app is integrated with, or that the v3 App Service Environment is created with.
To back up and restore over Azure Virtual Network:
1. When configuring [custom backups](#create-a-custom-backup), select **Backup/restore over virtual network integration**.
1. Select **Configure** to save your settings.
To enable backup/restore over a virtual network for deployment slots, complete the necessary steps specifically for each slot:
- Virtual network integration is enabled for the deployment slots, or the slot is in a v3 [App Service Environment](environment/overview.md).
- The option for backup/restore over virtual network integration is selected for deployment slots.
If you don't see the checkbox, or if the checkbox is disabled, verify that your resources fulfill the requirements.
After the configuration is saved, any manual backup, scheduled backup, or restore is made through the virtual network. If you make changes to the app, the virtual network, or the storage account that prevent the app from accessing the storage account through the virtual network, the backup or restore operations fail.
<a name="partialbackups"></a>
## Configure partial backups
Partial backups are supported for custom backups but not for automatic backups. Sometimes you don't want to back up everything on your app. Here are a few examples:
* You [set up weekly backups](#configure-custom-scheduled-backups) of an app that contains static content that never changes (for example, old blog posts or images).
* Your app has over 10 GB of content. (That's the maximum amount you can back up at a time.)
* You don't want to back up the log files.
To exclude folders and files from being stored in your future backups, create a `_backup.filter` file in the [`%HOME%\site\wwwroot` folder](operating-system-functionality.md#network-drives-unc-shares) of your app. Specify the list of files and folders you want to exclude in this file.
> [!TIP]
> You can access your files by navigating to `https://<app-name>.scm.azurewebsites.net/DebugConsole`. If prompted, sign in to your Azure account.
Identify the folders that you want to exclude from your backups. For example, say you want to filter out the highlighted folder and files.
:::image type="content" source="./media/manage-backup/kudu-images.png" alt-text="Screenshot that shows files and folders to exclude from backups.":::
Create a file called `_backup.filter` and put the preceding list in the file, but remove the root `%HOME%`. List one directory or file per line. The content of the file should be: