Moodle Upgrade and LMS Merging Completed for a Client
The purpose of this post is to provide guidance as to what is involved on Moodle upgrade and Moodle merging process of 2 different Moodle LMS. This information can be very useful for upcoming Projects where updating Moodle and fusion is needed and to provide the potential client with a sense of clarity on what the upgrade and combining Moodle process involves and the complexity of it.
The Core goal of the project was to take 2 different Moodle 1.9 and upgrade them to the latest Moodle 2.4 version while making sure both Moodle LMS would be merged into a single 2.4 Moodle system while keeping their users, courses and permissions separated based on specific requirements. Part of the project, was also making sure the key Moodle plugins and modules would work and to be updated as necessary in order for the Moodle LMS to keep its original essence.
Here is a step by step list of what is involved on completing this Moodle upgrade process (Merging included).
1) Obtaining Moodle system needing to be upgraded and creating a backup copy of it (In this case it was to upgraded Moodle 1.9 A External for client users)
2) Upgrading Moodle 1.9 to Moodle 2.2 (A External LMS). This step was needed since it is not possible to upgrade directly from Moodle 1.9 to 2.4. Once Moodle was upgraded to 2.2, it was then upgraded to Moodle 2.4
3) Installing patches, plugins and database pertaining to the Moodle upgrade from Moodle 1.9 all the way to Moodle 2.4.
4) Verifying Moodle Plugins, functionality and modules properly working. As part of this modifying specific and key plug ins needed for proper site functioning. Through the Moodle update process, some blocks, plugins and modules may not be updated, usually the non standard to Moodle 2.4 upgrade. For such Moodle non-standard components it is needed to look for a manual update or a new plugin/module/block with the same functionality for the upgraded Moodle version.
5) Implementing a new Moodle theme if provided.
6) Testing First Moodle 2.4 LMS for proper roles and courses upgrade.
7) Obtaining second Moodle LMS needing to be upgraded from Moodle 1.9 to Moodle 2.4 (B internal LMS). Creating a backup for comparison after completion of the upgrade.
8) Upgrading from Moodle 1.9 (B internal LMS) Moodle 1.9 to Moodle 2.2 and then to Moodle 2.4
9) Installing Moodle patches, plug ins and database on the second Moodle 2.4 system.
10) Verifying Moodle 2.4 Plugins, functionality and modules properly working. As part of this modifying specific and key plug ins needed for proper site functioning on the second Moodle 2.4 LMS.
11) Actual merging of Moodle begins with both LMS at Moodle version 2.4. Export / Import the list of users from Moodle 2.4 B and import it to Moodle 2.4 A
12) Export / Import the module information from Moodle 2.4 B and import it to Moodle 2.4 A (Including verification on Moodle database for all tables)
13) Backup course X from Moodle 2.4 B (With all course information: Resources, activities, notes, activity participation)
14) Importing the Course X from Moodle 2.4 B to the Moodle 2.4 A.
15) Each new course on the Moodle A generates a new id on the moodle data directory (We need to verify that the information inside the moodledata is correct)
16) Verify functionality of Moodle database to make sure all information from one Moodle is present on the other Moodle.
17) In some cases because of the manual system Moodle 2.4 has to back up it is needed to import the course adding users manually to some specific Moodle courses where it may be needed.
18) In some cases because of the manual system Moodle has to back up and then import the course, adding grades and scoring records manually to the specific Moodle courses may be needed.
19) If any specific student permission or separation of users by original Moodle LMS (External and internal) is needed this would be an additional step.
20) Packing all Moodle data files and Moving the entire merged Moodle 2.4 to production.
21) Verifying functionality and data of combined Moodle 2.4 LMS on production.
Merging of 2 Moodle LMS is definitely possible, but nevertheless a complex and time consuming process where even though there is a step by step plan for achieving the goal of combining 2 Moodles together there can be unexpected detours to arrive at this goal since all LMS even if both are Moodle 2.4 they can be quite different regarding permissions, plugins, modules, number of courses, number of users and data amount.
It is very important to be able to have full access to the different servers where the upgrading of Moodle will be done, development and production as it will drastically reduce the time invested on any given step should a modification be needed as well as for debugging after testing the upgraded Moodle.
Do remember with this process you also have to consider synching information from the moment you started working on the Moodle upgrade on the 1st moodle 1.9 to the moment you move your upgraded and merged Moodle 2.4 to production, the database on the newly merged Moodle will be outdated and you need to foresee and consider one of the strategies provided in order to carry on with this specific stage of Moodle merging or even only upgrading a Moodle. Keep in mind one option is to freeze your site while the merging of 2 Moodles is done so that information is not outdated, but users will not be able to work on the site for that time or another way is to upgrade the Moodle in production to the Moodle version on dev in order for their databases and architecture to be consistent and the transfer of records simplified, nevertheless a process that requires plenty of time to confirm all records are synched on the finalized upgraded Moodle..