Backup and Restore

Zammad comes with a collection of scripts for easy backup & restore for default installations. These scripts are located within /opt/zammad/contrib/backup.

Warning

⚖️ Important things to note beforehand

These scripts do not come with any warranty and may not work in your specific use case. This depends on the configuration and installation type of your instance.

You should always regularly test and review the functionality! If the script functionality or scope is not working for your cases, feel free to copy these to a independent location and adjust the scripts as needed.

Getting Started

Before you continue, please also note the listed limitations to save your precious time.

🔨 Adjust script settings

Learn more about configuration options for backup and restore to see scopes better.

🗃️ Create Backups

How to create full dumps of your Zammad installation.

🗄️ Restore Backups

Update went wrong and you need to go back? How to restore your instance on a new or the same host.

🔀 Migrating to new hosts

This is a general summary on how to best migrate Zammad from host to host. We’ll reference to backup creation and restoration as needed.

🔥 Troubleshooting

Things hit the fan? This page might help you out of that pit.

🤝 Helper scripts

These scripts may be helpful if Backup & Restore does not work as expected. However note that these are potentially destructive.

Limitations

Please note the following limitations which may affect script functionality or availability.

  • Restoration via script on docker and source code based installations may not work and is out of scope of this documentation as of now

  • Backup & Restore is only available for PostgreSQL and MySQL / MariaDB like installations

  • Starting with Zammad 5.0 the scripts require user & password authentication. This is supported by most of our installation types

  • Backup & Restore is always a full dump of everything (no incrementals)

  • Restoring or backing up specific information (e.g. Tickets, Users, …) is not supported

  • Switching / Converting database installations is not possible
    Refer this guide to manually switch databases: Migrate to PostgreSQL server
  • Environmental settings (like e.g. Configuration via Environment Variables) are not backed up and thus require you to manually set them on a new host

  • Restoration into a older Zammad version is not possible nor supported

  • Do not attempt to restore backup files from custom scripts with the provided scripts by Zammad. This is most likely subject to fail or bring issues you may discover too late.