Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
174 lines (118 sloc) 9.08 KB
title description ms.assetid ms.topic origin.date ms.date ms.author ms.custom ms.openlocfilehash ms.sourcegitcommit ms.translationtype ms.contentlocale ms.lasthandoff ms.locfileid
备份应用
了解如何在 Azure 应用服务中创建应用备份。 运行手动或计划备份。 通过包括附加的数据库来自定义备份。
6223b6bd-84ec-48df-943f-461d84605694
article
10/16/2019
01/13/2020
v-tawe
seodec18
1f2ed06993bec26ed33b9360fbaf1bc35729c5ad
cebee33429c25996658d322d337dd05ad1439f89
HT
zh-CN
01/02/2020
75600461

在 Azure 中备份应用

利用 Azure App Service 中的备份和还原功能,可以轻松地手动或按计划创建应用备份。 可以将备份配置为无限期保留。 通过覆盖现有应用或还原为另一应用可将应用还原为先前状态的快照。

有关从备份中还原应用的信息,请参阅在 Azure 中还原应用

备份的内容

应用服务可将以下信息备份到你配置应用使用的 Azure 存储帐户和容器。

  • 应用配置
  • 文件内容
  • 连接到应用的数据库

备份功能支持以下数据库解决方案:

[!NOTE] 每个备份都是应用的完整脱机副本,而不是增量更新。

要求和限制

  • 备份和还原功能要求应用服务计划处于标准层或高级层 。 有关缩放应用服务计划以使用更高层的详细信息,请参阅增加 Azure 中的应用。 与标准层相比,高级层每日允许更多备份量。
  • 在要备份的应用所在的订阅中,需要一个 Azure 存储帐户和容器。 有关 Azure 存储帐户的详细信息,请参阅 Azure 存储帐户概述
  • 最多可备份 10 GB 的应用和数据库内容。 如果备份大小超过此限制,会出错。
  • 不支持备份启用了 SSL 的 Azure Database for MySQL。 如果配置备份,备份将失败。
  • 不支持备份启用了 SSL 的 Azure Database for PostgreSQL。 如果配置备份,备份将失败。
  • 应用内 MySQL 数据库无需任何配置即可自动备份。 如果对应用内 MySQL 数据库进行手动设置,例如添加连接字符串,则备份可能无法正常工作。
  • 不支持将启用了防火墙的存储帐户用作备份目标。 如果配置备份,备份将失败。

创建手动备份

  1. Azure 门户中,导航到应用的页面,然后选择“备份” 。 将显示“备份”页 。

    “备份”页面

    [!NOTE] 若显示以下消息,请单击该消息升级 应用服务计划,才能继续备份。 有关详细信息,请参阅增加 Azure 中的应用选择存储帐户

  2. 在“备份” 页中,选择“未配置备份。 单击此处为应用配置备份”。

    单击“配置”

  3. 在“备份配置”页中,单击“存储未配置”来配置存储帐户 。

    选择存储帐户

  4. 选择“存储帐户” 和“容器” 来选择备份目标。 该存储帐户必须与要备份的应用属于同一订阅。 也可在各自的页面中新建存储帐户或容器。 完成后,单击“选择” 。

  5. 在仍处于打开状态的“备份配置”页中,可配置“备份数据库”,然后选择备份要包含的数据库(SQL 数据库或 MySQL),然后单击“确定” 。

    选择存储帐户

    [!NOTE] 若要使数据库显示在此列表中,其连接字符串必须位于应用中“应用程序设置”页的“连接字符串”部分中 。

    应用内 MySQL 数据库无需任何配置即可自动备份。 如果对应用内 MySQL 数据库进行手动设置,例如添加连接字符串,则备份可能无法正常工作。

  6. 在“备份配置”页中,单击“保存” 。

  7. 在“备份”页中,单击“备份” 。

    BackUpNow 按钮

    备份过程中会显示进度消息。

配置存储帐户和容器后,可随时启动手动备份。

配置自动备份

  1. 在“备份配置”页中,将“计划备份”设置为“开” 。

    启用自动化的备份

  2. 根据需要配置备份计划,然后选择“确定” 。

配置部分备份

有时你不想备份应用中的所有内容。 以下是一些示例:

  • 设置每周备份 应用,其中包含永远不会更改的静态内容,例如旧的博客文章或图映像。
  • 应用的内容超过 10 GB(这是一次可以备份的最大量)。
  • 不想备份日志文件。

使用部分备份可以精确选择需要备份的文件。

[!NOTE] 备份中的单个数据库最大可以为 4GB,但备份的最大总大小为 10GB

从备份中排除文件

假定应用中包含的日志文件和静态映像已经过备份且不会发生更改。 这种情况下,可排除这些文件夹和文件,以免其存储在将来的备份中。 若要从备份中排除文件和文件夹,请在应用的 D:\home\site\wwwroot 文件夹中创建一个 _backup.filter 文件。 指定要在此文件中排除的文件和文件夹列表。

可以通过导航到 https://<app-name>.scm.chinacloudsites.cn/DebugConsole 来访问文件。 如果出现系统提示,请登录到 Azure 帐户。

确定要从备份中排除的文件夹。 例如,筛选出突出显示的文件夹和文件。

映像文件夹

创建名为 _backup.filter 的文件并将上述列表放在文件中,但删除 D:\home。 每行列出一个目录或文件。 文件的内容应为:

\site\wwwroot\Images\brand.png
\site\wwwroot\Images\2014
\site\wwwroot\Images\2013

使用 ftp 或任何其他方法,将 _backup.filter 文件上传到站点的 D:\home\site\wwwroot\ 目录。 如果需要,可使用 Kudu DebugConsole 直接创建此文件,并在其中插入内容。

采用通常使用的相同方式运行备份,即手动自动。 现在,_backup.filter 中指定的任何文件和文件夹已从计划启动或手动启动的将来备份中排除。

[!NOTE] 采用与还原定期备份相同的方式,还原站点的部分备份。 还原过程会执行正确的操作。

还原完整备份后,站点上的所有内容都被替换为备份中的所有内容。 如果文件在站点上但不在备份中,则会将其删除。 但是,还原部分备份时,位于其中一个方块列表目录或任何方块列表文件中的任何内容都保持不变。

如何存储备份

对应用进行了一次或多次备份后,可在存储帐户的“容器” 页中看到备份以及应用。 在存储帐户中,每个备份都由一个 .zip 文件和一个 .xml 文件组成,前者包含备份数据,后者包含 .zip 文件内容的清单。 如果想要在无需实际执行应用还原的情况下访问备份,则可以解压缩并浏览这些文件。

应用的数据库备份存储在 .zip 文件的根目录中。 对于 SQL 数据库,这是 BACPAC 文件(无文件扩展名),并且可以导入。 若要基于 BACPAC 导出创建 SQL 数据库,请参阅导入 BACPAC 文件以创建新的用户数据库

[!WARNING] 改动 websitebackups 容器中的任何文件都导致备份无效,进而无法还原。

使用脚本自动执行

可以在 Azure CLIAzure PowerShell 中使用脚本自动备份管理。

相关示例如下所示:

后续步骤

有关从备份中还原应用的信息,请参阅在 Azure 中还原应用

You can’t perform that action at this time.