./bin/console suitecrm:app:setup-legacy-migration
This guide applies to migrations to SuiteCRM 8.7.0 and later. If you are migrating to a version between 8.2.0 and 8.6.x, see the Migration guide for 8.2.0–8.6.x.
Only run the migration if your SuiteCRM 7.x instance is already on the latest 7.14.x version.
Download the SuiteCRM 8 migration package for your target version (e.g. 8.7.0 Upgrade from 7.14.x) from the SuiteCRM releases page.
Unzip the package contents to your SuiteCRM 8 destination folder, e.g. /var/www/<SuiteCRM8-folder>.
Re-set permissions if needed.
Copy your SuiteCRM 7.14.x instance folder into the public folder of the SuiteCRM 8 destination, e.g. /var/www/<SuiteCRM8-folder>/public/<SuiteCRM7-folder>.
Rename the copied folder to legacy, giving you /var/www/<SuiteCRM8-folder>/public/legacy.
Re-set permissions if needed.
As of SuiteCRM 8.7.x, some folders and files must be updated manually before running the migration scripts.
Replace /var/www/<SuiteCRM8-folder>/public/legacy/vendor with the vendor folder from tmp/package/upgrade/legacy-migration/vendor.
Replace /var/www/<SuiteCRM8-folder>/public/legacy/include with the include folder from tmp/package/upgrade/legacy-migration/include.
Replace /var/www/<SuiteCRM8-folder>/public/legacy/deprecated.php with the deprecated.php file from tmp/package/upgrade/deprecated.php.
Set permissions so that the command-line user has read and write access to the instance files.
From your SuiteCRM 8 instance root, run:
./bin/console suitecrm:app:setup-legacy-migration
When prompted, update the following values in the legacy config:
session_dir — set to ''. You can reconfigure this after migration. See Session Configuration.
site_url — set to the address you are using to access this SuiteCRM 8 instance. If your vhost does not point directly to the public directory, append /public (e.g. https://your-host/crm/public).
When prompted, update the RewriteBase in the legacy .htaccess:
If your vhost points directly to the public directory: set RewriteBase /legacy
Otherwise, prepend the path to the public folder (e.g. RewriteBase /crm/public/legacy)
From your SuiteCRM 8 instance root:
./bin/console suitecrm:app:upgrade -t SuiteCRM-8.7.0
Replace SuiteCRM-8.7.0 with the name of your downloaded package.
If your instance has customisations, ensure your custom code complies with the minimum PHP version listed in the Compatibility Matrix.
./bin/console suitecrm:app:upgrade-finalize
See Metadata Merge Modes for options to control how view metadata customisations are handled during this step.
If you ran the migration commands as a different user from the web server user (e.g. as root), re-set permissions so that the web server can read and write the files.
If you are using opcache, apcu, or other PHP caches, restart your web server to clear the cache.
Once all steps are complete, you should be able to log into your SuiteCRM 8 instance.
Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.