备份管理

您可以随时使用Cloud Console中的​ Backup ​按钮或使用magento-cloud snapshot:create命令执行活动Starter环境的手动备份。

备份或​ 快照 ​是对环境数据的完整备份,包括来自正在运行的服务(MySQL数据库)的所有永久数据以及存储在装入卷(var、pub/media、app/etc)上的任何文件。 快照​ ​包含代码,因为代码已存储在基于Git的存储库中。 无法下载快照的副本。

备份/快照功能​ ​适用于Pro暂存和生产环境,默认情况下这些环境接收用于灾难恢复的常规备份。 有关详细信息,请参阅专业备份和灾难恢复。 与Pro暂存环境和生产环境中的自动实时备份不同,备份​ 不是 ​自动。 您有 ​责任手动创建备份或设置cron作业以定期创建Starter或Pro集成环境的备份。

创建手动备份

您可以从Cloud Console创建任何活动Starter环境和集成Pro环境的手动备份,或从Cloud CLI创建快照。 您必须具有环境的管理员角色

要使用Cloud Console ​创建任何Starter环境的备份:

  1. 登录到Cloud Console

  2. 从项目导航栏中选择一个环境。 环境必须处于活动状态。

  3. 在​ 备份 ​视图中,单击​ Backup。 此选项不适用于Pro环境。

    备份 {width="150"}

要使用Cloud Console ​创建集成环境的备份:

  1. 登录到Cloud Console
  2. 从项目导航栏中选择集成/开发环境。 环境必须处于活动状态。
  3. 选择右上角菜单中的​ Backup ​选项。 此选项适用于Starter和Pro环境。
  4. 单击​ Yes ​按钮。

要使用magento-cloud CLI创建快照

  1. 在本地工作站上,转到您的项目目录。

  2. 将环境分支签出到快照。

  3. 创建快照。

    code language-bash
    magento-cloud snapshot:create --live
    

    或者,您可以使用magento-cloud backup短命令。 --live选项使环境保持运行以避免停机。 要获取选项的完整列表,请输入magento-cloud snapshot:create --help

    示例响应:

    code language-none
    Creating a snapshot of develop-branch
    Waiting for the activity ID (User created a backup of develop-branch):
    
    Creating backup of develop-branch
    Created backup my-snapshot
    [============================] 45 secs (complete)
    Activity ID succeeded
    Snapshot name: my-snapshot
    
  4. 验证最新的快照。

    code language-bash
    magento-cloud snapshot:list
    

    该列表返回有关快照状态的信息:

    code language-none
    Snapshots on the project (project-id), environment develop-branch (type: development):
    +---------------------------+----------------------+------------+
    | Created                   | Snapshot ID          | Restorable |
    +---------------------------+----------------------+------------+
    | 2023-03-08T17:07:01+00:00 | my-snapshot          | true       |
    +---------------------------+----------------------+------------+
    

恢复手动备份

您必须具有环境的管理员访问权限。 您最多有​ 7天 ​到​ 还原 ​手动备份。 恢复备份不会更改当前Git分支的代码。 以这种方式恢复备份不适用于Pro暂存和生产环境;请参阅专业备份和灾难恢复

恢复时间因数据库的大小而异:

  • 大型数据库(200 GB以上)可能需要5小时
  • 中型数据库(150 GB)可能需要2.5小时
  • 小型数据库(60 GB)可能需要1小时
TIP
无需备份即可恢复:
  • 若要回滚到以前的代码或移除环境中添加的扩展,请参阅回滚代码
  • 要还原​_没有_​备份的不稳定环境,请参阅还原环境

要使用Cloud Console ​还原备份:

  1. 登录到Cloud Console

  2. 从项目导航栏中选择一个环境。

  3. 在​ 备份 ​视图中,从​ 存储 ​列表中选择备份。 备份功能​ ​适用于Pro环境。

  4. 更多 {width="32"}

    更多)菜单中,单击​ 还原

  5. 查看从备份信息还原,然后单击​ 是,还原

要使用Cloud CLI还原快照

  1. 在本地工作站上,转到您的项目目录。

  2. 签出要恢复的环境分支。

  3. 列出所有可用的快照。

    code language-bash
    magento-cloud snapshot:list
    

    该列表返回有关可用快照的信息:

    code language-none
    Snapshots on the project (project-id), environment develop-branch (type: development):
    +---------------------------+----------------------+------------+
    | Created                   | Snapshot ID          | Restorable |
    +---------------------------+----------------------+------------+
    | 2023-03-08T17:07:01+00:00 | my-snapshot          | true       |
    +---------------------------+----------------------+------------+
    
  4. 使用列表中的快照ID恢复快照。

    code language-bash
    magento-cloud snapshot:restore <snapshot-id>
    

恢复灾难恢复快照

要在Pro暂存和生产环境中还原灾难恢复快照,请直接从服务器导入数据库转储。

回滚代码

备份和快照​ ​包含您的代码副本。 您的代码已存储在基于Git的存储库中,因此您可以使用基于Git的命令来回滚(或还原)代码。 例如,使用git log --oneline滚动浏览以前的提交;然后使用git revert从特定提交还原代码。

此外,您可以选择将代码存储在​ 非活动 ​分支中。 使用git命令而不是使用magento-cloud命令来创建分支。 请参阅Cloud CLI主题中的关于Git命令

recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26