I briefly mentioned in my last post that I had an upgrade path in place (after testing of course!) for 'Connect'. The time was approaching to move on with the technology, whereby Connect had been in place for three years and in that time it had only ever had a couple of PHP / MySQL point release updates. Not that this was a problem of course, but you can never be left standing still.
Anyway, after doing a bit of research and some testing on my machine at work I ended up drawing up a plan for the migration. Not only would I be migrating the software from the old server to a new one, I would be taking advantage of certain in-house server developments. Our new server cluster which runs Microsoft Hyper-V, has now been patched to SP1 by Microsoft to support dynamic memory - which means lots of nice resources for any server sitting within that cluster. Not only this, I drew up plans to upgrade the core functionality of Moodle to version 1.9.10, as well as move to 64-bit MySQL and also move to the latest PHP 5.2.x release (I don't particularly like running Fast CGI on IIS as it has odd behaviour issues sometimes, which left me with ISAPI).
Testing of all of this was done successfully, very successfully! With nearly everything running in native 64-bit mode on the server (except PHP), the performance boost was clear to be seen. Pages instantly loaded quicker, reports were much faster to be dynamically generated and most of all, there would be peace of mind that it should, (famous last words!) be a lot more reliable and ready for the future.
To get started with the migration, one of our library server images of Server 2008 r2 was set up, and immediately patched with the freshly released Service Pack 1 from Microsoft. MySQL, PHP and IIS were also set up, before copying the code across, setting security permissions and restoring the database from the old server. The Moodle upgrade and module upgrades then took place, whilst downing the old server to ensure that there would only be one database in use.
And that was it really, how to migrate your Moodle! Downtime was minimal, and first impressions are that everything seems very fast which I think in part is a little to do with everything. The contributing factors in my opinion are:
- (The obvious) Much more powerful server, with lots of resources
- Move to 64-bit MySQL
- New PHP release
- Newer Moodle release
- Move to Microsoft Server 2008 r2 SP1