Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Upgrading to Moodle 2.0

From MoodleDocs

Moodle 2.0

When upgrading to Moodle 2.0, you must have Moodle 1.9 or later. if you are using an earlier version of Moodle (eg 1.8.x) then you need to upgrade to Moodle 1.9.x first.

We advise that you test the upgrade first on a COPY of your production site, to make sure it works as you expect.


System requirements

  • PHP must be 5.2.8 or later
  • Databases should be one of the following:
    • MySQL 5.0.25 or later (InnoDB storage engine highly recommended)
    • PostgreSQL 8.3 or later
    • Oracle 10.2 or later
    • MS SQL 2005 or later
  • Any standards-supporting browser from the past few years, for example:

Before upgrading please...

  • Always check your site to make sure it meets all system requirements for 2.0 in Administration > Server > Environment
  • Do a full database backup!
  • Remember to purge PHP cache if using any PHP accelerator

Now upgrade

Once you have satisfied the requirements for Moodle 2.0, follow the instructions on the upgrading page.

Moodle 2.0 supports running the upgrade from the command line, rather than through a web browser. This is likely to be more reliable, particularly for large sites.

Note, if you get a strange error about 'handling of PHP float numbers', please see this FAQ entry.

Verify the upgrade (optional)

If you wish to confirm that the database definitions in the upgraded database match the definitions of a new, clean install (which they should) you might like to look at Verify Database Schema.

Known and Discovered Issues

Many people are reporting that their install/upgrade is reporting that php extension intl is not installed or available. The intl.dll file is available in later releases of PHP but many hosts may not have a later release. To remedy this problem, discuss with your host the issue you are having and inform them that the problem is easy fixed by either upgrading their php to a newer version or to download the intl.dll and copy it to the php/ext folder. Add to the php.ini file the line:

 extension=php_intl.dll

in the Dynamic Extensions section of the file. The problem should then be resolved.

Moodle 2.0 also requires the use of the PHP zip extension. For most installs this is not an issue, but for some, all it needs to for the line:

 extension=php_zip.dll 

in the Dynamic Extensions section to be uncommented.

See also