Sql server backups very slow

How can I estimate the time of a full backup for a 30gb database?

In this moment it takes about 50 minutes. Can we improve that?

Thanks


Solution 1:

To add a bit and summarize other responses:

  • Using compression will speed up the backup (which is read some then write some - reduce the 'write some' and you speed things up) but at the expense of some extra CPU. You can combine backup compression with resource governor in 2008 to limit this. Using compression also speeds up restores (read some then write some again) - which can be fantastic for reducing downtime in a disaster recovery situation.
  • Not using the same drive for database files and backups. Apart from the contention issues (which will vary depending on the I/O subsystem), this is a disaster in the making. The worst case of data-loss I ever saw was when a 3rd-party tech accidentally formatted the drive that had the database AND the only backups on it
  • Using a striped backup set. If you can backup the database to multiple backup files, then the I/Os are round-robined across the backup files. If you have the backup files on separate storage, you can effect massive performance gains.
  • Tune some of the more advanced parameters like BLOCKSIZE, MAXTRANSFERSIZE, BUFFERCOUNT

The fastest backups I've ever seen are at a customer of ours, Bwin, in Vienna. They can backup 2TB in 36 minutes. See my blog post about this at High-end backup compression numbers.

Have a look at this SQLCAT PDF, specifically:

  • Section 4, Page 71: Tuning the Performance of Backup Compression in SQL Server 2008
  • Section 1, Page 15: Tuning Backup Compression Part 2

Hope this helps!

Solution 2:

Have you cleaned out your MSDB lately? Good article by Brent Ozar as to what ramifications this has on your db's and backups

http://www.brentozar.com/archive/2009/05/brents-backup-bottleneck-msdb/

Solution 3:

What version of SQL server are you running? 2008 can do backups with compression that can dramatically increase backup speed. One of my clients backups went from an hour to 10 mins once we turned on compression in the backup job.