I need to upgrade an existing CiviCRM 5.0.4 to the latest (5.42).

What approach is recommended?

Thanks in advance.

1 Answer 1


It may take some trial and error and going in steps. The CMS will also make a difference how you break up the steps. At some point you'll need to upgrade php to 7.x, but for some of the intermediate civi versions you might not want to go past php 7.1 or 7.2.

See also https://docs.civicrm.org/sysadmin/en/latest/upgrade/version-specific/ for some steps you might need to do along the way.

  • So, are you suggesting that I upgrade using each release in turn since 5.0.4: CiviCRM 5.43 CiviCRM 5.37 CiviCRM 5.36 CiviCRM 5.34 CiviCRM 5.29 CiviCRM 5.26 Or could I do a fresh install of the CMS + Civi and export/import the 5.0.4 database? Nov 2, 2021 at 23:46
  • You can try the latter. Anecdotally that sometimes doesn't work for some reason. Theoretically it should.
    – Demerit
    Nov 2, 2021 at 23:49
  • I will investigate both. Thanks. Nov 3, 2021 at 0:05
  • Generally recommend testing this out on a copy of the site - get a copy of the site running on the same CiviCRM version - confirm it works - backup the database - and then have a go running the upgrade - perhaps try going halfway somewhere about 5.20ish and see if that runs - if you get an error - restore the database from the pre install. Try upgrading to the version before you got the error and then step into the version that errored. Make a note of the intermediate steps you had to run - and potentially list them here for others to follow if they are trying to repeat the same process! Nov 10, 2021 at 20:03
  • 1
    One thing to look out for is if you have any extensions that are installed that get merged into core you'll want to disable them before the upgrade. You can find out which extensions are in core by looking in github.com/civicrm/civicrm-core/tree/master/ext (in the "master" drop down under tags select the version you are after) the one that I've seen problems with is flexmailer - so if you have this installed (required by mosaico from memory) you probably want to disable both before starting upgrade. Remove ext code that's now in core. refresh your extension list and reenable. Nov 10, 2021 at 20:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.