Magento is a top-notch E-commerce platform to build a fully functional e-commerce store. Over 250,000+ websites are using Magento as their e-commerce platform. But only 26% of all Magento sites are transformed to Magento 2.
Magento 2 is the superior version with advanced features and capabilities compared to Magento 1. Check this Magento tutorial for beginners to get an in-depth understanding of all of the platform features. Magento 1 has ended its support since June 2020 which means there will not be any security and upgrade release after the Magento 1 End of Life. All the Magento merchants are recommended to move their store from Magento 1 to Magento 2.
Due to the complications in migration, many Magento merchants are hesitating to make the move. But the potentiality of Magento 2 is far more than the complexities. Running with Magento 1 will make your website slow and increase the risk of cyberattacks.
Hence, I bring to you a comprehensive guide on Magento 2 Migration. This will help you smoothly migrate your store to Magento 2. You can also avail Magento 2 Migration Service to eliminate doing it yourself and getting into trouble.
For now, let’s begin the Magento 2 Migration steps.
Contents
Magento 2 Migration Process
Before beginning the migration, I would recommend taking a backup of your Magento 1 store to avoid any data loss.
Prerequisites
Software Requirements
Magento will not run properly on the outdated software. So you need to make sure you have the latest software installed to run your Magento store smoothly.
Find the detailed information about software requirements for Magento 2 Migration. Click here
Data Migration Tool Requirements
Data Migration Tool is a CLI that helps in migrating data from Magento 1 to Magento 2. Later in this article, I will explain data migration through the Data Migration Tool. But for now, you need some prerequisites to use the data migration tool.
You need the latest version of the composer downloaded in your system before installing the Data Migration Tool.
Step 1: Install Magento
Install the latest version of Magento into your local host or server.
Step 2: Install Data Migration Tool
Run the following commands
1 2 |
composer config repositories.magento composer https://repo.magento.com composer require magento/data-migration-tool:2.4.3 |
Note: In the second command, 2.4.3 is the version of the Magento 2 platform. You need to enter the version installed in your system.
Now the system will ask for your authentication keys
From your Magento Marketplace Account, select Access Keys under the My Products menu.
Create a New Access Key or use an existing one. The Public Key will be your Username and the Private Key will be your Password.
Once the information is added, you will be able to successfully install the Data Migration Tool.
Step 3: Configure Data Migration Tool
Firstly, find the current version of your Magento 1.
Then go to the Magento 2 root folder and find the following directory
vendor/magento/data-migration-tool/etc/opensource-to-opensource/<current_magento1_version>/config.xml
Say if your current Magento 1 version is 1.9.2.3 then you have to go through
vendor/magento/data-migration-tool/etc/opensource-to-opensource/1.9.2.3/config.xml
Now open config.xml and find the code block below:
1 2 3 4 5 6 |
<source> <database host="localhost" name="your_m1_db" user="your_user" password="your_password" /> </source> <destination> <database host="localhost" name="your_m2_db" user="your_user" password="your_password" /> </destination> |
Change crypt key
Find below code in your config.xml
1 |
<crypt_key><![CDATA[CRYPT_KEY]]></crypt_key> |
You can find your M1 crypt_key within the app/etc/local.xml file inside your Magento 1 site’s root folder.
1 2 3 4 5 6 7 8 |
<config> <global> <install> <date><![CDATA[Sun, 24 Jan 2016 13:58:47 +0000]]></date> </install> <crypt> <key><![CDATA[CRYPT_KEY_OF_M1_SITE]]></key> </crypt> |
Copy this CRYPT_KEY_OF_M1_SITE to Magento 2 config.xml crypt key.
Step 4: Settings Migration
The Settings mode of the Data Migration Tool will move store and system configuration settings from Magento 1 to Magento 2.
Run the below command in your terminal to perform Settings Migration,
1 |
php bin/magento migrate:settings -a vendor/magento/data-migration-tool/etc/opensource-to-opensource/your_magento1_version/config.xml |
Step 5: Data Migration
The Data mode of the Data Migration Tool will move data from Magento 1 database to Magento 2 database.
Run the below command in your terminal to perform Data Migration,
1 |
php bin/magento migrate:data -a vendor/magento/data-migration-tool/etc/opensource-to-opensource/your_magento1_version/config.xml |
Step 6: Delta Migration
The Delta mode of Data Migration Tool migrates additional data such as new orders and catalog data that may have changed since the settings and data migration performed previously.
Run the below command in your terminal to perform Delta Migration,
1 |
php bin/magento migrate:delta -a vendor/magento/data-migration-tool/etc/opensource-to-opensource/your_magento1_version/config.xml |
Media Files Migration
While performing the Magento 2 Migration, some things need to be migrated manually. Media files need to be migrated manually.
Migration of Media Files in Database
Follow the below steps to migrate media files stored in your database. Make sure you perform these steps before the data migration.
- Log in to your Magento 1 Admin Panel.
- Navigate to System > Configuration > ADVANCED > System.
- From the right panel, expand Storage Configuration for Media.
- Select Media Storage and Select Media Database.
- Click Synchronize.
Repeat the above steps in your Magento 2 Admin Panel as well.
Migration of Media Files in the File System
All the media files including images for product, category, WYSIWYG editor, etc will be copied manually.
Copy from the below path
<Magento 1 install dir>/media
Paste it to the below path
<Magento 2 install dir>/pub/media
Note – Do not copy .htaccess files from Magento 1 media folder. Magento 2 has its own .htaccess files that need to be protected.
Theme Migration
You cannot simply copy the layout files from Magento 1 and move them to Magento 2 as the XML structures are different for both.
It is recommended to use a prebuilt theme provided by Magento 2. And if you want to carry along the Magento 1 theme, Hire a skilled Magento Developer.
Extension Migration
Magento 1 modules will not work with Magento 2. For that, you need to do the work manually. Make a list of all the extensions you want for Magento 2. Hire a Magento Developer that will help you make the Extensions compatible for Magento 2.
Test, Check, and Verify
After you are done with the migration process, you need to test your Magento 2 store thoroughly. Take a note of the below points at the stage of testing:
- Make a list of all the features of your Magento 1 and check them in Magento 2.
- Ensure that the payment methods are working and money can be received.
- Make sure all the shipping methods work as they are supposed to be.
- Check the products, categories, orders, customers.
- Test your Magento 2 website from the user’s viewpoint.
- Give your website to others for testing.
Testing is very crucial as at the end of the day you want an error-free website that increases user experience. User hates websites that run incompetently.
Wrap Up:
Migration from Magento 1 to Magento 2 is no easy task. It requires planning and attention to every detail. After migration, keep a report of the website traffic. Check the speed of your Magento 2 store. Quickly Migrate your Magento Store with zero downtime.