Simplifying Backups with Zmanda Recovery Manager

 in
An easy-to-use yet comprehensive backup and recovery solution for MySQL databases is at the top of every DBA's wish list.
Zmanda Management Console

The ZMC is a Web-based interface that acts as a control panel for managing the backup and recovery process end to end. Each major function (for example, Backup, Monitor, Report, Admin and Restore) is represented by a tab and corresponding panel in ZMC's interface. A key concept to understand while using the ZMC is that of a “backup set”. A backup set defines a group of databases or tables in a database on a MySQL server. Once a backup set has been defined, a ZMC user can configure various actions for that backup set. To help you get a feel for ZRM, the following sections highlight ZRM functions accessible through the ZMC.

Backup

ZRM provides several ways to back up MySQL. Important factors to consider when choosing the best way to back up a MySQL database include database availability during backup and the size of your database.

Logical backup should be considered if you're looking for flexibility. A logical backup captures the output of the mysqldump utility and supports all MySQL storage engines except NDB. You can restore a logical backup to a platform different from the original. For example, a backup of a MySQL database running on an RHEL x86 system can be restored to a MySQL database running on a Solaris Sparc system. However, the flexibility of a logical backup comes at a price. MySQL tables are read-locked during backup. Also, restoring a large database can be slow, as SQL statements are used to re-create the database. Furthermore, the size of the backup can be larger than the actual database or table being backed up.

Raw backups should be considered if you want minimal database downtime or if your database size is really large. Raw backups can take advantage of filesystem-level snapshots to shorten backup times. Also, the backup size of a raw backup is the same as the size of the data being backed up, but a raw backup is restrictive because it can be restored only to the exact MySQL server version on the same kind of platform. If you have a large database and/or high transaction volume, you should consider using the quick snapshot option to reduce backup time further, because the filesystem snapshot becomes the backup and is not copied to the ZRM server. Note that on Linux, LVM snapshotting is supported only for local MySQL backups.

ZRM makes it easy to run a mix of full or incremental backups. Full backups include all data in a database, whereas incremental backups capture the changes since the last successful backup. Incremental backups require that binary logging is enabled on the MySQL server.

If data security is a requirement, ZRM can utilize SSL for remote backups, and it can encrypt backup images using standard encryption tools, such as GnuPG.

I tested ZRM's backup functionality by running variations of full and incremental, logical and raw (with the quick snapshot option) backups of a million-record database table. The backups completed without any problems, and I was able to verify this using the summary report page under the Report tab in the ZMC.

Monitoring

ZRM's monitoring function presents valuable information about the most recently run backup job as well as about currently running jobs. Information includes how much time the backup took, backup size and any warning or error messages. This feature was very helpful when tracking the progress of long-running backup jobs.

Reporting

ZRM provides excellent reports that analyze the details about backup and restore jobs, including summary reports, custom reports, predefined reports and data integrity reports. ZRM Enterprise edition provides nine predefined reports and allows customized reporting using 30 preset data fields. You can use ZRM's reporting data within other applications via RSS feeds. You also can configure ZRM to send e-mail alerts about the status of backup jobs.

I found the Backup Application Performance Report to be quite useful, because it provides stats about the amount of time that tables were read-locked and the total backup time. This information could help a DBA schedule backups to avoid peak periods of database usage.

Administration

ZMC's administration function lets you define and manage users, manage backup sets, set up ZRM site defaults and customize ZMC preferences. ZMC implements role-based access control where users can be defined as an operator or an administrator. Administrators can manage all backup sets on the ZRM server; however, operators can manage only the backup sets they own.

______________________

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState