Oracle RMAN Protection with Veeam
Updated: Aug 23, 2021
Much like protection for SQL Servers, that we covered in the last post, there is typically a line in the sand on who is responsible for protecting Oracle databases within larger organizations. It is either the Oracle database administrators (DBAs) or the Data Protection team. Unlike SQL though, it is much less of a power struggle to determine who is responsible. This is because Oracle makes it simple for DBAs to take ownership of database protection through the RMAN (Oracle Recovery Manager) utility.
What is Oracle RMAN?
As the name implies RMAN is a tool built into Oracle that enable DBAs to easily manage database backups and recoveries. It has been part of Oracle for over 20 years, and it comes at no additional cost. Through the command-line of RMAN DBAs can easily trigger full database and archivelog backups. Protecting archivelogs allows databases to be recovered from any particular point in time, and it allows the databases to be protected in hot backup mode, meaning the database does not need to be shutoff during backup. If you do not protect the archivelogs (noarchivelogs) then the database has to be shutoff during backup. In addition, from the RMAN command-line it is simple to recover whole databases or just a tablespace partition. RMAN is the recommended backup method for Oracle databases, so understandably Oracle DBAs would be a little confused if you came knocking on their door asking to start protecting their databases.
Why am I reading a blog from a backup vendor then?
Despite Oracle offering their own backup and recovery tool for DBAs, it is still crucial that any enterprise level backup solution plug-in to RMAN. It is the data protection team's responsibility to ensure all workloads are meeting required RPOs, and that data is recoverable in an outage, disaster, ransomware attack, etc. Veeam offers an Oracle RMAN plug-in that provides the best of both worlds. It enables DBAs to create backups and restores as they've always done through RMAN, while giving the data protection team insight into those backups. All while never speaking a word to each other! How great is that?
Veeam Plug-in for Oracle RMAN in Depth
Oracle DBAs simply need to install the Veeam RMAN plug-in on their servers and go through a basic setup wizard, where they'll enter the Veeam server, credentials and select Veeam repositories to be the destination of backups. As you can see below, the Veeam plug-in will then update the backend RMAN configuration settings, enabling DBAs to use the same RMAN backup and restore commands they're accustomed to.
Once the Veeam Plug-in is installed, the data protection team will see all RMAN backups in the Veeam console. As you can see below, when an Oracle DBA triggers a RMAN backup command the Veeam plug-in is utilized, and the Veeam admin will see the backups taking place on the backup server.
RMAN> backup database plus archivelog;
RMAN backup statistics seen in the Veeam Console.
Oracle DBAs have many tools available to them thanks to RMAN. For example, prior to restoring a database, they can check to see if the current database is valid by checking for any missing files. In addition, before performing a restore DBAs can validate the backup itself is not missing any database files. This will look at the backup file on the Veeam repository and verify it is recoverable and has the proper files in place.
RMAN> restore database validate;
Now, you could run a restore with peace of mind, knowing that the point-in-time isn't corrupted. As you can see below, when an Oracle DBA triggers a restore from the RMAN command-line, RMAN knows to pull data files from the backup on the Veeam repository.
RMAN> restore database; RMAN> recover database;
The Veeam plug-in for RMAN offers more than just visibility into backups the Oracle database team is taking though. Veeam admins also have the capability to easily restore databases from the Veeam console. In a situation where the DBA doesn't show up for work or is locked out of their machines in a ransomware attack, the Veeam admin can trigger a restore from the backup server. They simply select the point-in-time and choose to restore the database to the original or alternate location.
It is important to note, that Oracle DBAs have the ability to restore more granularly than the entire database with RMAN. They can restore a specific tablespace or tablespace partition. The same way you can validate a database before restoring it, you can do the same for a tablespace. As you can see below, restoring the tablespace from RMAN pulled the data from a Veeam repository.
RMAN> validate tablespace users; RMAN> restore tablespace users;
It is much more common for Oracle DBAs to own backup and recovery of their databases because RMAN is such a proven and effective utility. That does not mean the data protection team shouldn't be part of ensuring these workloads are protected though. It's important an enterprise backup solution provides levels of protection across all the critical workloads in an organization. An ideal data protection solution should allow Oracle DBAs to backup and recover their databases as if a third party tool isn't involved, while also providing visibility into the protection of Oracle databases to the backup team.