I was asked about upgrading from CS 2.0 to CS 2.1 during last weekend's New England Code Camp "Getting Started with Community Server" talk and found myself answering it on a forums post today, so I thought it was time for...
Dave Burke's Unauthorized CS 2.0 to CS 2.1 Upgrade Guide!
I was thinking of going with something like "Chicken Soup for the CS Soul," but went with an Unauthorized Upgrade Guide instead.
This is the approach I've taken a few times in my life now and hope this covers most situations. This assumes that you haven't done any CSS or skin customization. If so, the first step is to setup a CS 2.1 site locally and style it using something like Ben Tiedt's excellent CS 2.0 to CS 2.1 theme upgrade guide. These steps are based on the ASP.NET 2.0 Web Installer version of Community Server 2.1.
Here we go! Weeeeeeee!
- Make a copy of your web.config and if you've customized the siteurls.config file, get a copy of that as well. Put them in a safe place.
- Make sure your hosted site is configured for ASP.NET 2.0.
- We want as clean a website as possible with as little legacy CS 2.0 files as possible
- Remove all contents of \blogs folder except \blogs\files and any blog subfolders. If you have a blog at \blogs\myblog, for example, remove all items from the \blogs subdirectory except \myblog. \blogs\files is where attachments are located.
- Remove contents of \photos folder except \photos\storage (where photos are located) and any gallery subfolders like \photos\mygallery
- Remove everything else on your 2.0 site (everything!) with the exception of
- \files\storage
- \forums\storage
- \content (legacy folder only if used in earlier versions of CS)
- any personal folders used with CS in your particular site
- Update the Connection String information in your \Web\web.config file. Remember that in the ASP.NET 2.0 version this must be updated in two places: connectionStrings and appSettings. Use the same connection string in the web.config you saved from your CS 2.0 site.
- If your host provider has an unzip service like mine (huge time saver in upgrading CS), place a zipped copy of \Web folder you extracted from the ASP.NET 2.0 Web Installer ZIP to your hosted site (or upload in sections, which is the approach I always take.) Then extract the .ZIP file on the host using whatever web-based unzip application they use. If no unzip service is provided, ftp all contents of CS ASP.NET \web folder to your hosted site
- Using MSQuery or your host provider's MSSQL Management tools, execute cs_2.x_to_2.1_upgrade.sql. If you're upgrading from ASP.NET 1.1 you'll also want to execute cs_ASPNET2_Rebuild_SearchIndex.sql and cs_ASPNET2_Membership_Schema_Update.sql
- Make new friends and impress members of the opposite (and same) sex with your cool Comunity Server 2.1 site!