Command-line upgrade
Command-line upgrade
You can upgrade Magento from the command line if you installed the software using any of the following:
- Downloaded the metapackage using
composer create-project
- Installed the compressed archive
- If you cloned the Magento 2 GitHub repository, you cannot use this method to upgrade; instead, see Update the Magento application.
- If you configured Magento use use
pub
as its root directory, see the next section. - If you're upgrading to Magento 2.1 (including a Release Candidate) from Magento 2.0.7 or earlier and you installed sample data, see Command-line upgrade to Magento 2.1 with sample data instead of this topic.
- If you're upgrading to version 2.1, see Upgrade to Magento version 2.1 (June 22, 2016).
- If you're upgrading from Magento Open Source or Magento Commerce 2.0.0 or 2.0.1, you must first perform the tasks discussed in the Technical Bulletin (1/28/16).
Prerequisite: pub
directory root
This section applies to you only if you set the Magento root directory to <your Magento install dir>/pub
. If you did not do this, skip this section and continue with the next section.
-
For the upgrade, create another subdomain or docroot that uses the Magento installation directory as its root.
Run the System Upgrade utility using that subdomain.
-
Use the following procedure to upgrade Magento using the command line.
Put your store in maintenance mode
To prevent access to your store while it’s being upgraded, put your store in maintenance mode.
You can optionally create a custom maintenance mode page.
- Log in to your Magento server as, or switch to, the Magento file system owner.
-
Enter the following command:
php <your Magento install dir>/bin/magento maintenance:enable
For additional options, see Enable or disable maintenance mode.
Upgrade using the command line
- Log in to your Magento server as, or switch to, the Magento file system owner.
-
Change to the directory in which you installed the Magento software.
For example,
cd /var/www/html/magento2
-
Enter the following commands in the order shown:
composer require <product> <version> --no-update composer update
For example, to upgrade to Magento Open Source version 2.0.13, enter:
composer require magento/product-community-edition 2.0.13 --no-update composer update
To upgrade to Magento EE version 2.0.13, enter:
composer require magento/product-enterprise-edition 2.0.13 --no-update composer update
If an error displays about a missing
.gitignore
files, see the Technical Bulletin (1/28/16). - If prompted, enter your authentication keys.
-
Manually clear
var
subdirectories:rm -rf <Magento install dir>/var/cache/* rm -rf <Magento install dir>/var/page_cache/* rm -rf <Magento install dir>/var/generation/*
If you use a cache storage other than filesystem (e.g., Redis, Memcached, etc.) you need to manually clear the cache there too.
-
Update the database schema and data:
php bin/magento setup:upgrade
-
Put your storefront online (that is, cancel maintenance mode):
php bin/magento maintenance:disable
-
Restart Varnish if you use it for page caching.
service varnish restart
-
Access your storefront.
The following error might display:
We're sorry, an error has occurred while generating this email.
If so, perform the following tasks:
- Reset file system ownership and permissions as a user with
root
privileges. -
Clear the following directories and try again:
<your Magento install dir>/var/cache <your Magento install dir>/var/page_cache <your Magento install dir>/var/generation
- Reset file system ownership and permissions as a user with