Skip to content

Backups ​

Mintrix keeps two kinds of database backups:

MadeKept in
Scheduled backupsEvery day (or every Sunday) at the time you choose, and whenever you click Create BackupThe app's storage; listed under Settings > Backups
Update backupsBy every update, before it changes anything/opt/mintrix/mysql_backups/

Keep .env with your backups

A backup is only usable with the same APP_KEY, which is in /opt/mintrix/.env. Without it, encrypted settings and two-factor secrets cannot be read.

Scheduled backups ​

Under Settings > Backups:

  • Scheduled Backups turns them on or off. New installations have them on.
  • Frequency and Time: every day, or every Sunday, at that time (in the timezone of Settings > General).
  • Backups to Keep: older ones are deleted after each new backup; 0 keeps all.

Below the settings, a status line shows whether scheduled backups are on, and when the last and the next backup are.

If the server was off or restarting at backup time, Mintrix makes the missed backup within the hour. The dashboard warns when scheduled backups are off, when a backup is overdue, and when the scheduler or the queue worker has stopped. You can hide these warnings under Preferences > Workspace.

Every backup, restore and upload is written to the System Log.

Restore a backup ​

A restore replaces everything

All data in Mintrix is replaced with the backup. Anyone whose account is not in the backup is signed out, possibly you too: sign in again with an account from the backup.

In the panel: under Settings > Backups, click Restore on the backup. Mintrix first makes a copy of the current database, marked Before restore, so you can go back by restoring that one. The restore runs in the background, and the page shows when it has finished. A backup from an older version of Mintrix is brought up to date afterwards.

From the server, for example when the panel does not open:

sh
cd /opt/mintrix
sudo docker compose exec app php artisan mintrix:restore                       # choose from the list
sudo docker compose exec app php artisan mintrix:restore mintrix_2026-10-17_020000.sql.gz

It also makes the Before restore copy first.

Restore an update backup or a file from another server ​

Under Settings > Backups, click Upload backup and choose the file: a gzipped database dump (.sql.gz) of up to 32 MB, such as an update backup from /opt/mintrix/mysql_backups/. It is listed as Uploaded, and you restore it like any other backup.

A larger file goes in from the server instead. In the backups folder its name must look like mintrix_YYYY-MM-DD_HHMMSS-uploaded.sql.gz:

sh
cd /opt/mintrix
sudo docker compose cp mysql_backups/20261017-020000-before-0.5.0.sql.gz \
  app:/var/www/mintrix/storage/app/private/backups/mintrix_2026-10-17_020000-uploaded.sql.gz
sudo docker compose exec app php artisan mintrix:restore mintrix_2026-10-17_020000-uploaded.sql.gz

Move to a new server ​

  1. On the new server, put the old server's .env in /opt/mintrix/ before you install. The installer then uses it, with the same APP_KEY.
  2. Install Mintrix and sign in.
  3. Upload the latest backup under Settings > Backups and restore it.

Keep copies off the server ​

Both kinds of backups stay on the server, so they are lost with it. Download scheduled backups from Settings > Backups now and then, or copy both kinds to another machine together with .env:

sh
cd /opt/mintrix
sudo docker compose cp app:/var/www/mintrix/storage/app/private/backups ./panel-backups
sudo rsync -a panel-backups mysql_backups .env backup@backup-host:mintrix/

Integrated media software