Recently, I posted about issues that ran into during an upgrade of 8.0 update 4 rev. 150621 to 8.1 update 2 rev. 160302. That article is available here. That article did not cover the actual process of upgrading and I thought it may be beneficial to provide a walk-through of that.
To start off, I went to dev.sitecore.net to look at the upgrade information for the most current release, which at the time of the upgrade was 8.1 update 2. In the upgrade pdf that is available for download I found that 8.1 Initial Release rev. 151003 is required to upgrade to update 2.
From there I looked at the upgrade requirements to get to 8.1 Initial Release. The prerequisites to get to 8.1 Initial Release are 8.0 Initial Release rev. 141212 or later. So the upgrade process I needed to follow was actually 2 upgrades. The first one being 8.0 update 4 to 8.1 initial and then the second one being 8.1 initial to 8.1 update 2.
The first part of the process was to install the Update Installation Wizard 1.0.0 rev. 150930.zip package. That package is available from the same page that was used to retrieve the upgrade pdf. note: in the 8.1 update 2 pdf it lists that Update Installation Wizard 1.0.0 rev. 160203.zip should be used. Please read the issues that I ran into with that here.
Install the Update Installation Wizard:
Launch the Installation Wizard from the Sitecore Desktop’s Development Tool item.
Upload the Update Installation Wizard Package.
When prompted, overwrite the Sitecore.Update.dll.
Now it’s time to start the upgrade. As noted in the upgrade guide, I downloaded the ‘Sitecore update package’ and ‘configuration files for upgrade’ zip files. Before actually upgrading, there were a few modifications that needed to be made to the existing config files.
I had the GEOIP module installed, so disabling the related config files was necessary. To disable the files, append the ‘.disabled’ extension to them. If you don’t have these files that’s fine and continue on.
note: If you are using the Email Experience Manager (EXM) you’ll need to disable those configs as outlined in the upgrade pdf (pg 4).
Disable the ‘Sitecore.Forms.config’ file, if you are not using WFFM then you may not have this file.
Copy the .Net Assemblies from the configuration files zip folder to the site’s \bin directory.
Disable analytics for the site by opening the Sitecore.Analytics.config and setting the ‘Analytics.Enabled’ setting to ‘false’.
Disable the ‘Sitecore.Analytics.Processing.Aggregation.Services.config’ and the ‘Sitecore.Analytics.Processing.Services.config’ files, located in the \App_Config\Include directory.
In the site root’s web.config file, locate the <compilation> section in the <assemblies> node and remove the versions for System.Web.Mvc, System.Web.Http, System.Web.Http.WebHost, and System.Net.Http.Formatting.
In the web.config file’s <assemblyBinding> node, point the versions to 5.2.3.0 for the dlls referenced above.
Open up the \App_Config\Includes\Sitecore.Mvc.config file and paste the following text after the <pipelines> section.
<mvc> <areas> <!-- MVC: Sitecore will by default register all areas in the initialize pipeline. Use the below list to specify areas that should not be registered in the initialize pipeline. --> <excludedAreas> <area type="Sitecore.Social.Client.Mvc.Areas.Social.SocialAreaRegistration, Sitecore.Social.Client.Mvc" /> </excludedAreas> </areas> </mvc>
In the \App_Config\Includes\Sitecore.Speak.config, comment out the Speak.Components.KnockoutPresenter setting.
Two SQL scripts were required to be run against the Sitecore databases.
Run the CMS80u3_BeforeInstall.sql script against the master, core, and web databases. The scripts came in the Configuration files for upgrade zip file downloaded earlier.
*note: the zip file contains CMS81_AfterInstall.sql which is needed for Item Clones. The instance I was working with did not have any clones so that process is not covered. Please review the upgrade pdf (pg 7) if you are following along and using Item Clones.
Run against master, core, and web by selecting the database from the database selection drop-down.
Run the SXP81_BeforeInstall.sql script against the reporting (analytics) databases.
Backup the dictionary.dat file located in \temp. After backing up that file, delete it from the \temp directory.
That’s it for the pre-update changes needed. The next part is to start the actual upgrade using the Sitecore update package downloaded previously.
Backup your Website directory.
Launch the Update Installation wizard by navigating to http://<yoursiteinstance>/sitecore/admin/UpdateInstallationWizard.aspx
Press the ‘Choose a package’ button.
Press the ‘Choose File’ button.
Select the ‘Sitecore 8.1 rev. 151003.update’ file from the update package zip downloaded earlier.
Select ‘View package information’ to continue.
Press the ‘Analyze and install the package’ button to continue.
In my instance the items listed as potential problems, were not actual problems. You’ll want to review your list to verify any potential issues before continuing. Press the ‘Install the package’ button to continue.
Once installation is complete, press the ‘Installation result’ button to continue.
The package is now installed and Sitecore is updated with 8.1 rev 151003 (initial release).
Copy the \App_Config directory from the ‘Configuration files for upgrade to Sitecore 8.1 rev.151003.zip’ file downloaded earlier, to the website’s \App_Config directory. This directory was backed up prior to the upgrade so the necessary ConnectionStrings.config, DataFolder.config, SiteDefinition.config and other instance specific configs are safe.
Do the same thing for the web.config file.
Once the config files were updated, I verified that my Sitecore instance loaded and that I could log into the client interface.
The last half of the upgrade is bringing the Sitecore instance from 8.1 to 8.1 update 2. For this part of the upgrade I needed to download the 8.1 rev. 160302 update package and configuration files as outlined in the 8.1 Update 2 Upgrade Guide pdf.
The pre-update changes for this part are not as much as the last part.
Disable analytics by setting the ‘Xdb.Enabled’ and ‘Xdb.Tracking.Enabled’ values to ‘false’ in the \App_Config\Include\Sitecore.Xdb.config file.
Disable ‘Sitecore.Analytics.Processing.Aggregation.Services.config’ and ‘Sitecore.Analytics.Processing.Services.config’. These files are located in \App_Config\Include.
Backup your Website directory.
Launch the Update Installation wizard by navigating to http://<yoursiteinstance>/sitecore/admin/UpdateInstallationWizard.aspx
Press the ‘Choose a package’ button.
Locate the ‘Sitecore 8.1 rev. 160302.update’ file from the zip file that was downloaded.
Press the ‘Analyze and install the package’ button to continue.
Press the ‘Analysis results’ button to continue.
In my instance the items listed as potential problems, were not actual problems. You’ll want to review your list to verify any potential issues before continuing. Press the ‘Install the package’ button to continue.
Press the ‘Installation results’ button to continue.
The package has now been successfully installed.
Copy the \App_Config directory from the ‘Config Files for Sitecore 8.1 Update-2.zip’ file downloaded earlier and paste them into your website’s \App_Config folder. This directory was backed up prior to this part of the upgrade as well, so the necessary ConnectionStrings.config, DataFolder.config, SiteDefinition.config and other instance specific configs are safe.
Do the same thing for the web.config file.
Once the config files were updated, I verified that my Sitecore instance loaded and that I could log into the client interface.
Now that the instance is updated to 8.1 update 2, there are a few more steps to get the databases back in sync.
As noted in the upgrade guide rebuilding the Search Indexes and Link Database is recommended after performing the upgrade.
Open the Control Panel from the Sitecore Launchpad.
Locate the ‘Indexing’ section and select the Indexing manager
Select All indexes and press the ‘Rebuild’ button.
Select Rebuild search indexes from the ‘Database’ section.
Check the box for Quick search index and press the Rebuild button.
Now select Rebuild link databases from the ‘Database’ section.
Check the boxes for core, master, and web then press the Rebuild button.
Next, make sure to turn Analytics (XDB) back on. Navigate to the Sitecore.Xdb.config file located in \App_Config\Include and set the values to ‘true’ for the settings ‘Xdb.Enabled’ and ‘Xdb.Tracking.Enabled’.
That was it for my upgrade process. There are additional upgrade steps required for the Web Forms For Marketers module and potentially any other module that you may have installed in your instance. Information on the individual module upgrades can be obtained from dev.sitecore.net under the Downloads section for the specific module.
Thanks.
Awesome write up Will, well done!
Thank you!