It’s a source of embarrassment that most of the traffic for my web site is uploads of blogging software, but there’s nothing better for embarrassment than publicizing it, or so I was told. So, if you haven’t done the upgrade yet, here’s my routine for doing it:
- Export your existing blog to BlogML, back up the database, do whatever you can to avoid borking your site because of the upgrade.
- Make a copy of your current web.config. The configs aren’t compatible, but you’ll want to refer to it.
- I uploaded the new software to a new folder (Blog2), rather than overwriting the old one.
- Since you’re upgrading, delete the SQL dump files (they’re in App_Data, Subtext2.0.mdf and Subtext2.0_log.ldf). They’re huge and they’ll slow your upload up.
- If you’re feeling confident, you can avoid uploading some skins as well. I’d hang onto the default skin, though.
- Now I did the substitution in. This actually involved renaming Blog to Blog1, creating a new Blog folder and moving everything from Blog2 into Blog. If you were more worried about downtime, you’d set up Blog2 as a virtual directory and slap an App_Offline.htm into the Blog folder at this point.
- Edit the web.config and switch customErrors to “Off” (remember the capital O, I’ve lost hours of life over that…)
- Fix the HostEmailAddress. This is the “forgotten admin password” email address.
- Put the connection string in from the old config file. (I’ve noticed that they’ve put a clear right at the start of the connectionStrings section. This prevents a lot of stupid configuration problems.)
- Now you can go to the blog. You’ll get the “we’re being upgraded message”. Now you can click through and log on.
- If you’ve forgotten your password, the password reset won’t work and you need to run the query at the bottom of this page to sort things out. If you’ve only forgotten your admin user name, you can find it out just by selecting from the subtext_hosts table. Either, obviously, is painful in a hosted environment.
- Hit the button and hopefully you’ll be upgraded!
Next, time to upgrade your skin; it’s a pain but not hard. I’ve put that into a separate post.
Finally, switch customErrors back to RemoteOnly.