I want to upgrade my magento 2.1.13 to magento 2.3.0. But i don't know how to do it. I try to run "composer require magento/product-community-edition 2.3 --no-update" in command but it show a bug. http://prntscr.com/ls86ud
5 Answers
composer require magento/product-community-edition 2.3.0 --no-update;
composer update;
rm -rf var/di var/generation;
php bin/magento cache:flush;
php bin/magento setup:upgrade;
php bin/magento setup:di:compile;
php bin/magento indexer:reindex;
After upgrade, check your Magento version with the following command:
php bin/magento --version
-
-
@chethan is it possible to upgrade from 2.1.13 to directly 2.3.0?? Because M 2.1.13 is not supported PHP 7.1.x and M 2.3.0 is not supported below 7.1.3. Sep 9, 2019 at 6:16
-
@chirag you have to upgrade magento version 2.1.14 first than try to upgrade to 3.3.x . Dec 4, 2019 at 6:09
As per your screenshot Magento 2.3 is not support php7.0.31. You can also check system requirement see following link.
https://devdocs.magento.com/guides/v2.3/install-gde/system-requirements-tech.html
Make you sure your php version compatible with 2.3.0 then you will move the next step.
https://devdocs.magento.com/guides/v2.3/install-gde/system-requirements-tech.html
Upgrade using the command line Magento 2.3,
Prerequisites:
You must have PHP 7.2 installed for Magento 2.3 (PHP 7.1.3+ is also supported)
First Take all the process in staging server before going to live, so you can assure the status of the latest version is working fine in your staging server.
For Upgrade Magento to Latest Magento 2.3 version, follow below steps:
— Backup the existing composer.json
file from a root in the Magento installation directory.
Run from Command line below commands,
1. First Command
composer require magento/product-community-edition=2.3.0 --no-update
2. Second Command
composer require –dev phpunit/phpunit:~6.2.0
friendsofphp/php-cs-fixer:~2.10.1 lusitanian/oauth:~0.8.10
pdepend/pdepend:2.5.2 sebastian/phpcpd:~3.0.0
squizlabs/php_codesniffer:3.2.2 –no-update
3. Update autoload from composer.json
Open composer.json and edit the “autoload“: “psr-4” section to add new dependency after “Magento\”: “app/code/Magento/” line.
“Zend\Mvc\Controller\”: “setup/src/Zend/Mvc/Controller/”
Your new composer.json look like below now, "autoload": { "psr-4": { "Magento\Framework\": "lib/internal/Magento/Framework/", "Magento\Setup\": "setup/src/Magento/Setup/", "Magento\": "app/code/Magento/", "Zend\Mvc\Controller\": "setup/src/Zend/Mvc/Controller/" }, .... }
4. Final Command
composer update
After run above command, Takes some time to upload new extension and packages.
Once Successfully updated to Magento 2.3 you need to run below command to register new module in Magento.
Run from Magento Root Instance
php bin/magento setup:upgrade php bin/magento
setup:static-content:deploy -f php bin/magento setup:di:compile php
bin/magento indexer:reindex php bin/magento cache:flush
Now you can check the backend of your site, You got new version installed. You can see your version from backend at right bottom side with status like Magento ver. 2.3.0
You can check the new feature of Magento 2.3 from the link, Latest Feature of Magento 2.3
After upgrade from older to latest version 2.3, you have default all the Multi-Store Inventory(MSI) module are disabled. If you want to use MSI feature for your site you need to enable all the inventory module from app/etc/config.php file manually and after enable you to need to run upgrade command.
To enable all the Multistore Inventory Module, You need to run below commands from the root path of your Magento instance,
php bin/magento module:enable --clear-static-content Magento_Inventory Magento_InventoryAdminUi Magento_InventoryApi Magento_InventoryBundleProduct Magento_InventoryBundleProductAdminUi Magento_InventoryCatalog Magento_InventorySales Magento_InventoryCatalogAdminUi Magento_InventoryCatalogApi Magento_InventoryCatalogSearch Magento_InventoryConfigurableProduct Magento_InventoryConfigurableProductAdminUi Magento_InventoryConfigurableProductIndexer Magento_InventoryConfiguration Magento_InventoryConfigurationApi Magento_InventoryGroupedProduct Magento_InventoryGroupedProductAdminUi Magento_InventoryGroupedProductIndexer Magento_InventoryImportExport Magento_InventoryIndexer Magento_InventoryLowQuantityNotification Magento_InventoryLowQuantityNotificationAdminUi Magento_InventoryLowQuantityNotificationApi Magento_InventoryMultiDimensionalIndexerApi Magento_InventoryProductAlert Magento_InventoryReservations Magento_InventoryReservationsApi Magento_InventoryCache Magento_InventorySalesAdminUi Magento_InventorySalesApi Magento_InventorySalesFrontendUi Magento_InventoryShipping Magento_Shipping Magento_InventorySourceDeductionApi Magento_InventorySourceSelection Magento_InventorySourceSelectionApi Magento_InventoryShippingAdminUi
-
how do I update the DB with live site while testing 2.3 upgrade on a different server?– rogerMay 4, 2019 at 23:48
-
Upgrade it from 2.1.X to 2.2.X and then 2.2.X to 2.3.X
Check these out
https://devdocs.magento.com/guides/v2.3/cloud/project/project-upgrade-parent.html
https://devdocs.magento.com/guides/v2.3/cloud/project/ece-tools-upgrade-project.html