在 Azure 应用程序服务中存储数据库备份文件的最佳方式?

Best way to store database backup files in azure app service?

我在 Azure 应用程序服务上有一个应用程序 运行,我创建了一些可以备份数据库的批处理脚本(一些其他服务器上的数据库 运行,即第 3 方云数据库服务 -不是天蓝色)。问题是什么是最好的 way/place 将这些备份文件存储在 Azure 应用程序服务中。在我的源目录中创建一个名为 "Backup" 的文件夹会在每次部署代码时覆盖这些备份。以下是一些关注点

  1. 备份文件的安全性
  2. 只要我想恢复备份文件,应该很容易下载
  3. 备份文件不应在部署完成或应用槽切换时被覆盖或丢失。

我正在考虑将文件存储在 %HOME% 目录中,这是个好主意吗?

此外,Azure 应用服务计划是否有任何大小或存储限制?

我建议您将备份存储在外部 Azure 应用程序服务中。以下是在应用服务中存储文件的一些问题:

  • 您无法轻松地将应用从一个应用服务移动到另一个应用服务。
  • 应用服务有一些 storage limitations:免费和共享网站获得 1GB space,基本网站获得 10GB,标准网站获得 50GB。
  • 在您的应用之外访问备份并不容易。

相反,Azure Blob Storage 是存储大型文件的理想场所。

关于您的疑虑:

1) 可以将 Azure Blob 存储容器设为私有,这样只有知道密钥才能访问它。

2) 有多种方法可以访问存储在 Azure Blob 存储中的备份:

3) 在 Blob 存储中存储备份时,部署槽不会影响备份。

Blob 存储还提供 "Archive" tier,非常适合存储很少使用的备份。