How to Upgrade from Sitecore 6.6 to 8.2 xDB using Express Migration Tool v2.0

Posted in: Blog, Sitecore |

No comments

INTRODUCTION

I am tasked to upgrade Sitecore  6.6.0 (rev. 130404) to Sitecore 8.2 (rev. 161221). I’ve tried to look for information on the net but there is not many available. So this article consists of the details of the upgrade process I took to make it to work. Please note that the success of the upgrade is dependant on how complex your 6.6 environment is from both content, modules and code.

This particular site I upgrade consists of the following customizations and modules:
– Web Forms for Marketers
– dtSearch for Sitecore 6
– Angular and JQuery framework in the master page, layouts and sublayouts
– 1 main site with 5 mini sites
– XSL renderings

TOOLS

Tools I use for the upgrade are:
1. Express Migration Tool v2.0 (downloaded from Sitecore)
2. dtSearch for Sitecore 6 module
3. Web Forms for Marketers 8.2 Update 1 module
4. Web Forms for Marketers 8 SQL Provider100 (used by the WFFM 6 for Save to Database action)
5. Sitecore PowerShell Extensions-4.3 for Sitecore 8 (used to fix broken WFFM with custom goals)

ENVIRONMENTS

The environments needed to perform the upgrade:
1. The PROD Sitecore 6.6 environment
2. A fresh Vanilla install of 8.2 in DEV (or other similar environment for that matter) running on either SQL 2012 or 2014.

STEPS

The steps I took to finally migrate successfully are as follows:

1. Install Sitecore 8.2 in DEV using the EXE method just because I don’t have to worry about configuring security, App Pool, etc manually.
2. After you install Sitecore 8.2, run Search Index rebuild and Link database rebuild then backup the Vanilla Websites folder as well as the databases. Just in case you need to return to Vanilla install, you can just simply copy/paste and restore these backups without having to re-install Sitecore.
3. Backup the latest PROD 6.6 Core and Master database. We want to ensure that we get only and only PROD instance!
4. Backup the latest PROD Websites folder.
5. Restore the 6.6 backup DB to your DEV SQL.
6. Restore the 6.6 backup Websites folder to your DEV SQL.
7. Run Express Migration Tool (EMT). Upon firing up you may encounter the following error message:

An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework.

If you encounter this issue, open Sitecore.ExpressMigration.exe.config and add the following inside <runtime> tag:

<loadFromRemoteSources enabled=”true”/>

8. Once EMT is up and running, you can specify the Source and Destination Sitecore version.
9. On the Options to Migrate, please tick ALL. You want to literally copy all items including all codes and files from your 6.6 environment to 8.2. EMT by default omits the following anyway:
– .config files
– DLLs

10. In the Instance Parameters is where you need to specify the Source and Target Websites folder, Core and Master database connection string. For example:

SOURCE
– Website folder: C:\Temp\Old6.6WebsitesFolder\Websites
– Core database connection string: Data Source=dev001;Initial Catalog=PRODSitecore_Core;Integrated Security=False;User ID=sitecoreDev;Password=sitecoreDev;
– Master database connection string: Data Source=dev001;Initial Catalog=PRODSitecore_Master;Integrated Security=False;User ID=sitecoreDev;Password=sitecoreDev;

TARGET
– Website folder: C:\inetpub\wwwroot\NewSitecore\Websites
– Core database connection string: Data Source=dev001;Initial Catalog=NEWSitecore_Core;Integrated Security=False;User ID=sitecoreDev;Password=sitecoreDev;
– Master database connection string: Data Source=dev001;Initial Catalog=NEWSitecore_Master;Integrated Security=False;User ID=sitecoreDev;Password=sitecoreDev;

Once you’ve specified the above click Next.

11. Sitecore will then go ahead and do the comparison. On the next screen you can then specify which content items and files you want to migrate. I would suggest you don’t modify anything just so it literally imports everything from the old 6.6 system. NOTE: EMT would only import “NEW” items. If you expand the items individually, they would only import items that don’t exist in your Vanilla 8.2 so you can be at peace here.

12. Click Next and let EMT does its job. Once it’s finished, it should complete successfully (well, at least it ran successfully for me for the first time as well as all the subsequent attempts). Please note that at this point your “admin” password would have been changed to whatever admin password specified in your PROD environment. If you need to restore to the original “admin” and “b”, run the following against your 8.2 Core database:

UPDATE [aspnet_Membership] SET [Password]=’qOvF8m8F2IcWMvfOBjJYHmfLABc=’, [PasswordSalt]=’OM5gu45RQuJ76itRvkSPFw==’,
[IsApproved] = ‘1’, [IsLockedOut] = ‘0’
WHERE UserId IN (SELECT UserId FROM dbo.aspnet_Users WHERE UserName = ‘sitecore\Admin’)

13. The next step is to install Web Forms for Marketers 8.2 Update 1. You can do so through the Desktop. When asked to override files you select Yes to All. When asked to override content items you select Merge. Do NOT choose Overwrite or otherwise Sitecore would destroy all your custom web forms and any content items within the System > Modules > Web Forms for Marketers node. What you want is to override the WFFM system files with the latest 8.2 version.

14. Once you’ve installed WFFM, you can now Publish the whole site. Go to Content Editor > sitecore > Publish > Publish site. It may give you errors when you try to do so. If it does, please see errors section below.

15. Now you need to copy your DLLs and the .config files (ie. web.config and all .config files inside the App_Config folder).
– For DLLs, simply copy/paste the DLLs from your 6.6 BIN to your 8.2 BIN and do NOT overwrite existing files! This way you only copy DLLs that don’t exist in 8.2 such as custom DLLs and third party’s.
– For .config files, same approach as DLL, copy new ones and do NOT override any of the 8.2 ones. Then what about if there are customisations done on the existing/out-of-the-box config files? EMT creates a folder called Migration.MigratedConfiguration in your 8.2 root Websites folder. Within it contains ALL .config files that either have not existed in your 8.2 environment or modified. In the case of the modified out-of-the-box ones, you will have to use a file comparison tool such as Beyond Compare and migrate your configuration settings manually. A classic example is MimeTypes and any pipelines modification.

16. At this point, your migrated website to 8.2 would have loaded fine in the browser.

17. Then you can go ahead and install the other custom modules.

18. Don’t forget to rebuild search Index and Link database.

ERRORS

Errors I encountered during the upgrade:

1. Fail to render .XSL file. To resolve, ensure that XslExtension.config is enabled.

2. Some of the forms built using Web Forms for Marketers are no longer working. ISaveAction is no longer available in Sitecore.Forms.Core. The namespace has been moved in WFFM 8.2 Update 1. The error was triggered by the Send Email Message and Save to Database actions. Unfortunately we have to create our own SendEmail and SaveToDatabase method! To do so, use Visual Studio and reference the latest 8.2 Sitecore.Forms.Core and Sitecore.Forms.Custom DLL.

Then in Sitecore backend > system > Modules > Web Forms for Marketers > Settings > Save Actions, modify the Send Email Message and Save to Database action to use your custom DLL and action! I’m not going to detail how to do this in this article.

3. Some WFFM forms return GUID format error. This is caused by Goals and Attributes that need to be re-registered. Go to each WFFM form inside the Sitecore backend > system > Modules > Web Forms for Marketers (and yes, these include the Sample Forms as they are also migrated from 6.6). Inside the Content tab expand the “Advanced” tab. Under goal, simply click Goals (a pop-up will appear) then hit OK to save. Then click on Attributes and do the same. Save then publish the form. You will need to do this for every WFFM Form!

Once it’s done I would suggest you publish (including sub-items) starting from system > Modules > Web Forms for Marketers node.

You can also find more details about this error on this article: https://reasoncodeexample.com/2015/03/26/sitecore-linkdatabase-unrecognized-guid-format/.

4. You get GUID format error when trying to rebuild Link databases. This is caused by exactly the same WFFM forms as per (3). You fix 3, you’ll fix 4.

CONCLUSION

I’m happy that I finally get my 8.2 site up and running as expected. I’ve repeated the steps above for more than 5 times and finally I get a success 🙂 The steps above are solid and are confirmed repeatable and working.

 

 

Hope this helps,

Tommy

Written by

A web solution expert who has passion in website technologies. Tommy has been in the web industry for more than 10 years. He started his career as a PHP developer and has now specialized in ASP.NET, SharePoint and MS CRM. During his career he has also been in many roles: system tester, business analyst, deployment and QA manager, team and practice leader and IT manager.

No Comments Yet.

Leave a Reply

You must be logged in to post a comment.

Our Services

We provides you the best Services in our themes.

  • Click on the link below to see a full list of clients which we have developed solutions and provided consultancy for.

    READ MORE

  • We are solution-centered and not application-centered.

    READ MORE

  • Being creative and having fun and yet still delivering a fantastic service is the center of our values.

    READ MORE

  • TFS Consulting Services guarantees delivery that is within budget and deadline or you engage us for free.

    READ MORE

Implementing IT does not have to be difficult.

As long as you have the right methodologies

We have heard a lot of complaints from our clients that IT a lot of the times give them headache. The issues range from over-budget implementation, server is too hard to maintain, application is not user friendly, features not complete and many others. If you have ever experienced similar situations, don’t worry. This is why TFS Consulting Services is here. We exist to help clients implementing a successful IT solution. We have various methodologies which we have proven working in delivering a successful IT implementation. Below is the list of some of our key service offerings:
  • Planning and Methodologies

    Implementing IT solution does not have to be difficult. TFS Consulting Services has a lot of resources on planning and methodologies that will ensure successful delivery of your IT solution. TFS Consulting Services has been around in the web industry for more than 10 years and has experienced all the successes and failures of various type of IT deployment.

    read more

  • Technical Resource

    Do you need a technical resource? TFS Consulting Services can also provide you with technical resource for developing ASP.NET (C# and VB.NET), SharePoint (2003, 2007, 2010, 2013) and MS CRM applications. Our resource is an Microsoft Certified Personnel (MVP) and Microsoft Certified Technology Specialist (MCTS) in all ASP.NET, SharePoint and CRM.

    read more

  • IT Consulting & Advice

    Make sure your IT implementation is robust and scalable. TFS Consulting Services can provide consulting and advice on industry’s best practice on various web-related areas such as website security, design and usability, application-specific (such as SharePoint)’s best practice, Search Engine Optimisation (SEO), coding standards and many others.

    read more

  • Solution Development

    Finally TFS Consulting Services provides you with solution development service. We mainly work with Microsoft technologies (ie. .NET and SQL Server), however we are also capable of developing with PHP and MySQL. If you ever need any business process automation, integration and solution development work,  we are the trusted expert you should go to.

    read more

For more detailed service offerings please visit our Solutions page.

Testimonials

  • I’m happy to recommend Tommy as a knowledgeable and diligent developer.

    Mike Stringfellow, Vivid Group
  • Tommy has a lot of great ideas that can be delivered into great products. It’s a pleasure working with him because he has a broad knowledge about available technologies out there and he knows what’s best for the client’s needs. He just knows how to work effectively and efficiently.

    Teddy Segoro, Student Edge
  • I’ve worked with Tommy over the past 6 months and have found his approach to development (especially SharePoint) absolutely outstanding. Tommy goes beyond the boundries of typical software development with his ability understand what a client requires and then build it into fully fledged software solution. Coupled with his professional “Best Practice” approach, you get Continue Reading

    Michael Bonham, DSC-IT

Contact us

Tommy Segoro
tommy@tfsconsulting.com.au
+61 404 457 754

   

© TFS Consulting Services 2024. All rights reserved.

www.incorporator.com.au