How to view and extract Plesk backups

Have you ever had a minor developmental nightmare and needed quick access to a Plesk backup? Lost some data or needed a reference point and just wanted to get at a database's SQL without having to do a full restore? Perhaps you've just wondered what a Plesk backup was & what is in it?

What is it?

Having worked exclusively with cPanel in the past, it was a bit of a shock to find that Plesk backups are not a simple gzipped dump of the files and database. Instead, Plesk uses a multi-part mime-encoded file which is usually also packaged in an archive. This makes it much harder to extract the various parts if you don't want to do a full restore.

Getting inside

The first step to extracting a Plesk backup is to unzip it. I always use the windows utility 7zip as this can handle pretty much all forms of archive, and it doesn't matter if the backup is zipped, tarred, or gzipped.

If small enough, the resulting file can be opened in your email client. Because mime is an email format, the multi-part mime-encoded file will be opened with the various parts as though they are attachments to an email. I tried with Mozilla Thunderbird and although it worked, it was very unstable and didn't really provide a way to access the various parts/attachments.

Instead I use UUDeview which is a great tool for encoding and decoding mime and other binary files. Download and install the tool, then launch UUDeview. Click the "Add" button, and navigate to your newly extracted backup file. Next press preview and UUDeview will show you all the components of the backup which are available and which ones can be successfully decoded.

From the preview you can select and deselect the components you want to decode, and choose the path where you want the decoded files to be saved. Hit Go! and the magic happens :) I have found this generally works really well for extracting and decoding the mysql database dump. However, it doesn't tend to do so well at extracting the files.