Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

What tool do you suggest for automating and managing backups in MySQL?

I manage a 15GB database and I'm looking for a tool that performs the backup procedure as fast as SQL Server does in a similar sized database?

Using the default MySQL tools is too slow, what do you recommend to speed it up?

share|improve this question

closed as off-topic by HBruijn, HopelessN00b Jan 28 at 8:10

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.

    
You don't mention: Host OS, MySQL version, storage engines used. You cannot get good advice without sharing those details. –  Richard Bronosky Jul 20 '09 at 16:25

5 Answers 5

If it works for 22Gb, it will work for 15Gb. /snark Actually, this will work with any size data set. http://serverfault.com/questions/9074/backing-up-22gb-mysql-db-daily/13310#13310

I don't like tools for this kind of thing. I like processes. I script processes, then I have my own customized tool box.

share|improve this answer

Have you tried xtrabackup? Only supports InnoDB and XtraDB though.

Edit: As SaveTheRbtz has pointed out, it now appears to support MyISAM also.

share|improve this answer
    
quote from wiki "Script provides functionality to backup whole MySQL database instance with MyISAM, InnoDB, XtraDB tables." –  SaveTheRbtz Jul 21 '09 at 1:03
    
xtrabackup itself only supports inno, but percona ship it with innobackupex which is a controller script which manages it –  Tom H Feb 20 '12 at 18:26

I use SQLyog by webyog for my daily MySQL needs.

You can schedule backups to run through the Professional Edition of SQLyog and generally they're tools are a cut above MySQL's.

share|improve this answer

LVM snapshots from Richard Bronosky's answer will work always. If all your tables are innoDB, you may get away with mysqldump --single-transaction --all-databases.

Dump style backups take less space but are generally slower to restore because the indexes need to be recreated. Pick your poison ;)

share|improve this answer

It also depends what you're trying to backup against, if you're trying to protect against hardware-type failures rather than "oh-crap-what-did-I-just-DROP" moments, you can get instant (log based) off-server backups to different hardware with MySQL replication, tools like maatkit can even make your replication lag behind the master to try and prevent against both types of problem.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.