Hello,
I urgently need some assistance please, if possible. I have an old hosted Moodle site with hundreds of users/courses. In trying to migrate the site to a new host, we found it wouldn't load due to it currently running on PHP 5.4.45.
In PHP 7.2 it is strictly prohibited to declare classes that have reserved names. Moodle up until 3.4 does have instances of this.
To resolve this on our old CPanel I had to downgrade PHP to under 7.0, and then the site loaded.
However I can't upgrade it to Moodle 3.4 or higher (to resolve the newer PHP issue) without resolving the database collation problem. Under my Environment page it shows that all my data is not in Unicode format. No problem, I'll just change that...well, I go to run the mysql_collation.php and it says "This collation is not available on this server!" In fact, running mysql_collation.php -a shows 0 available collation options.
I tried changing collation manually in PHPMyAdmin but it throws an error trying to change it on all columns with "index column size is too large".
1709 - Index column size too large. The maximum column size is 767 bytes
It's also confusing because checking status with mysql_collation.php -l indicates I have a lot of sub items still as general instead of unicode, but in PHP My Admin those same tables show as Unicode...and the Moodle install says they are not all Unicode as well. (see attached 2 images here)
So now I'm stuck...I can't upgrade the installation without resolving the Unicode problem. I can't migrate this to a different host because anything newer than PHP 7 causes the site to not load at all with a fatal error. How should I proceed?
Thank you!