Upgrade/backup steps - SuiteCRM8


Here I want to share a clear list of steps to follow when a new version of SuiteCRM 8 comes up
(like the newest 8.0.4) or when you are in need to reinstall the same version but want to keep
same db structure/info as well customization of the old one.

Let’s pretend old db=old_db and new db=new_db.

My steps:

  1. Install new version creating a new db (new_db)
  2. Login to the new version and adjust admin password, perform a quick repair and logout
  3. Backup old db (old_db) via phpMyAdmin
  4. Restore old_db over the new_db via phpMyAdmin
  5. Copy old version custom directory (…/public/legacy/custom)
  6. Overwrite new version custom directory (…/public/legacy/custom)
  7. Login to the new version, perform a quick repair and it’s done

Can somebody confirm the goodness of the above steps?
Are they enough to get back the same the same old db, custom fields and other kind of customization?

Thanks for letting me know

I’ve been simply copying the new files over the old files when a new minor version comes out (say, 8.0.0 to 8.0.1). Then Quick Repair and Rebuild.

I am not saying that this is a supported route, but if you can test on a clone, or on a system inside a VM that you can revert in case of emergency… I think it is much simpler, and likely to work well.

Hi pgr,

Thanks for replying.

Could you clarify “copying the new files over the the old file”? Does it mean you download the new version (8.0.4) and unzip the files over the old one (<8.0.4)? And after that, what about the old db? How will it be
linked to the new version? And what about customization?

Beside my steps are also meant for the same version in case something happen, as happened to me,
and there is no way to repair and need a new fresh installation.

Let me know, thanks.

Yes, I mean basically unzipping the new stuff over the old stuff. The database is not affected. And the customizations will be ok, as long as they are upgrade-safe (everything in the custom folder).

There are exceptions where this process might not be completely functional. Sometimes upgrades involve some extra work done by scripts, say updating the database structure, for example. But I believe this is not currently happening in the minor 8.0 versions, otherwise we’d be seeing upgrade packages for these versions… but we’re not.

Ok that’s clear, but I am wondering about the database, since you overwrite all the old files with the new
ones, how the new version link to the old db? Do not we have a configuration file that specify the name
of the db?


That configuration you mention is in config.php

This file is not on Github, it is not part of the zip, it is created by SuiteCRM at runtime, if not present already.

Hi pgr,

Thanks for replying.

One question regarding the upgrade to the major version (8.1) from 8.0.x.
Do you still follow steps you stated before or these instructions ? → Upgrading :: SuiteCRM Documentation


I believe so… but I never actually did it. Will try it this week, probably.