Magento2升级指南

释放双眼,带上耳机,听听看~!
  • 切换到维护模式以防止在升级过程中访问存储区。
    bin/magento maintenance:enable
    
  • 在异步进程(如消息队列使用者)运行时启动升级过程可能会导致数据损坏。 要防止数据损坏,请禁用所有cron作业。
    bin/magento cron:remove
    
  • 手动启动所有消息队列使用者,以确保使用所有消息。
    bin/magento cron:run --group=consumers
    

    等待cron作业完成。 您可以使用进程查看器或多次运行ps aux | grep 'bin/magento queue'命令来监视作业的状态,直到所有进程都完成为止。

  • 创建composer.json文件的备份。
    cp composer.json composer.json.bak
    
  • 根据您的需求添加或删除特定包。例如,如果您要从Magento Open Source升级到Adobe Commerce,请删除Magento Open Source包。
    composer remove magento/product-community-edition --no-update
    

    您还可以升级示例数据。

    composer require <sample data module-1>:<version> ... <sample data module-n>:<version> --no-update
    
    • Magento Open Source:
      composer require magento/module-bundle-sample-data:100.4.* magento/module-widget-sample-data:100.4.* magento/module-theme-sample-data:100.4.* magento/module-catalog-sample-data:100.4.* magento/module-customer-sample-data:100.4.* magento/module-cms-sample-data:100.4.*  magento/module-catalog-rule-sample-data:100.4.* magento/module-sales-rule-sample-data:100.4.* magento/module-review-sample-data:100.4.* magento/module-tax-sample-data:100.4.* magento/module-sales-sample-data:100.4.* magento/module-grouped-product-sample-data:100.4.* magento/module-downloadable-sample-data:100.4.* magento/module-msrp-sample-data:100.4.* magento/module-configurable-sample-data:100.4.* magento/module-product-links-sample-data:100.4.* magento/module-wishlist-sample-data:100.4.* magento/module-swatches-sample-data:100.4.* magento/sample-data-media:100.4.* magento/module-offline-shipping-sample-data:100.4.* --no-update
      
  • 使用以下composer require-commerce命令语法升级实例:
    composer require-commerce magento/<product> <version> --no-update [--interactive-root-conflicts] [--force-root-updates] [--help]
    

    命令选项包括:

    • <product> — (必需)要升级的包。 对于内部部署,此值必须为product-community-editionproduct-enterprise-edition
    • <version> — (必需)要升级到的Adobe Commerce版本。 例如,2.4.3
    • --no-update — (必需)禁用依赖项的自动更新。
    • --interactive-root-conflicts — (可选)允许您以交互方式查看和更新以前版本的任何过期值,或与要升级到的版本不匹配的自定义值。
    • --force-root-updates — (可选)使用预期的Commerce值覆盖所有冲突的自定义值。
    • --help — (可选)提供有关插件的使用情况详细信息。

    如果未指定--interactive-root-conflicts--force-root-updates,该命令将保留冲突的现有值并显示一条警告消息。 要了解有关该插件的更多信息,请参阅插件使用自述文件。

  • 更新依赖关系。
    composer update
    

示例 — 列出可用版本

要查看可用2.4.x版本的完整列表,请执行以下操作:

Magento Open Source

composer show magento/product-community-edition 2.4.* --available | grep -m 1 versions

示例 — 质量修补程序

质量修补程序主要包含功能性​  ​安全修补程序。 但是,它们有时可以包含向后兼容的新功能。 使用Composer下载质量修补程序。

Magento Open Source

composer require-commerce magento/product-community-edition 2.4.6 --no-update

示例 — 安全修补程序

安全修补程序仅包含安全修补程序。 它们旨在使升级过程更快、更轻松。 安全修补程序使用Composer命名约定2.4.x-px

Magento Open Source

composer require-commerce magento/product-community-edition 2.4.6-p3 --no-update

更新元数据

  1. 根据需要更新composer.json文件中的"name""version""description"字段。
    注意
    更新composer.json文件中的元数据完全是表面性的,无法正常使用。
  2. 应用更新。
    composer update
    
  3. 清除var/generated/子目录:
    rm -rf var/cache/*
    
    rm -rf var/page_cache/*
    
    rm -rf generated/code/*
    
    注意
    如果您使用文件系统以外的缓存存储,如Redis或Memcached,则也必须手动清除其中的缓存。
  4. 更新数据库架构和数据。
    bin/magento setup:upgrade
    
  5. 禁用维护模式。
    bin/magento maintenance:disable
    
  6. (可选) ​重新启动Varnish。如果将Varnish用于页面缓存,请重新启动它:
    service varnish restart
    

检查您的工作

要检查升级是否成功,请在Web浏览器中打开店面URL。 如果升级不成功,您的店面将无法正确加载。

如果应用程序失败并出现We're sorry, an error has occurred while generating this email.错误:

  1. 将文件系统所有权和权限重置为具有root权限的用户。
  2. 清除以下目录:
    • var/cache/
    • var/page_cache/
    • generated/code/
  3. 再次在Web浏览器中查看您的店面。
声明:本站部分文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。部分文章由注册用户发布,版权归原作者所有,本社区不拥有其著作权,亦不承担相应的法律责任,如你发现本社区有涉嫌抄袭的内容,侵犯了原著者的合法权益,可联系我们进行处理。

给TA赞助
共{{data.count}}人
人已赞助
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索