We've been preparing for the port from v 1.8.x to 1.9.2 by testing the migration process out. There are even more reasons now why it's a good idea to migrate:
- In the process, we can move from mySQL 4 to 5 (better language support).
- We can move from MyISAM tables to InnoDB tables (more stable, faster, etc.).
- We can fix the character encoding issues plaguing the current version, which was set up with latin-1 tables and fields instead of utf-8.
- We can introduce a new fix we've tried which sorts the blog list alphabetically.
- We can add three minor bugfixes in Martin's customizations which have shown up in the process of testing.
The port itself is a complicated business, though. This is what we need to do:
- Check the mySQL 5 db and see if we can configure it so that the defaults are InnoDB tables, and utf8_unicode_ci everywhere.
- Take down the original PHP and archive it.
- Do a mySQL dump of all the data, and make an archive copy.
- Edit the dump, to do these replacements:
- latin1 -> utf8
- MyISAM -> InnoDB
- Save the file as UTF-8 (although that doesn't help with accented characters :-(.)
- Push up the edited dump into mySQL 5 to create the new db.
- Put all the 1.9.2 code in place (including our customizations).
- Configure the code to point at the new mySQL 5 db.
- Run the B2Evo installer script. It will modify the db to add new fields required for 1.9.2.
- Check that all is well (except for accented chars).
- Go into the Mariage and Moses blog settings and fix the broken accented chars (this can be done using HTMLKit).
- Test, test and test again.
This is best done on a weekend, for obvious reasons. We'll need an OK to do this on a weekend.