"Database recovery has failed"

If you are trying to perform a disaster recovery and get the message “The Backup Exec Device and Media Service could not start because the database recovery has failed”, where should you start looking for more information?

When Backup Exec is running normally, it uses the Microsoft SQL Server 2005 instance to store its configuration. Because you don’t want to use the SQL Agent to backup Backup Exec’s SQL instance, the Backup Exec Database is routinely dumped to a file (BEDB.bak), which will be included in the filesystem backup. The SQL .mdf and .ldf files won’t be included, as they’re automatically excluded, and they’d be locked in use anyway. There should also be some $4idr files from the initial installation in there too.

When you do a disaster recovery on a Backup Exec server, there’s no working SQL instance, as the .mdf and .ldf files are missing. The BE Server service notices this (somehow), and will attempt to recover the SQL instance, by restoring from the $4IDR files and the BEDB.bak file.

TheĀ error message is reported when Backup Exec cannot recover the SQL instance from the BEDB.bak and $4idr files.

The database recovery log can be found in the Backup Exec Logs folder, called dbrecover.log. This provides detailed information on the recovery process.

Installations that have been upgraded from older versions of Backup Exec may look in the wrong folder by default for the recovery files.