如何将Magento 2.0.x从一台服务器迁移到另一台服务器?


12

我们有当地的发展环境。我们需要从本地服务器迁移到Dev服务器以进行集成。是否有关于如何将Magento从一台服务器迁移到另一台服务器的详细迁移指南?如何处理数据库记录和用户生成的内容?

Answers:


14

有一个快速参考:

基本上,我们需要在app / etc / env.php中更改连接配置,在其中更改url配置,core_config_data并设置源文件的权限。

--AFTER在导入备份数据库,我们需要改变web/unsecure/base_urlweb/secure/base_url路径在core_config_data表中。我们可以检查:

SELECT * FROM core_config_data a WHERE a.`path` LIKE '%web/unsecure/base_url%'
UNION 
SELECT * FROM core_config_data a WHERE a.`path` LIKE '%web/secure/base_url%'

在此处输入图片说明

将这些值更改为您自己的网址。

-应该更改主机,dbname,用户名,pwd app / etc / env.php

  array (
    'table_prefix' => '',
    'connection' => 
    array (
      'default' => 
      array (
        'host' => 'localhost',
        'dbname' => 'mage21',
        'username' => 'root',
        'password' => '',
        'active' => '1',
      ),
    ),
  ),

-更改文件的权限和所有者:

http://devdocs.magento.com/guides/v2.1/install-gde/prereq/file-sys-perms-over.html

http://devdocs.magento.com/guides/v2.1/config-guide/prod/prod_file-sys-perms.html

-可以运行静态内容部署 php bin/magento setup:static-content:deploy

--Remember清除Magento的缓存并删除var/generationvar/composer_homevar/view_preprocessed

这里有一个很好的文档: http : //devdocs.magento.com/guides/v2.0/config-guide/prod/prod_deploy.html

[编辑]

从Magento 2.2版本开始,有许多改进:http : //devdocs.magento.com/guides/v2.2/config-guide/deployment/


1
如果对您有帮助,请接受答案,以便对其他社区成员有所帮助。只是注意到您没有接受个人资料中的任何答案
Keyur Shah

2

首先,首先要看到数据库已导出到新服务器。

然后将magento根文件传输到新服务器。

在根文件夹中,更改为新数据库。您可以通过转至app / etc / env.php并更改数据库阵列信息来做到这一点。将主机,dbname,用户名和密码更改为新的。

然后,您将magento数据库core_config_data中的安全和不安全URL更改为新IP,请不要忘记IP后的“ /”。

使新文件的Web用户所有者(对于apache是​​:sudo chown -R www-data / var / www / magentoroot)。设置正确的文件和文件夹权限。

最后,通过运行bin / magento cache:clean和bin / magento cache:flush清除缓存。


谢谢!有用。我找到了另一个很好的参考:devdocs.magento.com/guides/v2.0/config-guide/prod/…–
Paul

0

也可以考虑在目标平台上设置您可能在源平台上创建的任何cron作业,并安装可能必须安装的任何PHP扩展,例如用于memcached。

如果您已经建立了测试框架,那么您将需要编辑:

dev / tests / functional / etc / config.xml

dev / tests / functional / phpunit.xml

您的sitemap / sitemap.xml也将不正确。我不太确定cron作业何时/是否可以更新。否则,请在Marketing-> SEO&Search-> Site Map中手动更新

如果启用了2FA,则需要进行一些更改。我没有以正确的方式执行此操作,因此我最终禁用了2FA模块,然后从头开始。但我想重置身份验证器可能就足够了:

php bin/magento msp:security:tfa:reset <username> <provider>

参见https://docs.magento.com/m2/ee/user_guide/stores/security-two-factor-authentication-manage.html

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.