1. Prepare New Server
Install Newest Version
The first step is to install a fresh version of Deskpro using any of the methods described in this manual. Use the navigation menu to the left to find the guide that suits you best.
Reset Deskpro (New Server)
You now have a simple, initial Deskpro running on a new server. Since you won’t actually be using this temporary/empty helpdesk instance, you must delete it.
From the command-line:
cd /path/to/deskpro /path/to/php bin/console install:clean --keep-config # Example on Linux cd /opt/deskpro /usr/bin/php bin/console install:clean --keep-config # Example on Windows cd C:\deskpro "C:\Program Files\PHP\7.0\bin\php.exe" bin\console install:clean --keep-config
Running this command will completely delete the empty Deskpro installation and prepare it to accept the existing installation that you want to move here.
2. Disable your live helpdesk
Admin > Setup, turn off your helpdesk so no new tickets or other work is done on it.
3. Export your MySQL database
Next, you need to move your MySQL database. You can do this by first making a database dump on the old server, and then importing the dump on the new server.
Old server: Make a backup
mysqldump --opt -Q --hex-blob -u<user> -p<pass> <dbname> > db-backup.sql
Move your MySQL database
You now need to move the database dump (db-backup.sql) from your old server to your new server (e.g. via SFTP). You may wish to gzip/zip the export to make the transfer quicker.
Import your MySQL database on the new server
You now need to import the dump into the empty database you cleaned in the 2nd step. Please check that the database is completly empty (i.e. no tables at all). If there are any tables, the process will fail.
mysql -u<user> -p<pass> <database> < db-backup.sql
You can confirm the database username, password and database name inside the
config/config.database.php config file.
If you have a seperate database server, you can simply copy the
config/config.database.php file from your OLD server to your NEW server. Make sure to change the database name -- you don't want to import over top of your existing database!
config/ files on the new server
If you have imported your database into a different MySQL database than the one you have defiend in
config/config.database.php, then you need to edit that file and set the proper database name.
If you have a data/encryption-key.bin file on your old server, copy it to the config/ directory.
attachments/ to your new server
If you have attachments/blobs stored in the filesystem, you will need to move or copy the
attachments/ directory from the old server to this new one.
If you are doing an upgrade from V443 to V5, the attachments folder on the older server will be labelled
\data\files- this changes in V5, so you will need to copy the contents of that folder over to
If you are not storing blobs in the filesystem (the directory will be empty), you can skip this step.
6. Run database upgrade on the new server
The version of Deskpro you had on your old server may not be the same as the newest version you just downloaded. You need to run the following command to make the system update your database so its using the right schema:
cd /path/to/deskpro /path/to/php bin/console dp:upgrade # Example cd /opt/deskpro /usr/bin/php bin/console dp:upgrade # Example on Windows cd C:\deskpro "C:\Program Files\PHP\7.0\bin\php.exe" bin\console dp:upgrade
You have now migrated. Login to Deskpro and confirm the interface is functioning and there are no errors in the admin interface. You can then disable your old server.