FAQ

What dependencies does it have?

By default only mysql and mysqldump are required.

If you want to use compression, one of the following compression tools must be installed: gzip, bzip2, pigz, pbzip2, xz, lzma, lzop or anything else you can use as a compression tool.

If you want to use encryption, openssl is required.

If you want to use automatic file deletion, either tmpwatch or tmpreaper (depending on your OS) is required.

What is so secure about it?

MySQL password leaking via process lists is prevented by the need to use an option file with strict permissions.

File and folder permissions are always checked and mysqldump-secure will instantly complain about insecure permissions.

It makes sure files are written to disk directly with proper permissions instead of doing a chmod afterwards.

Encryption is done via hybrid encryption, so it can use the advantages of both: security and performance. The main advantage is that your private key does not have to reside on the server doing the encryption.

It integrates well with nagios and can periodically be checked if all dumps are done successfully and in a given time intervall, have been compressed, have been encrypted, File deletion was successful, etc.

What operating systems does it run on?

It has reportedly been run on: RedHat, CentOS, ArchLinux, Ubuntu, FreeBSD and OSX.

Can't mysqldump do the same?

Sure, in its core it is simply calling mysqldump, just look at the source of this tool. You will then also notice that there are a couple of hundred lines that do a lot of checks and also make it possible to integrate with nagios.

But aren' there better tools than mysqldump?

There are probably lot's of tools that can backup MySQL databases, if they have a command line version it is possible to integrate them into mysqldump-secure. This is an open-source project, open up a ticket or drop a pull request.