11 Steps for upgrading to 9
- Posted in:
- Sitecore 9
This article is aiming to provide a comprehensive guideline for whom is interested in upgrading their Sitecore instance (version 8) to Sitecore 9.
[Step 1] Preparing to Upgrade from Sitecore XP 8.1 – Sitecore XP 8.2.7
Tasks | Steps |
Restore Deleted Marketing Taxonomies and Marketing Definitions | If you are using the Sitecore Experience Database (xDB) functionality, (when the Xdb.enabled setting is set to true, and xDB is enabled in the license), before you install the upgrade package, you must restore any of the standard marketing taxonomies and marketing definitions that you have deleted from your Sitecore installation. To restore deleted marketing taxonomy items:
To restore deleted marketing definition items:
|
Validate the Names of the Marketing Definition Items | If you are using the Sitecore Experience Database (xDB) functionality or if you are using the tracking functionality (the Xdb.Tracking.Enabled setting is set to true), you must validate the names of the marketing definition items and address any errors. To validate the names of the marketing definition items:
|
Disable the Email Experience Manager Module | To disable the Email Experience Manager module:
|
Upgrade the Databases | To upgrade the databases:
|
Deploy the New Databases | To use Email Experience Manager (EXM), you must add the new connection strings To enable EXM: In the \App_Config folder, in the ConnectionStrings.config file, add the connection string for the Sitecore.Exm.master database. For example: <add name="exm.master" connectionString="user id=user;password=password;Data Source=(server);Database=Sitecore.Exm.master" /> Add the following three connection strings:
The keys must be represented in hexadecimal format by 64 characters and you can only use the symbols 0-9 and A-F. <add name="EXM.CryptographicKey" connectionString="E040C938FC9E4EBC3E93330B0F7837F284207B8180DB64CB5B6ABEB1AFBF6F5B" /> NOTE: The exm.master connection string is only required on content management servers. |
[Step 2]Final Preparations for Upgrading from All Versions
Tasks | Steps |
Content Testing | Before you upgrade your Sitecore installation, you must stop any content tests that are currently running. This prevents the start date of the tests from being overwritten with the upgrade date |
Disable the Web Forms for Marketers Module | To disable the Web Forms for Marketers module: Disable the following Web Forms for Marketers configuration files by adding .disabled to the file extension.
SXA
Important |
Enable Email Experience Manager | To use Email Experience Manager (EXM), you must add the new connection strings To enable EXM: In the \App_Config folder, in the ConnectionStrings.config file, add the connection string for the Sitecore.Exm.master database. For example: <add name="exm.master" connectionString="user id=user;password=password;Data Source=(server);Database=Sitecore.Exm.master" /> Add the following three connection strings:
The keys must be represented in hexadecimal format by 64 characters and you can only use the symbols 0-9 and A-F. <add name="EXM.CryptographicKey" connectionString="E040C938FC9E4EBC3E93330B0F7837F284207B8180DB64CB5B6ABEB1AFBF6F5B" /> NOTE: The exm.master connection string is only required on content management servers. |
Indexing and Performance | Indexing is performed during the upgrade. Depending on the version of Sitecore you are upgrading from, a number of items can be changed by the update, and this can cause the upgrade to take a long time. To speed up the upgrade process, you can disable indexing by removing the following processor from the Sitecore.ContentSearch.config file: <handler type="Sitecore.ContentSearch.Events.PackagingEventHandler, Sitecore.ContentSearch" |
Disable the Sitecore Experience Database | To disable xDB:
Important |
[Step 3] Install the Upgrade Package
Tasks | Steps |
Use the Update Installation Wizard to Install the Upgrade Package |
|
The Upgrade Package Analysis | While the majority of the actions ensure the best upgrade experience, if the analysis identifies custom code that must be recompiled or configuration file conflicts that must be resolved, you must address these manually
|
Resolve Configuration File Conflicts | Resolve all conflicts in your solution |
[Step 4] Configure Sitecore
Tasks | Steps |
Review Custom Changes in Configuration Files | The patch files are created and stored in the same folder as the original configuration files. They are saved in the following file format: .patch.config.disabled. To facilitate traceability and debugging, the wizard also saves the original file with your customizations in the following file format: .custom.config.disabled. For example, if you customized the Sitecore.Mvc.config file, during the analysis, the Update Installation Wizard creates:
A patch file with your customizations.
A backup of the customized configuration file. Both files are disabled To enable the patch files with the customizations that were generated by the Update Installation Wizard, remove the .disabled extension from the file name. |
Specify the Server Role and the Search Provider | To specify the server role:
To specify the search provider:
The following values are supported:
The default value is Lucene. |
Remove Deprecated Indexes | You must remove the following deprecated indexes from your search provider:
To remove the indexes in Lucene:
|
[Step 5] Update Solr
Tasks | Steps |
Specify the Solr connecting string | In Sitecore XP 9.0 Update 2, the Solr connection string was moved to the ConnectionStrings.config file. To continue using Solr after you upgrade to Sitecore XP 9.0 Update-2, you must:
|
Configure Managed Schema | Since Sitecore XP 9.0, Sitecore supports the Managed Schema approach. Therefore, it is no longer necessary to set up Solr Server to run the Classic Schema. |
Populate the Solr Managed Schema |
|
[Step 6] Install xConnect
Tasks | Steps |
Install and Configure Sitecore xConnect |
|
Configure xConnect |
3. Adding the following connections into Sitecore connectionStrings.config
|
[Step 7] Post-upgrade Steps
Tasks | Steps |
Tasks Steps Project-EE General Maintenance |
|
xDB Maintenance | To enable xDB and Experience Analytics:
Redeploy the Marketing Definitions To redeploy the marketing definitions:
|
Upgrading from Sitecore XP 8.1 - Sitecore XP 8.2.7 | Delete Unwanted Marketing Definitions and Marketing Taxonomies Now that the upgrade and installation is complete, you can delete these same marketing definitions and To see a list of the marketing definitions that were previously deleted:
RestoredDefinitions_{timestamp}.dat file. To see a list of the marketing taxonomies that were previously deleted:
RestoredTaxonomies_{timestamp}.dat file. To delete the unwanted marketing definition items from the Master database:
To delete unwanted marketing taxonomy items from the Master database
Update Customizations for Reporting In Sitecore XP 9.0, the rule set has been redesigned. If you are upgrading to If you customized Experience Analytics or created any custom segments, reports, or dashboards, you must update these. If you have created any custom maps in the Path Analyzer, you must also update them Upgrade Experience Analytics In Sitecore 9.0 or later, some subsystems that affect Experience Analytics have been changed. If you are
Upgrade Path Analyzer In the Path Analyzer, you must reconfigure any custom maps that you have created and redeploy all the Path Analyzer maps.
|
[Step 8] Upgrade Multiple Instances
Upgrade a Scaled Environment With Multiple Instances
- Content Delivery, Processing, and Reporting
- Session State Provider
- Scaled XConnect Environment
[Step 9] Migrate xDB data
To use the xDB Data Migration Tool to Migrate xDB data.
NOTE: Before you run the xDB Data Migration tool, you must deploy the new Reporting database to SQL Server.
To deploy the new Reporting database:
- Deploy the Sitecore.Analytics.dacpac. This file is located in the Sitecore 9.0.2 rev. 180604 (upgrade files).zip package, in the \Databases folder.
- In the ConnectionStrings.config file of your Sitecore instance, replace the name of old reporting database with the name of the new one. For example:
<add name="reporting" connectionString="user id=user;password=password;Data
Source=(server);Database=Sitecore.Reporting.New" />
[Step 10] Breaking Changes from EXM 3.5
If you are currently using EXM previous version and willing to upgrade, you will have to be aware of the breaking changes in EXM 3.5.
Changes | Details |
Factories Replaced | The following factories have been removed:
They have been replaced with smaller factories that are responsible for creating only a single type. You can find most of the new factories in:
These factories are registered in the IoC container. You can customize most of the factories by patching the relevant configuration element. |
Breaking Changes | There are over 1,000 breaking changes, including:
|
Client API and Messaging Bus | The following files have been removed:
The new messaging bus, shipped with 9.0.1, eliminates the need for an http endpoint (ECMClientService.asmx) on the content management server. The new Sitecore.EmailCampaign.Cd.Services.ClientApiService class replaces the old ClientApi class and lets you send automated messages (with custom tokens and/or target languages), subscribing and unsubscribing. When the ClientApiService receives a request, a message is submitted to the messaging bus, and then picked up by a registered handler. |
[Step 11] Upgrade Solution
Upgrade .net Framework to 4.6.2.
- Update framework to 4.6.2
- Update all nugget packages to Sitecore 9 update 2
- Update Newtonsoft.Json 9.0,0
- Configure Solr by following the steps here
- Enable Solr search provider
- <add key="search:define" value="Solr" />
- Copy the Solr provided configuration example from the
configsets
folder into[SOLR_DIR]/server/solr
and rename it to the appropriate index name
- Enable Solr search provider
- Rebuild index