还原删除的 Azure Database for MariaDB 服务器

重要

Azure Database for MariaDB 已列入停用计划。 强烈建议迁移到 Azure Database for MySQL。 有关迁移到 Azure Database for MySQL 的详细信息,请参阅 Azure Database for MariaDB 发生了什么情况?

删除服务器后,数据库服务器备份最多可在服务中保留五天。 只能从服务器最初所在的 Azure 订阅访问和还原数据库备份。 按照以下建议步骤可在删除服务器后 5 天内恢复删除的 MariaDB 服务器资源。 仅当服务器的备份仍可用且未从系统中删除时,建议的步骤才适用。

先决条件

若要还原已删除的 Azure Database for MariaDB 服务器,需要以下信息:

  • 托管原始服务器的 Azure 订阅名称
  • 服务器创建位置

还原步骤

  1. 在 Azure 门户中,从“监视”页转到活动日志

  2. 在活动日志中,选择“添加筛选器”(如图所示),并设置以下筛选器

    • 订阅 = 托管已删除服务器的订阅
    • 资源类型 = Azure Database for MariaDB 服务器 (Microsoft.DBForMariaDB/servers)
    • 操作 = 删除 MariaDB 服务器 (Microsoft.DBForMariaDB/servers/delete)

    Activity log filtered for delete MariaDB server operation

  3. 双击选择“删除 MySQL 服务器”事件,然后选择“JSON”选项卡,并记下 JSON 输出中的“resourceId”和“submissionTimestamp”属性。 resourceId 的格式如下:/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TargetResourceGroup/providers/Microsoft.DBForMariaDB/servers/deletedserver。

  4. 使用 REST API

  5. 以下是请求正文部分:

    {
        "location": "Dropped Server Location",  
        "properties": 
            {
                "restorePointInTime": "submissionTimestamp - 15 minutes",
                "createMode": "PointInTimeRestore",
                "sourceServerId": "resourceId"
            }
    }
    
  6. 替换上述请求正文中的以下值:

    • “Dropped Server Location”,替换为最初创建已删除的服务器的 Azure 区域
    • “submissionTimestamp”和“resourceId”,替换为在步骤 3 中获取的值。
    • 对于“restorePointInTime”,请指定将“submissionTimestamp”减去 15 分钟后得到的值,以确保命令不出错。
  7. 如果看到响应代码 201 或 202,则表示已成功提交还原请求。

  8. 服务器创建可能需要一些时间,具体取决于原始服务器上预配的数据库大小和计算资源。 通过在活动日志中筛选以下信息,可以监视还原状态

    • 订阅 = 你的订阅
    • 资源类型 = Azure Database for MariaDB 服务器 (Microsoft.DBForMariaDB/servers)
    • 操作 = 更新 MariaDB 服务器创建

后续步骤

  • 如果在五天内尝试还原服务器,但在准确执行前述步骤后仍收到错误,请开启帮助支持事件。 如果在五天后尝试还原已删除的服务器,则会因为找不到备份文件而出错。 在这种情况下,请勿开启支持票证。 如果备份已从系统中删除,则支持团队无法提供任何帮助。
  • 为了防止意外删除服务器,强烈建议使用资源锁