When working productively you should back up the data and configuration of Part-DB regularly to prevent data loss. This is also useful, if you want to migrate your Part-DB instance from one server to another. In that case you just have to back up the data on server 1, move the backup to server 2, install Part-DB on server 2 and restore the backup.
Part-DB includes a command
php bin/console partdb:backup which automatically collects all the needed data (described below) and saves them to a ZIP file.
If you are using a MySQL/MariaDB database you need to have
mysqldump installed and added to your
To back up all possible data, run the following command:
php bin/console partdb:backup --full /path/to/backup/partdb_backup.zip.
It is possible to do only partial backups (config, attachments, or database). See
php bin/console partdb:backup --help for more infos about these options.
There are 3 parts which have to be backup-ed: The configuration files, which contains the instance specific options, the uploaded files of attachments, and the database containing the most data of Part-DB. Everything else like thumbnails and cache files, are recreated automatically when needed.
You have to copy the
.env.local file and (if you have changed it) the
config/banner.md to your backup location.
You have to recursively copy the
uploads/ folder and the
public/media folder to your backup location.
If you are using sqlite, it is sufficient to just copy your
app.db from your database location (normally
var/app.db) to your backup location.
For MySQL / MariaDB you have to dump the database to an SQL file. You can do this manually with phpmyadmin, or you use
mysqldump to dump the database to an SQL file via command line interface (
mysqldump -uBACKUP -pPASSWORD DATABASE)
Install Part-DB as usual as described in the installation section, except the database creation / migration part. You have to use the same database type (sqlite or mysql) as on the back-up server instance.
Copy configuration files
.env.local, (and if existing)
config/banner.md from the backup to your new Part-DB instance and overwrite the existing files there.
uploads/ and the
public/media/ folder from your backup into your new Part-DB folder.
Copy the backup-ed
app.db into the database folder normally
var/app.db in Part-DB root folder.
Recreate a database and user with the same credentials as before (or update the database credentials in the
.env.local file). Import the dumped SQL file from the backup into your new database.