Home > Backup and Recovery Blog > How to Backup Oracle Database with Bacula? Oracle Backup and Recovery Technical Overview.

How to Backup Oracle Database with Bacula? Oracle Backup and Recovery Technical Overview.

1 Star2 Stars3 Stars4 Stars5 Stars
(48 votes, average: 4.92 out of 5)
Loading...
Updated 10th April 2024, Rob Morrison

Oracle backup

What is Oracle Backup and Recovery?

Typically, backup and recovery operations are regarded as one of the key pillars of data protection. This also applies equally to Oracle backup and restore of course, and in today’s world having at least one backup of your database is practically a necessity if you don’t want to eventually lose everything because of a simple error or  similar unfortunate accident.

An Oracle backup is a copy of your data that can be used to reconstruct your original database’s contents. Unless specified otherwise, most backup and recovery documentation refers to a physical backup (an actual backup of all information inside a database) as the “backup” term.

Backup and recovery software for Oracle should ideally be able to protect database contents and instances and RAC – Real Application Clusters. For an enterprise, backup software typically needs to meet all of the IT department’s goals and metrics, including its business’s future estimated requirements, security needs, compliance demands, and more. If not, it is likely that yet a new implementation with different software would be needed before realizing ROI on the initial deployment.

Why is it important to create backups of Oracle databases?

Oracle databases often store some of a company’s mission-critical information—partner profiles, customer records, business data, etc. These same databases are often used to store information that may be necessary for other business workflows. These factors alone show why data stored in Oracle systems is typically highly valuable, and/or sensitive or essential and must be protected.

While plenty of users understand the importance of Oracle backups as a whole, the issue is not necessarily that easy to solve. The amount of data stored in an average Oracle database is rising at an alarming pace, and compliance regulations regarding data retention and security are getting stricter.

This creates an environment where it is genuinely very difficult to keep up with all of the modern-day demands on Oracle database security. In this context, choosing the correct Oracle backup option becomes an even more criticall process, knowing how much is at stake and how much a company can lose if the chosen backup solution fails.

Different elements of Oracle backup and recovery operations

A lot of the existing backup and recovery elements in the context of Oracle databases are working similarly to any other storage type, but there are also some differences to be mentioned in most cases. Here, we are going to go over in detail the main backup types that are often mentioned (full, differential, incremental) and also explain the differences between hot and cold backups.

Main backup levels for Oracle backup tasks

Three well-known backup levels are also applicable to Oracle databases, and most of their conceptual features remain the same in this context.

Full backups. When it comes to Oracle databases, a full backup means copying the entire database contents. Oracle offers different techniques to perform full backups, including Oracle Recovery Manager (RMAN). Full database backups in Oracle capture the entire database at a specific moment in time, including all data files, control files, and the database’s structure.

Incremental backups. An incremental backup in Oracle databases captures all changes made since the last backup, whether it was a full, differential, or incremental backup, much like regular data backup. As for the Oracle-specific nuances – RMAN offers various levels of incremental backups (Level 0 or Level 1), each capturing a specific set of changes. The Level 0 incremental backup is equivalent to a full backup and captures the entire database. The Level 1 incremental backup, on the other hand, captures changes made since the last Level 0 or Level 1 backup, providing a balance between backup size and frequency – an excellent choice for regular backup.

Differential backups. A differential backup in Oracle captures only the changes made since the last full backup, similar to regular data backups. Oracle RMAN can be used to perform differential backups by capturing changes to data blocks since the last full backup (a variation of a Level 1 backup, essentially). It is important to note that differential backups are cumulative and include all changes made since the last full backup, which can make them larger over time compared to incremental backups.

Although the underlying principles of backups are similar for Oracle databases and other forms of data, the tools and methodologies used in the Oracle ecosystem, such as Oracle RMAN, are distinct. To create a successful backup and recovery strategy in an Oracle database environment, it is essential to have a clear understanding of these Oracle-specific considerations. Another topic that bears mentioning in this context is the idea of cold and hot backups.

Cold vs hot Oracle backups

The basic concept of hot and cold backups is very simple. Both of these parameters represent the current state of the target database – “hot” databases are powered on, while “cold” ones are shut down. There are plenty of differences between the two, especially regarding backup processes.

Hot Backup, also known as online backup, is a backup method that allows the Oracle database to remain accessible to users while the backup process is performed. Zero database task interruptions, little to no downtime for users and applications, and suitability for 24/7 environments are some of the most significant advantages of this backup type.

Oracle Recovery Manager (RMAN) creates a consistent database snapshot to perform a hot backup at a given moment in time. Any changes made to the database during the backup process are also captured to ensure data consistency and integrity of the backup.

It’s important to note that the backup process may consume additional system resources, potentially affecting total database performance. Proper planning and coordination are necessary to ensure the integrity and consistency of the backed-up information.

Cold backup is a type of backup operation carried out when the Oracle database is powered down. Being able to produce a clean and consistent snapshot of the entire database at a specific point in time is one of the most significant advantages of cold backups. These backups are generally easier to perform in most scenarios, and the lack of active operations within the database itself greatly simplifies the entire process.

The Oracle database must be offline for the cold backup task to be performed. The process involves copying database files directly while in a powered-down state, ensuring data consistency throughout the database. At the same time, cold backups can directly result from applications and users not getting access to the database when needed. Cold backups are primarily used for smaller databases or situations where downtime is acceptable.

One of the most significant contributors to the choice between cold and hot backups is the downtime tolerance – which is why most of the larger and more complex organisations rely on hot backups due to a general lack of tolerance for database downtime as a whole. Most of these users have more than enough resources to afford better hardware, as well, in an attempt to reduce the performance effect hot backups might take on the overall infrastructure.

It is also a relatively common practice to use both of these backups in tandem, depending on the situation. The needs of a specific business and the compliance regulations they must follow are also significant contributors in this case.

Oracle Backup Strategy

Within the capabilities of Oracle there’s two main backup strategies: RMAN and user-managed.

RMAN, or Recovery Manager, is a solution that is fully integrated within the Oracle database that can perform a variety of backup-related activities. RMAN can be accessed using either the Oracle Enterprise Manager (OEM) or using the command line.

User-managed backups are basic backups that can be performed using a combination of host operating system commands and SQL*Plus recovery commands. All of the backup-related aspects must be defined manually in this case for every backup.

While there are two backup types that are supported, RMAN is the commonly preferred one, so the majority of the Oracle backup capabilities are focused within this backup type.

One major advantage of a RMAN backup is the ability to create backups while the database is open and/or mounted. The backup command itself is also relatively  easy; the prompt itself looks like this:

BACKUP DATABASE;

It is possible to add a number of additions or parameters to this command, for example it can look like this if we also want to include archived logs in the backup:

BACKUP DATABASE PLUS ARCHIVELOG;

Another option that is available with RMAN is the ability to create incremental backups. Incremental backup is a backup type that copies only specific files that were changed since the last backup of any type was performed (depending on the backup type, it can be either cumulative incremental backup or differential incremental backup).

When it comes to commands, the backup prompt is relatively similar (with possible additions in the form of various parameters):

BACKUP INCREMENTAL;

And there’s also the fact that shadow copies/snapshot files can also be created with the RMAN’s incremental backups. For example, the command to create an incremental backup in the fast recovery area can be initiated with the following command:

BACKUP INCREMENTAL LEVEL 1 … FROM SCN

As you can see, there’s plenty of capabilities that RMAN as a native Oracle backup solution can offer. At the same time, it does have its own limitations, and this is where third-party backup solutions come in. But first, we should cover the methodology that is going to be used for the following representation of third-party backup solutions.

Methodology for showcasing different elements of third-party Oracle backup tools

Oracle databases are inherently complex and sophisticated entities. Therefore, it is not surprising that third-party Oracle backup software can be equally challenging, especially in a highly competitive market. This article aims to present multiple backup solutions and explain why customers may – or may not – choose to opt for any of them.

Customer rating

If you need backup software that provides a range of options, public opinion – in the form of customer ratings – can be a very useful factor to consider. You can find customer ratings on various platforms like G2, TrustRadius, and Capterra. Checking customer ratings is a quick and easy way to evaluate public opinion on a specific software solution.

Capterra is a platform that hosts more than 2 million registered reviews across various categories. The platform is committed to maintaining the authenticity of the reviews and does not remove any customer reviews upon the vendor’s request.

TrustRadius has a rigorous process to ensure that all reviews on its platform are authentic. An in-house research team examines each review to guarantee that it provides valuable insights. No vendor can modify or delete customer reviews on TrustRadius.

G2 is another reputable review platform that offers over 100,000 vendors and more than 2.4 million verified user reviews. Their review validation system ensures the complete validity of every review. Aside from reviews, G2 provides multiple other services like tracking, investment, and marketing.

Key features, benefits, shortcomings

When it comes to describing the key features of a software solution, as well as their advantages and disadvantages, it can be a rather difficult task. Backup software is a perfect example of this – it has many features, some of which may only be relevant to a specific audience, making it difficult to determine a solution that fits every single potential customer’s needs. This is also applicable to Oracle backup tools since each software component provides its own set of capabilities to perform tasks that are very similar or identical.

Pricing

Outlining a solution’s essential features, along with their merits and shortcomings, can be challenging. Backup software is a perfect example of this. It offers various features, some of which may only be relevant to a particular audience, making it difficult to determine every prospective customer’s needs. This is particularly true for backup solutions that include Oracle backup support. Each software component provides its own set of capabilities to perform similar or identical operations.

Personal opinion of the author

This category can include different topics, such as a brief summary of the software, an interesting fact that hasn’t been mentioned yet, and any other relevant details. The main goal is to present the author’s personal view on the subject, offering an additional and more subjective perspective on the product.

Third-party software for Oracle backup operations

The original goal of most third-party backup solutions is simple – to provide their services that either match or excel the built-in capabilities in terms of performance and feature set. The four examples below are often considered some of the most prominent backup solutions with Oracle support on the market.

Veeam

Veeam is a well-known multifunctional backup and recovery platform. One of its many capabilities is Oracle integration, which provides plenty of features with which to work. Not only can Veeam be added as an additional backup system to the existing Oracle backup setup (be it with RMAN or via other third-party software), but it can also handle all of the Oracle-oriented backup matters by itself. Veeam is fast, versatile, and can offer multiple valuable features to Oracle users – such as a snapshot-based restore process, instant VM recovery, support for multiple operating systems, and image-level backups.

Customer ratings:

  • Capterra4.8/5 points based on 69 customer reviews
  • TrustRadius8.8/10 points based on 1,237 customer reviews
  • G24.6/5 points based on 387 customer reviews

Advantages:

  • Veeam’s customer support team is well-known for its fast and resourceful help.
  • The solution itself is user-friendly and reliable, with years of experience and satisfied clients to prove it.
  • The first-time setup process for Veeam’s solution can be simple and relatively painless.

Shortcomings:

  • Veeam is a very good solution, but it is by no means perfect, and there are several areas where the solution can be considered lacking – such as cyber security levels and data management.
  • The pricing model of Veeam is far from simple; it has multiple elements, and figuring out the total price can turn out to be a highly complex task very quickly.
  • Veeam’s interface is also not particularly advanced, either. It is not too complicated, but some reports infer it feels like an outdated version of the software, especially compared with newer software examples.

Pricing (at time of writing):

  • The official information regarding Veeam’s pricing is limited on their website. A personalised quote must be requested to receive an accurate price for the services needed. However, Veeam offers a pricing calculator page where users can select the number of environments they want to cover and the planned subscription period.
  • Veeam provides essential information on its pricing through the calculator page. This includes the option to purchase subscriptions for at least one year up to five years and additional discounts with multi-year contracts.
  • Users can choose the appropriate workload type, such as Virtual VM, Cloud VM, Servers, Workstations, M365 Users, and NAS/File Shares (TB). If the “NAS/File Shares” field is not above zero, the “Contact Us” button will not be available.
  • Veeam sells licences in increments of five at a time. For instance, to protect five workloads of Virtual VM, Cloud VM, Server, or Workstation type for a year, the cost is $642. 
  • However, the “Microsoft 365” category requires at least ten users to be selected at once, with a starting price of $306.

My personal opinion on Veeam:

Veeam is a well-known backup and recovery solution that caters to physical, virtual, cloud, and hybrid environments. It has a centralised dashboard that streamlines the management of different backup types, thereby increasing efficiency. However, some industry-leading vendors provide much better security levels than Veeam. Additionally, the pricing model can be confusing as some of its features are priced significantly higher than others without clear justification.

Cohesity

One of the most significant aspects of Cohesity as a backup software is the ability to eliminate data silos by restructuring the existing infrastructure elements in a particular fashion. This allows Cohesity to improve the performance of most systems (including Oracle-based ones), whether they are using cloud storage, physical storage, or some sort of hybrid setup. Cohesity’s backup and restore processes are fast, application-consistent, and use multiple cutting-edge features to improve the overall backup handling process significantly (such as the support for incremental forever backup type).

Customer ratings (at the time of writing):

  • Capterra4.6/5 points based on 49 customer reviews
  • TrustRadius8.3/10 points based on 81 customer reviews
  • G24.4/5 points based on 47 customer reviews

Advantages:

  • The first-time configuration process is not particularly difficult and could be managed by most users.
  • The user interface of the solution is easy to work with.
  • Cohesity’s centralization capabilities make it a rather convenient option when it comes to managing multiple backup processes from the same place.

Shortcomings:

  • There is little to nothing Cohesity can offer in terms of automation capabilities.
  • Backup processes are not as customizable as what most competitors can offer.

Pricing (at the time of writing):

  • Cohesity does not offer any pricing information to the public; the only option to receive such information is to contact the company directly.

My personal opinion on Cohesity:

Cohesity offers a wide range of capabilities, making it an ideal solution for enterprise backup requirements. It can handle diverse types of data and storage environments, delivers speedy backup and restoration performance, and provides an extensive set of backup-specific features. Cohesity’s infrastructure is distinct, featuring a node-like structure that enables effortless and quick scaling up. Moreover, its user-friendly interface makes it more convenient to use than other similar solutions in the market. However, backing up databases with Cohesity can be challenging, and it requires manual intervention due to limited automation available.

Rubrik

Rubrik is an impressive backup and recovery solution with hundreds of clients and years of successful work. Its software is a treasure trove of useful features, capable of working with many different storage and infrastructure types – including Oracle. Rubrik’s capabilities in regards to Oracle are good, with Live Mount support (near-zero RTOs), incremental forever backups, and the capability to completely automate entire RMAN workflows for easy data protection with a certain degree of customization, if necessary.

Customer ratings (at the time of writing):

  • Capterra4.7/5 points based on 47 customer reviews
  • TrustRadius8.8/10 points based on 215 customer reviews
  • G24.6/5 points based on 80 customer reviews

Advantages:

  • Plenty of automation capabilities to choose from, with the ability to customise most of them.
  • A user-friendly and convenient interface.
  • Rubrik also supports many deployment and storage types, offering considerable flexibility for larger and more complex infrastructures.

Shortcomings:

  • Rubrik suffers from a relatively common issue of an overly sophisticated and complex first-time setup process.
  • The lack of detailed documentation and whitepapers makes it challenging to research the specific capabilities of the software.
  • Rubrik is an excellent option for backup tasks, but he lacks expertise in several fields, including Azure backups.
  • Recent security breaches have opened questions about the security of Rubrik’s overall architecture.

Pricing (at the time of writing):

  • Rubrik does not provide pricing information on its official website. To obtain pricing information, one needs to contact the company directly for a personalized demo or one of the guided tours.

My personal opinion on Rubrik:

Rubrik is a comprehensive data management and backup solution that can support businesses of all sizes. It offers many impressive features for data recovery, backup, and protection. Its policy-based management capabilities make it an excellent option for businesses operating in hybrid IT environments. At the same time, the cost of Rubrik’s services might not be affordable for some customers, and the platform’s overall feature set might not be enough for a specific customer range.

Commvault

Commvault serves as a sophisticated interconnected web of capabilities and features, covering not only backup and recovery matters, but also data management and data security. Commvault Cloud (the flagship solution of the company) also supports Oracle in multiple ways – including Oracle data backups and integration with Oracle RMAN, offering both security and convenience of using near-native backup and recovery tools. Other capabilities of Commvault in terms of Oracle integration include easy data mobility, improved security, and eliminated data sprawl.

Customer ratings (at the time of writing):

  • Capterra4.6/5 points based on 38 customer reviews
  • TrustRadius8.0/10 points based on 221 customer reviews
  • G24.3/5 points based on 138 customer reviews

Advantages:

  • Commvault boasts a large number of supported software types and configurations.
  • It can be integrated with many other solutions in the same field.
  • Configuring backup and recovery processes is not a difficult process.

Shortcomings:

  • The first-time setup process is highly complicated and challenging to perform for most non-expert users.
  • Commvault’s logging capabilities are extremely basic and are missing straight-up in some cases.
  • The overall solution has a steep learning curve; it might take a while for an average user to grasp all the features and capabilities.

Pricing (at the time of writing):

  • Commvault does not offer pricing information to the public; the only option to receive such information is to contact the company directly.

My personal opinion on Commvault:

Commvault is a backup solution that caters to the backup requirements of big organisations. It utilises advanced technologies to provide an outstanding user experience. The software can handle different storage options such as cloud storage, databases, VMs, containers, and endpoints, delivering quick and precise backup and recovery features. However, integrating Commvault with cloud storage providers can be costly. Additionally, some of its functionalities do not offer sufficient logging and reporting information, and setting up the software initially can be a complex and time-consuming process.

Additionally, one more third-party backup solution is worth considering in the context of Oracle backup and recovery tasks. The solution is called Bacula Enterprise.

Oracle Backup and Recovery with Bacula Enterprise

bacula enterprise landing page

Bacula Enterprise is an especially secure software solution offered by Bacula Systems that provides comprehensive backup and recovery capabilities. What sets it apart is its unique approach to expanding its own functionality within the same software, thanks to a highly secure modular system implemented by Bacula. This software offers a wide array of features such as advanced backup levels, deduplication and compression, different user interfaces, advanced volume and pool management, Job Control, endpoint features like Bare Metal Recovery for Linux and Windows systems and Client-Initiated Backup. Because if its unusually high security levels, Bacula tends to be used by security-conscious government organizations, defense and research institutions.

Additionally, it provides Snapshot technology, features for MSP and Hosting companies, and customizable protection for Microsoft 365 and other SaaS applications. Bacula is compatible with various storage formats, including physical, public, and private cloud, and it works with almost all tape technology. It also covers containers, VMs, and databases of many different kinds.

Customer ratings:

  • TrustRadius9.7/10 points based on 54 customer reviews
  • G24.7/5 points based on 56 customer reviews

Advantages:

  • Bacula offers plenty of features out of the box, and a built-in module system could provide even more capabilities.
  • Bacula offers multiple security-oriented options for its data backup efforts, including encryption, backup verification, and more.
  • The support for many different storage types and infrastructure variations is also a large contributor to Bacula’s success. It offers the capability to work with databases, servers, VMs, cloud storage, and physical storage.

Shortcomings:

  • Bacula’s own web interface, BWeb, might be somewhat confusing to newcomers due to the sheer number of features available from the start.
  • The initial setup process for more complex infrastructures may take a while to complete.
  • Some of the more specific plugins and modules are not included in the base Bacula subscription and have a separate price tag.

Pricing:

  • To obtain exact pricing data for Bacula, it is necessary to contact Bacula Systems directly because no public information about Bacula’s pricing is available on its official website.
  • However, the website does provide some information about Bacula’s pricing model.
  • Several pricing tiers are available, including BSBE, Standard, Bronze, Silver, Gold, and Platinum. The biggest difference is the number of clients and contracts one can work with using a specific subscription tier.

Performing Oracle backups with Bacula Enterprise:

Essentially a copy of your important data that you’re keeping separately from the original to restore it in case of all kinds of data loss is called a data backup. Any business has some sort of data that they need to protect and don’t want to lose – that includes Oracle database users, as well. Data loss is the main reason why you need to have a backup to keep your Oracle database environment reliable and secure.

Most of the companies using Oracle prefer to have a separate person to manage their Oracle backup operations – this position is called a “backup administrator”. Typically, this person would be tasked with a number of duties, including:

  • Working out a proper backup schedule;
  • Being ready to solve problems that can arise in relation to the whole backup and recovery process;
  • Both thinking through and testing different situations with different kinds of possible hardware or software failures related to data loss;
  • Not directly related to the backup process but still possible tasks are data preservation and data transfer;
  • Being ready to recover in case of data loss of any scale. 

Speaking of Oracle database loss, the wide variety of possible reasons for loss of the database further illustrates that doing Oracle backups is a good thing in general! For example, some of the various causes of data loss could be:

  • Hardware crash;
  • Accidents with mishandling data;
  • Data corruption because of a virus;
  • Errors in the process of data migration from one device or system to another, etc.

There are many ways to backup Oracle databases. Clustered modes provide resilience to hardware issues, and highly available, cloud, and converged infrastructures offer new options for data assurance and freedom along with redundancy. Regardless of these options, Oracle backup remains critical in order to ensure that a small mistake, corruption, or hack doesn’t destroy the critical data residing on even the best infrastructure. Database servers remain a key component of most organizations, and often contain the most critical information for the continuity of operations. The guide that follows will show you how to execute Oracle backup and recovery using RMAN’s SBT functionality, which allows data to stream directly to Bacula Enterprise.

Possible Types of Oracle Backup and Recovery

There are two methods to backup Oracle database:

  • Bacula managed backup using Oracle dump mode. This is quick and easy to set up, but is limited in scope to smaller databases and does not support point-in-time recovery or incremental backups.
  • RMAN managed backup (Oracle SBT mode). Also known as Oracle Recovery Manager (RMAN), it is an original Oracle database server feature, meaning there’s no need to install it manually – it’s already included on the server side. This mode uses the excellent RMAN backup tool and APIs to allow Bacula to initiate more advanced backup modes that support PITR, incremental and differential database backups, and can take advantage of RMAN’s change tracking feature to improve incremental backup performance. It’s also the most user-friendly since RMAN uses one interface for all of the operating systems which makes it a lot less complicated.

Since RMAN-based backup type is the preferred solution, here are some of the most noticeable advantages of using it:

  • Binary compression. This type of compression mechanism is integrated in the Oracle database as a system and its main purpose is to reduce the overall size of an average backup.
  • Automated database duplication. A number of features implemented in Oracle allows for easy creation of your database’s copy using a large number of storage configurations.
  • Incremental backups. This type of backup is keeping and backing up only those blocks which were changed in some way since the last full backup. This backup approach requires far less storage space than the traditional one and adds more flexibility to the restoration process in case of some sort of disaster.
  • Encrypted backups. RMAN can easily encrypt your database using the integrated backup encryption capability. There’s one distinction between creating such backup on a disk and creating that same backup directly on a tape. For disk – the database in question much enable the Advanced Security Option. For tape – RMAN has to use Oracle SBT interface but there’s no need for Advanced Security Option to be enabled.
  • Block media recovery. If the amount of corrupt data is relatively small, you don’t really need to restore the entire backup to fix it – this feature is called block media recovery and can be used without taking the file itself offline, as well.

For this how-to, we’ll be setting up Oracle SBT backups.

Part 1: Configure the Oracle backup and recovery plugin in Bweb

Step 1. In Bweb, configure a new fileset for the job. In the ‘Plugin’ tab on the fileset, select Oracle SBT.

backup oracle database

Step 2. The Oracle backup and recovery plugin is configured primarily on the client side, so in most cases no further configuration is required on in Bweb. The new fileset can be committed.

oracle backup and recovery

Step 2a: Please note the different options to backup Oracle database available if the Oracle plugin (non-SBT) is chosen. The Oracle Plugin Whitepaper covers these alternate methods in depth.

oracle backup

Part 2: Configure the Oracle Database Backup Plugin on the Oracle server

As with other database plugins, the Bacula Enterprise File Daemon and the relevant database plugin component (Oracle SBT in this case) must first be installed on the database server. This places the necessary tools for Bacula backup onto the database server. Please review the Oracle whitepaper or contact Bacula Systems support if you need help with this step.

Step 1: Install the Bacula File Daemon and the Oracle backup plugin packages

Step 2: Install the sbt library into Oracle

/opt/bacula/scripts/install-sbt-libobk.sh install

Step 3: Restart oracle

Step 4: Copy bconsole and make sure Oracle can read it:

cp /opt/bacula/bin/bconsole /opt/bacula/ oracle
cp /opt/bacula/etc/bconsole.conf /opt/bacula/oracle
chown oracle:dba /opt/bacula/oracle/bconsole*
chmod go-rxw /opt/bacula/oracle/bconsole*

Step 5: Edit /opt/bacula/etc/sbt.conf to indicate the job name, bconsole path and configuration, and client name:

client=oracle-fd
job=OracleBackup
bconsole=”/opt/bacula/oracle/bconsole -n -c /opt/bacula/oracle/bconsole.conf”

Fileset and Job examples:

Below are examples of the simple fileset configured in BWeb in Part 1, and a sample job that uses this fileset. For in depth Bweb tutorials, please see the Bacula Systems video documentation:

FileSet {
Name = SBT-FileSet
Include {
Options {
Signature = MD5
}
Plugin = oracle-sbt
}
}

Job {
Name = SBT-Backup
FileSet = SBT-FileSet
Client = oracle-fd
Maximum Concurrent Jobs = 10
Messages = Standard
Pool = Default
Storage = File
}

Part 3: Test Plugin Connectivity and Run Oracle Backup:

Step 1: Test the plugin

/opt/bacula/scripts/install-sbt-libobk.sh test

Step 2: Manually run a backup through RMAN:

RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE sbt;
ALLOCATE CHANNEL c2 DEVICE TYPE sbt;
ALLOCATE CHANNEL c3 DEVICE TYPE sbt;
BACKUP INCREMENTAL LEVEL 0 DATABASE plus archivelog;
}

A typical successful RMAN backup output looks like below, and is an indication that the SBT plugin is installed, correctly configured, and ready to run backups:

[oracle@centos07 ~]$ rman target /

Recovery Manager: Release 12.1.0.2.0 – Production on Thu Mar 23 11:02:22 2017

Copyright (c) 1982, 2015, Oracle and/or its affiliates. All rights reserved.

connected to target database: CENTOS07 (DBID=2213460080)

RMAN> run {

2> allocate channel c1 type sbt;

3> backup database plus archivelog;

4>}

using target database control file instead of recovery catalog

allocated channel: c1

channel c1: SID=44 device type=SBT_TAPE

channel c1: Bacula Enterprise Oracle SBT Plugin 1.0.0.7

Starting backup at 23-MAR-17

current log archived

channel c1: starting archived log backup set

channel c1: specifying archived log(s) in backup set
input archived log thread=1 sequence=23 RECID=1 STAMP=894837644
input archived log thread=1 sequence=24 RECID=2 STAMP=894882191
input archived log thread=1 sequence=25 RECID=3 STAMP=894882226
input archived log thread=1 sequence=26 RECID=4 STAMP=894924027
input archived log thread=1 sequence=27 RECID=5 STAMP=912953744
input archived log thread=1 sequence=28 RECID=6 STAMP=912955548
input archived log thread=1 sequence=29 RECID=7 STAMP=912955554
input archived log thread=1 sequence=30 RECID=8 STAMP=912955561
input archived log thread=1 sequence=31 RECID=9 STAMP=912955564
input archived log thread=1 sequence=32 RECID=10 STAMP=912964429
input archived log thread=1 sequence=33 RECID=11 STAMP=939375680
input archived log thread=1 sequence=34 RECID=12 STAMP=939380476
input archived log thread=1 sequence=35 RECID=13 STAMP=939380575

channel c1: starting piece 1 at 23-MAR-17

channel c1: finished piece 1 at 23-MAR-17

piece handle=07rvrjqv_1_1 tag=TAG20170323T110255 comment=API Version 2.0,MMS Version 1.0.0.7

channel c1: backup set complete, elapsed time: 00:00:25

Finished backup at 23-MAR-17

Starting backup at 23-MAR-17

channel c1: starting full datafile backup set

channel c1: specifying datafile(s) in backup set

input datafile file number=00001
name=/u01/app/oracle/oradata/CENTOS07/datafile/o1_mf_system_c2kyrs39_.dbf

input datafile file number=00003
name=/u01/app/oracle/oradata/CENTOS07/datafile/o1_mf_sysaux_c2kyqoql_.dbf

input datafile file number=00004
name=/u01/app/oracle/oradata/CENTOS07/datafile/o1_mf_undotbs1_c2kyt7s9_.dbf

input datafile file number=00006
name=/u01/app/oracle/oradata/CENTOS07/datafile/o1_mf_users_c2kyt6j4_.dbf

channel c1: starting piece 1 at 23-MAR-17

channel c1: finished piece 1 at 23-MAR-17

piece handle=08rvrjrp_1_1 tag=TAG20170323T110321 comment=API Version 2.0,MMS Version 1.0.0.7

channel c1: backup set complete, elapsed time: 00:00:56

channel c1: starting full datafile backup set

channel c1: specifying datafile(s) in backup set

including current control file in backup set

channel c1: starting piece 1 at 23-MAR-17

channel c1: finished piece 1 at 23-MAR-17

piece handle=09rvrjth_1_1 tag=TAG20170323T110321

comment=API Version 2.0,MMS Version 1.0.0.7

channel c1: backup set complete, elapsed time: 00:00:03

Finished backup at 23-MAR-17

Starting backup at 23-MAR-17

current log archived

channel c1: starting archived log backup set

channel c1: specifying archived log(s) in backup set

input archived log thread=1 sequence=36 RECID=14 STAMP=939380664

channel c1: starting piece 1 at 23-MAR-17 channel c1: finished piece 1 at 23-MAR-17

piece handle=0arvrjto_1_1 tag=TAG20170323T110424 comment=API Version 2.0,MMS Version 1.0.0.7

channel c1: backup set complete, elapsed time: 00:00:01

Finished backup at 23-MAR-17 released channel: c1

Oracle Database Recovery

While a backup on its own is incredibly important – it’s also worth mentioning that the  recovery functions are, of course, a vital part of the whole process in the Oracle database backup and recovery cycle. Just having a backup with no means to restore is of no use to anyone.

But first we have to cover some basics. As we said earlier, there are a large number of possible circumstances that could leave you needing to recover your database. For example, these could be a number of various hardware failures and firmware issues:

  • Block corruption;
  • Data loss;
  • User error;
  • Issues with upgrading;
  • Natural or unnatural disaster.

You’ll have to connect to the recovery catalog first if you want to either restore or recover a database using RMAN. The next step is to allocate channels to either tape or disk. The purpose of recovery catalog is to provide all kinds of information about database backup or backups. You can also configure a separate control file for similar purposes. The difference between restore and recover commands is that “restore” does exactly what you’d expect – restores database files, but “recover” is somewhat different since it applies all of the changes recorded in the archived data logs.

Oracle database backup and recovery as a process is able to provide several recovery options, including:

  • Specific Point Recovery

When you’re using Oracle, the recovery process is not so complicated. You can easily restore the entire database and after that use “recover” commands to choose the specific point to which you want your database to be recovered. There are also several other options included aside from the basic complete recovery if you’re using RMAN – you can bring the state of your database to a specific point in time or you can match its condition to specific archive log.

  • Tablespaces/Datafiles/Blocks Restoration

If your database includes a lot of tablespaces – you can choose this recovery mode to limit the database downtime only to tablespace users that were using now damaged files. In general, restoring tablespaces is a bit more complicated than the usual restore database function since you can’t recover specific tablespace after the restore. That’s why a backup is advised straight after restoring those tablespaces. One more specific when using RMAN is that you’ll be able to provide both block number and datafile number, thus making the recovery process easier.

  • Data Recovery Advisor

Oracle’s service also includes a feature called Data Recovery Advisor which you can bring up if you’re having problems with one or several of your database files. This advisor is able to provide you with both the repair script based on your database and can show you how much you can recover in your current situation, as well. You can also quite easily enable the provided script right after launching the advisor.

However, Oracle backup management is not just about keeping up your retention policy, it can also be used to keep track of which backups you can use for restore operations at a given moment. There are several approaches to this task:

The first approach is strictly for retrieving a list of available backups, and it can be done with little to no effort with a LIST command that RMAN has. This particular command retrieves a table of backup sets, with additional information about each of those, such as the creation date, the backup type, the specific parts of a database that were copied, and more.

The second approach to Oracle backup management is centered around getting rid of obsolete files – it is mostly controlled by only two parameters (RECOVERY WINDOW and REDUNDANCY, for number of days for a retention policy and number of backups, respectively), and consists of three possible options:

  • Expire. Controlled by REDUNDANCY and RECOVERY WINDOW,  usually a part of a backup script or backup job with an EXPIREDATE parameter.
  • Delete from catalog. Backup history gets deleted with a chance for recovery if it was accidental or if the data in question is needed.
  • Delete expired. A routine cleanup task that deletes obsolete backups and archive logs.

While the majority of Oracle backup operations deal with backups of the entire database, the option to restore specific objects is also on the table, so that any object within your system can be backed up or recovered separately from the rest at any given moment. As with the previous topic, there are several ways to approach the subject:

  • Oracle Data Pump. Data Pump is an Oracle utility that can provide both export and import of specific objects or tables. It is worth noting that the DDL (Data Definition Language) is also included, meaning that the entire structure of the table or procedure in question would be recreated with the object or table that is being restored. This can also be used to restore just the structure with zero data in it to be used as a template or a backup measure.
  • Using Table/Schema levels to copy specific objects. Singular tables can be recovered within Oracle using the CREATE command, it will include tablespaces with no logging – meaning that you’ll only be able to restore data, without any of the structure such as indexes, triggers, constants, etc.

Final Thoughts on Oracle Backup and Recovery

Because the Bacula Enterprise Oracle SBT plugin leverages RMAN for advanced backup features, some additional configuration must be done in Oracle.

Retention period:

When using RMAN SBT plugin, the backup retention defined in RMAN should match the Bacula volume or job retention.

Archive log:

In order to use the RMAN backup mode, the database must be in ARCHIVELOG mode.

Recent developments and updates of Oracle

Oracle itself is a rapidly developing technology that regularly rolls out new features and capabilities. Two of the most recent developments of Oracle as a whole are the Oracle Enterprise Communications Platform and a generative AI service called Oracle Cloud Infrastructure

Oracle Enterprise Communications Platform acts as a centralized hub that connects Oracle’s applications with other communication channels – be it social media platforms, IoT devices, or traditional networks. The platform in question streamlines communication and improves overall efficiency while offering a better customer experience and a transparent view of the entire communications pipeline. The latest article on the topic of ECP can be found here.

Oracle Cloud Infrastructure Generative AI Service offers Oracle’s take on the generative AI power, providing its customers with capabilities to perform machine translations and content generation in the form of videos and images, as well as a multitude of text formats the model can work with. The service in question now powers the Oracle Health Data Intelligence – a combination of applications, services, and analytical tools built specifically for the healthcare industry. The article on this particular topic can be found here.

Oracle’s technical side is just as active, providing security upgrades and critical patches. The next critical patch is planned to be released on April 16th, 2024. More information about the “security”-oriented information about Oracle can be found here.

Best practices and common issues or Oracle backup and recovery operations

Oracle backup operations have plenty of their own unique aspects and details, but the majority of best practices for these types of backup operations are very similar to what someone would recommend for regular backup operations. Here are a few examples:

  • Backup performance monitoring.
  • Testing for both backup and recovery procedures.
  • Consistent backup schedule based on the company’s needs in terms of RPOs and RTOs.
  • Data encryption as a mandatory element of a backup strategy.
  • RMAN-based backup and recovery tasks are highly recommended.
  • Keep and monitor the creation of documentation for all the backup procedures.

This list is far from exclusive, but it should provide enough of an example of how most of the best practices for Oracle backup tasks are very similar to how most backups work, in general. The list in question also serves as a good representation of how some of the most common issues with Oracle backups appear. Next, we are going to use the previous list as an example:

  • Failure to perform backup performance monitoring on a regular basis creates undetected problems that inevitably accumulate over time, and the threat these issues hold over the client’s infrastructure grows, as well.
  • The lack of regular performance tests for both backup and recovery tasks creates a situation where the user never knows about a potential issue with either of these processes until it’s too late. The backups themselves may turn out to be unusable, corrupt, or incomplete when the user least expects it.
  • Infrequent backups may be the direct cause of a data loss event if some sort of accident happens between two backup operations. The same logic applies to improperly calculated RPOs and RTOs. Failure to analyze the company’s needs properly would be the direct cause of a data loss if some sort of accident occurs and the backup would not be able to alleviate most of its effects.
  • Unencrypted backup files can be deleted or modified by a malicious entity, rendering the entire backup plan useless.
  • Reliance on a non-RMAN backup operations leaves a lot of potential openings for backup failure, incomplete backups, and plenty of other issues that stem from the lack of integration with Oracle as a system.
  • Lack of detailed documentation about backup procedures and schedules can be a massive issue in critical situations, creating confusion, inefficient recovery efforts, and even potential data loss.

Final Thoughts on Oracle Backup and Recovery

Oracle databases are sophisticated enough on their own, and the topic of performing correct database backups can be just as complex in comparison. This article went over multiple aspects of Oracle backups, including definitions, backup types, built-in capabilities, third-party options, and even examples of how specific operations work.

An average Oracle backup may include one or several elements in the process, including:

  • Online (hot) backups. Only possible for up-and-running databases, includes plenty of nuances and risks.
  • Offline (cold) backups. Can only be performed when the database is turned off.
  • Import and export backups. The logical part of the backup task (serve as a record of where every single database element is stored), as a counterpart to the physical backups that most third-party solutions make (back up every single part of the database).
  • RMAN backups. Handles most of the backup operations with Oracle, is a preferred backup method for most conventional situations.

While backup of complex Oracle environments can be challenging to work with, the importance of backup and recovery processes for Oracle databases in enterprise environments cannot be understated – which is why backups are usually a necessity and not a recommendation.

Please consult Bacula’s Oracle Backup whitepaper and Bacula Systems Support if you need more information, assistance, or have questions after reading this Oracle backup and recovery guide.

About the author
Rob Morrison
Rob Morrison is the marketing director at Bacula Systems. He started his IT marketing career with Silicon Graphics in Switzerland, performing strongly in various marketing management roles for almost 10 years. In the next 10 years Rob also held various marketing management positions in JBoss, Red Hat and Pentaho ensuring market share growth for these well-known companies. He is a graduate of Plymouth University and holds an Honours Digital Media and Communications degree, and completed an Overseas Studies Program.
4 Comments
  1. Adam
    Adam

    I used to think that it’s hard to backup oracle database. But with Bacula plugin it’s easier that ever to do oracle backup and recovery. Also you can look through Bacula oracle backup whitepaper to learn more details.

  2. George
    George

    That’s a great step-by-step oracle backup and recovery tutorial with the definition of oracle backup types.
    If you want to backup oracle database you should check this post. Just follow the steps or contact support if necessary.

  3. Gary
    Gary

    Oracle backup is a surprisingly complicated process that might seem too sophisticated for some people. This article did a great job in describing all of the necessary steps with a lot of details.

  4. Kaylee
    Kaylee

    With an Oracle backup and recovery process this complicated – we’re lucky to have RMAN with its unified interface capability. It’s hard to imagine an Oracle backup process with several different interfaces that you need to get through every time.

Leave a comment

Your email address will not be published. Required fields are marked *