Uprading a pretty big and OLD Moodle install

Uprading a pretty big and OLD Moodle install

by Some Dude -
Number of replies: 8
Hi guys,

In the near future, I may be asked to manage the moodle install of an institution that has close to 8,000 students.

I don't have all the details yet, but I was given the following information:
  • created in 2007, last update of the software was somewhere in 2010...
  • circa 1,000 students are on the platform so far, with plans to extend to all 8,000 students.
  • software wasn't updated for lack of will from the direction, but this may change soon.
  • another caveat of the current install is UI/UX, especially on mobile.

Basically, I plan to update to latest version (one way or another), change theme/UI and make students install Moodle Mobile.

So back to my question, how would you please recommend I proceed ?

  • updating the current install directly ? I'm aware about staging good practices, but is it even possible to update from really old versions to current ones ?
  • making a new, clean install, then importing all content/users ? Is that possible in bulk ? Am I looking at database handling ?
I shall add that I'm fairly tech-savvy, but I'm new to Moodle, and not a developper. Fairly tech-savvy as in I've been using Wordpress for 10 years, but I'm not at ease with database management.

In any case, I'd be happy to hear anything I should know regarding this project.

Thanks !
Average of ratings: -
In reply to Some Dude

Re: Uprading a pretty big and OLD Moodle install

by Ken Task -
Picture of Particularly helpful Moodlers

Tall order ... depending upon info not shared at this point.   Familiarity with WP a + in your case.

Things that will come into play at one stage or another ... PHP version, MySQL/DB version, Apache/Web Service + if desiring all the features additional software installs like unovonv, LibreOffice, JRE, etc..

To find the specific version of Moodle you have now, in the code directory of Moodle there is version.php file.    If Linux ... fgrep '$release' version.php will show version and build date.   Knowing that one could map out a strategy for updating and upgrading.

Current PHP version is?  Current DB version is?  Current web service (config and version)?   Platform ... there's enough difference with Linux, distro's, for example, to warrant sharing that .... having to do with availability of minimal required versions of PHP to run X version of Moodle.

Here's a link that might assist:

https://docs.moodle.org/dev/Releases

You'll find 2007 in versions 1.7 and 1.8 ... you'll find 2010 in the middle of version 1.9 of Moodle.

As one who has had first hand experience with moodle since 1.5 and  in migrating 1.9.x's to 2's, looking back now, may have taken a different approach.   1.9.x to 2.x (earlier versions) brought massive changes to file system and users.  One could migrate a 1.9.x to highest 1.9.x then take it to 2.2.highest via git easily enough but when arriving at 2.2, one discovered the entire file system was set to legacy - ie, not using the new file system as new courses would.   Addons that were compatible in 1.9.x didn't make the trip to 2.x and could cause issues ... as well as themes (which is another area that from time to time undergoes some massive changes).

IF you are going to 'march a moodle' upwards, use git.   Even if you don't 'march' but decide install fresh new, install with git.   Git will make your admin life much easier when it comes to future updates and upgrades ... period.

In looking back now, might have been best for some entities to install a fresh 2.x (in your case 3.x), and then have teachers rebuild their courses (not using 1.x backups).   Advantage ... teachers will have to learn the new anyway and it's always easier to build and learn new than it is to attempt reverse engineering of whatever.  A big factor ... using the app for smartphones/tablets ... teachers might have to convert their videos/audios, etc. file types to compatible/playable on whatever device .... iphone, ipad, Androids - phone and tablets.  And the use of which online office suite ... Google/Micosoft?

There's more to discuss/cuss ... this is enough to begin the 'discussion/cussions', me thinks. ;)

'spirit of sharing', Ken


Average of ratings: Useful (1)
In reply to Ken Task

Re: Uprading a pretty big and OLD Moodle install

by Some Dude -
That's a hell of an answer, thanks for that ! Quite scary though, but it was expected.

Things that will come into play at one stage or another ... PHP version, MySQL/DB version, Apache/Web Service + if desiring all the features additional software installs like unovonv, LibreOffice, JRE, etc..
This is partly why I'm in favor of a new install, so I don't have to worry about Moodle working with my stack. Plus, PHP 7 would be nice for performance. (but I guess this would get me additional problems due to incompatibilities of all kinds. If you have info/links on that, I'll take them)

What you say about your experience in migrating Moodle also goes in favor of a new install, and honestly, "marching a moodle" doesn't sound like fun, especially if I'll end up with incompabilities anyway.

Which brings us to what's possible and what's not when it comes to importing stuff from a moodle to another:
  • I see there are built-in options to import quizzes/questions. Can this be made in bulk ?
  • Same question for basically everything else. What can I (and can't) import in bulk ?
Plus, and sorry for the possibly stupid question, given what you already answered: I understand that updating directly will most likely fail in some way, but let's say I have a new install.
  • Can't I just use a built-in option to import courses/users to the new install ?
  • If there aren't built-in options, and provided that I use the same DB as the old install, can't I add the courses/users through the database management tool ?

Advantage ... teachers will have to learn the new anyway and it's always easier to build and learn new than it is to attempt reverse engineering of whatever.  
I do agree, but I'm pretty sure they won't like having to recreate them. (Please tell me there's a way to import most things in bulk)

A big factor ... using the app for smartphones/tablets ... teachers might have to convert their videos/audios, etc. file types to compatible/playable on whatever device .... iphone, ipad, Androids -
phone and tablets.  And the use of which online office suite ... Google/Micosoft?
I have to say I didn't even think of that. The way I see it, and because reducing the amount of additional work for teachers is a prerequisite, maybe we could have the student install an app that fixes that for us ?

Final question, maybe a stupid one also, why do I need Google or MS office suite for Moodle ? As I said, I'm 100% new to the tool, apart from the local install I made 3 hours ago.

Thanks again.
In reply to Some Dude

Re: Uprading a pretty big and OLD Moodle install

by Ken Task -
Picture of Particularly helpful Moodlers

Told ya up front that the response would begin the discussion/cussion! ;)

Uhhh ... first, you might have to adjust your stack - which is and always has been the case when it comes to Moodle.

Importing of users in bulk can be done via CVS ... but probably not straight from current version ... which we still don't know ... directly to latest/greatest without stopping at Excel or Sheets or whatever you use for spreadsheets.   And knowing authentication methods currently using.  About 1.9.6 password salting made an appearance and from that version upwards the password salt (key) had to be added to the config.php file ... that's just one example.   So all users might need to be given a temp password and their account set to change password upon initial access.

Good time to clean up users cause what you see in Moodle interface (number of users) isn't really what's in mdl_user table ... factors depending.   Use a MySQL/DB cllent and just list all the rows - compare that to what you see in you Moodle when browsing users.

I would not use a backup from a 1.7 or 1.8, nor 1.9 to restore to 3.x highest - too many potential issues.  Not even lower versions of 2.x depending upon plugins used.

There is no utility, of which I am aware, that could take old backups ... convert what it needs to convert (users, quizzes, other activities, dropping old modules no longer in existence in the new, etc.) and re-package as a .mbz (now a .tar.gz or gzip).

Could use CVS to create 'shell courses' with a teacher assigned ready to build, me thinks.  But then again, does every teacher have a course layout that's exactly the same?

Ok ... kinda skipping things ... but getting to the 'biggy' (maybe) ... and your students have what handheld device?  How many of them actually have Windows phones? (they would be in the 1% of the total market share).  How many iphones/ipads?  How many Android smartphones/tablets?

IF teacher used M$ to create the content they might have used .wmv videos ... proprietary.  OR, how about ShockWare Flash?   Does an iPhone play .wmv's?   How about any Apple devices playing SWF or FLV files?

Why wouldn't one use online office suites ... the free versions.   As a student I would not have to purchase M$ Office ... even at the student book store rate ... I know that mgiht be in the 20's (US $'s) but heck, I do re-call as a 'starving student' myself, that MacDonald's 15 cent hamburgers were a steady 'diet' (shudder) and really all I could afford if 'dining out'!!!

See that I mean? ;)

Invite others to jump in here ... am by no means the guru or Moodle guru's!!! smile

'spirit of sharing', Ken


Average of ratings: Useful (1)
In reply to Ken Task

Re: Uprading a pretty big and OLD Moodle install

by Some Dude -

Thanks again for your answer.

Importing of users in bulk can be done via CVS ... but probably not straight from current version ... which we still don't know ... directly to latest/greatest without stopping at Excel or Sheets or whatever you use for spreadsheets.  

I'll try to gather more information, especially about current version.

Good time to clean up users cause what you see in Moodle interface (number of users) isn't really what's in mdl_user table ... factors depending.   Use a MySQL/DB cllent and just list all the rows - compare that to what you see in you Moodle when browsing users.

Another argument in favor of a new install. smile

Ok ... kinda skipping things ... but getting to the 'biggy' (maybe) ... and your students have what handheld device?  How many of them actually have Windows phones? (they would be in the 1% of the total market share).  
How many  iphones/ipads?  How many Android smartphones/tablets?

1% of students on Windows phones sounds about right, maybe even less. I see there is a Mooble app for them, so isn't that problem solved ? Same for tablets, be them on IOS or Android right ?

IF teacher used M$ to create the content they might have used .wmv 
videos ... proprietary.  OR, how about ShockWare Flash?   Does an iPhone
 play .wmv's?   How about any Apple devices playing SWF or FLV files?

Now I see. However, and this may be naive from my part, there must be apps that can fix these proprietary issues ? A quick search showed me O Player on IOS. This is one area where I have hope in this project. I mean, apps should fix most issues, but when/if it's not possible, then intervention from teachers could come into place.

Why wouldn't one use online office suites ... the free versions.   As a student I would not have to 
purchase M$ Office ... even at the student book store rate ... I know that mgiht be in the 20's (US $'s) but heck, I do re-call as a 'starving student' myself, that MacDonald's 15 cent hamburgers were a steady 'diet' (shudder) and really all I could afford if 'dining out'!!!

See that I mean? ;)

I do see what you mean regarding student budget, and burgers are way more expensive than 15cts where I live smile, but my question is more: why students/teachers/admin need any office suite at all, free or paid, to work with Moodle.

The only case I see is to open documents downloaded from Moodle, in which case we currently have a mix of Word/Libreoffice/Google Docs/Pages, which works quite well, i.e pretty much everyone can open .doc.

In reply to Some Dude

Re: Uprading a pretty big and OLD Moodle install

by Emma Richardson -
Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Plugin developers

So the main question is do you need to retain the existing data concerning your students?  Enrollments/grades etc?  The only way to do is to do the upgrade march.

If that is not important, you are probably better off building from scratch.  You can import the courses and there are ways to bulk restore the content in the courses (look at uploading courses and using templates in the documents).

Technology has changed hugely in the past ten years.  The fact is that your teachers need to produce content that is not only easy to access from mobile devices but also accessible.  There are tools that will convert video but that is the requirement of the course provider, not the student who will quickly lose interest/motivation if they cannot access the content easily.

Average of ratings: Useful (1)
In reply to Emma Richardson

Re: Uprading a pretty big and OLD Moodle install

by Some Dude -
Hi, and thanks for your answer.

So the main question is do you need to retain the existing data concerning your students?  Enrollments/grades etc?  The only way to do is to do the upgrade march.
Grades are not important, as most grades aren't from the platorm anyway. Enrollments is more important, but there are easy to re-do, right ? Bulk import via csv and you're good to go?

If that is not important, you are probably better off building from scratch.  You can import the courses and there are ways to bulk restore the content in the courses (look at uploading courses and using templates in the documents).
This is very nice to hear. But can courses from very old Moodle versions be imported in latest versions ? And how should I proceed ?

Technology has changed hugely in the past ten years.  The fact is that your teachers need to produce content that is not only easy to access from mobile devices but also accessible.  There are tools that will convert video but that is the requirement of the course provider, not the student who will quickly lose interest/motivation if they cannot access the content easily.
This I understand, especially the need for ergonomy. So the choice right now is either have students use some kind of app and/or have teachers convert stuff. In any case I'm happy, if my bigger problem, updating Moodle, can be done without too much trouble.
In reply to Some Dude

Re: Uprading a pretty big and OLD Moodle install

by Ken Task -
Picture of Particularly helpful Moodlers

I think you are at the point where you need to jump in ... both feet ... and try some things.

By now, you could have had a test latest/greatest version spun up ready for courses and student ... not on production hardware, however.   And you could have taken a backup with students and their work from old system (a representative course ... one that is like the majority of courses) and attempted a restore to the new.

Uhhhh ... turn on debugging before attempting to restore the course.   Now don't expect many here in these forums to be able to assist fixing a failed restore ... not without info ... and even with info, the version of the backup might be soooooooooo ooooooooold that no one remembers any fixes. ;)

A 'march' would require cloning what you have first, getting that to run on another machine as the current version ... that one would have to have PHP version lower than what is offered by whatever platform/or poision of your choice (after all Moodle runs on anything, right?).

There is no easy button here ... besides, as a new admin, one will have to begin sharpening troubleshooting skills ... not only PHP but MySQL as well as Apache (in a typical/stock type install).

'spirit of sharing', Ken


In reply to Some Dude

Re: Uprading a pretty big and OLD Moodle install

by Emma Richardson -
Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Plugin developers

You can import courses from the latest version of 1.9.  The one thing you will need to look at is if you are using any additional plugins and if they are compatible with later versions of moodle.