Step-by-Step Overview: Upgrading Sitecore 9.3 XM to 10.3.1 XM


Step-by-Step Overview: Upgrading Sitecore 9.3 XM to 10.3.1 XM


Dear friends,

In a world where technology is constantly evolving, it becomes imperative for us to stay updated, and the same holds true for Sitecore websites. After dedicating days and nights to research, I've observed a scarcity of content on websites or blogs related to Sitecore upgrades. Hence, I've decided to share my experience with Sitecore upgradation/migration in the hope that it proves beneficial to you in some way. Let's delve into the intricacies of the upgrade/migration process.

1. System Prerequisites

  • Windows 10
  • Sitecore License
  • Microsoft SQL Server 2017 or later and SQL Server Management Studio (SSMS)
  • To run a Single Sitecore installation, the minimum configuration requirements are:
    • 4 core processor
    • 16 GB of RAM
  • Install Visual Studio 2022 (.Net Framework 4.8): Begin by installing Visual Studio 2022 and make sure it's compatible with the .Net Framework 4.8
  • SQL Server 2017 Microsoft SQL Server 2017 or later and SQL Server Management Studio (SSMS)
  • IIS Configuration: Set up Internet Information Services (IIS) as per the instructions provided in Installing IIS in Windows 11 - PowerServer 2022 R2  help. https://docs.appeon.com/ps2022r2/Installing_IIS_in_Windows_11.html

2. Start with Sitecore Vanilla instance - 

Let's kick off your Sitecore adventure by setting up a Sitecore 10.3 XM SXA vanilla instance, paired with the latest Solr version (8.11.2) for solid support. 

Note -Even if you're not diving into SXA, don't worry—I've got you covered with information for non-SXA instances as well.

And before we dive in, let's play it safe: after Vanilla instance installation, make sure to back up your IIS website folder, just in case we need it down the road. It's a smart move that adds an extra layer of security to your installation process.

3. Database upgrade

Restore your previous Sitecore 9.3 database copies (master, web, core, and experience forms) using SQL Server Management Studio (SSMS). If you are dealing with Experience Platform (XP), ensure to restore all databases, including xDB databases.

Now, proceed to download the database scripts essential for upgrading Sitecore 9.3 databases. You can obtain these scripts from the official Sitecore website through the following link (Configuration files for upgrade): https://dev.sitecore.net/Downloads/Sitecore_Experience_Platform/103/Sitecore_Experience_Platform_103.aspx

The table below, presented in the accompanying image, illustrates the correlation between each script and the corresponding database to be executed.




After executing the aforementioned scripts on your existing 9.3 databases, your database is now prepared for integration with the Sitecore 10.3 Vanilla instance. To establish this connection, it is essential to update the 'ConnectionString.config' file with the upgraded database names and passwords.
Now, you have the ability to observe your project-related website items, templates, layouts, renderings, and more.

4. Project/Solution upgrade

Within the solution/projects, locate all Sitecore 9.3 XM/XP/SXA-related DLLs and upgrade/update them with the corresponding Sitecore 10.3 XM/XP/SXA DLLs through Nuget Package. Ensure to rebuild the project after making these changes. Additionally, repeat this process for all associated projects (in Feature, Foundation and Project), updating the NuGet packages to Sitecore 10.3.

After a successful completion of the entire solution build, proceed to deploy it onto the new environment, specifically on the freshly created vanilla instance. Simultaneously, deploy the Sitecore items using TDS/Unicorn Sync for a comprehensive implementation.

In the initial attempt, the execution may encounter issues. It is imperative to address and resolve all identified issues until the point where the website's homepage successfully opens without any hindrances.

Note - Before proceeding with the Project Solution upgrade, it is crucial to compile a thorough inventory of features, including personalization and any customizations implemented in Sitecore, to determine their compatibility with Sitecore 10.3. Subsequent to the upgrade, it is essential to validate the seamless functionality of all these features. In the event of any anomalies, proactive measures should be taken to explore solutions provided by Sitecore, potentially through engagement with Sitecore support.

5. Database Cleanup for items

Run the Sitecore.UpdateApp tool to perform database cleanup for Items as a Resource (IaaR). Follow these steps to execute the command:

  1. 1. Navigate to the tool location in the command prompt.
  2. 2. Before running the command, ensure that you update the connection string to "<Tool Location/ Sitecore.UpdateApp 1.3.1 for Sitecore 8.1.0 rev. 151003\App_Config."
  3. 3. Additionally, place the license file at "<Tool Location/ Sitecore.UpdateApp 1.3.1 for Sitecore 8.1.0 rev. 151003\Data."
  4. 4. Finally, execute the command "Sitecore.UpdateApp.exe clean."

After the cleanup activity is completed, you will observe the output similar to the screenshot below.








6. SXA (XM) package upgrade - (SXA only)

The next step pertains specifically to Sitecore SXA:

  1. Install the Sitecore SXA 10.3.0 package to update the SXA content. After installation, restart Sitecore and run the indexing manager. Upon installing this package, you may encounter the following errors:

i. Could not load file or assembly 'Sitecore.ContentTesting' Solution: In the main web.config file, modify the entry from xml <add key="sxaxm:define" value="sxaxconnect" /> to xml <add key="sxaxm:define" value="sxaxmonly" />

ii. Similarly, update the corresponding value in the "App_config/Sitecore.XA.Foundation.XConnect.Integration.sxaconfig.xconnect" file.

iii. In the indexing manager, the "sitecore_sxa_master_index" and "sitecore_sxa_web_index" may not be visible. Solution: The file "App_Config\Modules\SXA\z.Foundation.Overrides\Sitecore.XA.Foundation.Search.Solr.config" is overridden after the Sitecore 10.3.0 package installation. Search for the entry "<param desc="core">" in this file, and ensure that its value corresponds to "<YourDomainName>_sxa_web_index" and "<YourDomainName>_sxa_master_index" concerning the id="sitecore_sxa_master_index" for both the web and master indexes.


7. Upgrade your Sitecore Content - (SXA only)

After executing this step, you will notice a yellow warning/message indicating the need to update Sitecore content on most of the items.

 



8. CM side activities - 

After completing the aforementioned steps, and ensuring that Sitecore is up and running, proceed with the following actions:

Perform the following activities on the Sitecore side:

  • Publish the Site
  • Rebuild link databases
  • Clean up databases
  • Deploy marketing definitions
  • Rebuild all indexes using the index manager

9. Hotfix from Sitecore - 

Finally, verify and apply the cumulative hotfix provided by Sitecore 10.3.1 XM, and execute the necessary activities on the respective environments.

Kindly feel free to share any suggestions or pose questions regarding my blog. Your feedback is greatly appreciated.

Thank you.




Comments