November 23, 2011 13:14 by
Admin
Recently, I was given the task to perform an upgrade of an old Sitecore 6.0 installation all the way up to Sitecore 6.5 with DMS. A really good idea, I might add, since lots of good stuff has been added to the cms since good ol’ 6.0. However, as all developers, I’m lazy, so I after having looked at SDN, the recommended upgrade path was like this:
- Sitecore 6.0.1 rev. 090212
- Sitecore 6.1.0 rev. 090630
- Sitecore 6.2.0 rev. 091012
- Sitecore 6.3.0 rev. 100716
- Sitecore 6.4.0 rev. 101012
- Sitecore 6.5 (finally!)
Along with update packages, a lot of tedious changes to the configuration would have to be made, so I made the decision to skip the recommended way.
Enter serialization and packages!
In 6.0, the serializer had some problems with star-items, so I had to resort to use the packager for the content tree, but otherwise, I was capable of moving items from the 6.0 solution and import them into the 6.5 solution.
To ensure that I did not overwrite any new items in the 6.5 solution by reverting from the serialized items, I began the whole procedure with serializing the entire tree in the Sitecore master database and copied in the customer-specific items from the 6.0 solution. As there were quite a lot of content items, I integrated Alex Shyba’s nice post on how to disable the lucene index while installing large packages.
The core database
The 6.5 solution was installed with a vanilla 6.5 core database, so I had to apply modifications from the 6.0 database. In this case, the following things needed to be migrated and updated to fit 6.5:
- User profiles
- HTML Editor profiles
Finally, I used SQL Management Studio to copy the contents from the ASP.NET tables (containing users, profiles, roles etc) to keep the users. Configuration In the old solution, web.config was modified and the include file method was not being used, so I took the vanilla web.config from 6.5 and performed the changes that existed outside the Sitecore part of the file and created include files to contain the customizations.
The good thing about this approach is that it makes it considerably easier to do the next upgrade.
Gotcha's
Of course this could not be done without a number of small hickups:
- It was not possible to use the page editor, since all layouts were placed directly on the templates instead of on the __Standard Values item.
- The forms database scheme in the sqlite database from the Webforms for Marketers module had changed, so it was no longer possible to use the database file.
73071ccf-166e-4432-871c-f26a97d43f2c|0|.0