- Oracle Image-Level backup
- Veeam Plugin for Oracle RMAN
- Granular item restore
Veeam can back up Oracle databases via image level backup or via an RMAN plugin. Which one to use depends on your environment, requirements and limitations. You can also mix and match these methods to achieve more restore options and granularity, though when you handle archive logs, be sure to do this in only one of the backup methods to keep consistency.
Avoid using aggressive log truncation settings for databases protected with Data Guard as it may affect logs synchronization to secondary server. Data Guard should have enough time to transport logs remotely before they are truncated. Thus generally having “Delete logs older than” option configure to less than 24 hours is not recommended.
Please be aware that archived logs are processed periodically and stored in a temporary folder inside the VM before transmitting them to the log shipping / repository server.
The default location of the temporary folder on Windows systems is
<drive with most free space>:\Veeam\Backup\OracleLogBackup.
If you wish to specify the location of the temporary file you can do so by adding or changing the
OracleTempLogPath registry value in the guest OS:
For Linux, the directory with the most free space will be chosen between
/tmp in the default configuration. To change this path create a file in
VeeamOracleAgent.xml with the following content, where
/location has to be replaced with your desired path:
Before the backup, the database (in ARCHIVELOG mode only) is put into backup mode. This has to be taken into consideration when performing restore. Restoring the database server VM is not enough for restoring the service. The database has to be put out of backup mode:
ALTER DATABASE END BACKUP
Veeam performs SQL queries on Oracle database to collect the statistical information about the RMAN job process. Based on available resources Oracle can decide to use Temp Tablespace resources. As a best practice configure the Temp Tablespace resources to avoid shortage of Temporary tablespace.
You can check the Temp Tablespace size with the below SQL query:
SELECT * FROM DBA_TEMP_FREE_SPACE;
You can also create new temp tablespace, for example the new tablespace for 500MB:
CREATE TEMPORARY TABLESPACE TEMP_NEW TEMPFILE '/DATA/database/ifsprod/temp_01.dbf' SIZE 500m autoextend on next 10m maxsize unlimited; ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP_NEW;
Before starting the configuration of Veeam Plugin for Oracle RMAN, it is recommended to check the
oratab file. It should have entries about all the Oracle RAC nodes, if any node is missing please add that in
As a best practice, it’s recommended to install Veeam Pugin for RMAN on all Oracle RAC nodes to be able to get backups from every node.
It’s recommended to backup the Oracle home along with Oracle RMAN backup. You can use the Veeam Agent or Veeam Backup & Replication image level backup for this.
Plug-in backups will be transferred directly from the plug-in on the database server to the Veeam repository. Veeam data movers will be started at both ends of the communication channel and consume resources as written below.
Every single parallel backup stream will require a task slot on the Veeam repository side. Running a lot of parallel plug-in backups can consume a lot of repository task slots. As Veeam plug-in backups cannot wait for repository task slots to be free, they fail if there are no free task slots available.
Because of that you should use a dedicated repository for application plug-in backups to avoid issues with other backup types running in parallel. The dedicated plug-in repository can be configured with enough task slots to handle the largest parallel load, or can even be configured with unlimited task slots. For the latter case you need to control the parllel load from the source (database servers) side to avoid the repository running out of resources. Also consider that backup copy jobs for application backups will use task slots, too.
When you target a Scale-Out Backup Repository (recommended) which is dedicated for plug-in backups, you should use the Performance Mode setting. This way the single plug-in backup files will be distributed over the extents using all the available repository resources in parallel for faster processing.
Plug-in backups do create a lot of files and thus a lot of metadata which has to be stored in the Veeam configuration database. Make sure you have enough resources for your config database and are not using SQL Express when using plug-in backups.
The following processing resources are required for plug-in backups:
Veeam Backup & Replication Server A minimum of 2C/8GB for Windows + 1 CPU core and 1GB RAM per 5 concurrent channels.
Plug-in database server 1 CPU core and 200 MB of RAM per concurrently used channel.
Backup repository server 1 CPU core and 1 GB of RAM per 5 concurrently used channels.
Please be cautions to count number of database backups run in parallel, also consider the restore operations for the large environment where during the backup operations for database A and database B, you need to perform restores for Database C
Number of Numbers Channels * Number of Databases = Total Number of Channels Total Numbers of Channels / 5 = Amount of Memory + 15% Amount of Memory in GBs = Number of CPU Cores
5 Databases backup running in parallel with 4 parallel channels:
5 Databases * 4 parallel Channels = 20 Tasks 20 / 5 = 4 GB + 15% = 5GB Number of CPU Cores = 4 Cores
If you are using Veeam Agent to run the plug-in backups via pre- and post-scripts do include the repository channels for the agents job as well.
Network plays the important role in the overall backup performance.
The following network settings should be configured:
|Jumbo Frames||Enable||Veeam Repository and Oracle Servers|
|Network Speed||Mutiple 10 Gbps cards||ideally delicated layer 2 network for backup operation|
|IPV6||Disable||IPv6 should be disable on Oracle Database server when possible|
The RMAN backup retention is controlled by RMAN, you cannot set the different retention policy on the backups, RMAN retentions is set globally.
Use Veeam backup copy option set configure different retention policy.
To configure the backup retention policy on the RMAN use:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
FILESPERSET set as 1 can increase the backup performance, FILESPERSET settings can be increased based on the environment, it’s recommended to test the different value and use the one which validate the performance improvement.
Generally the ideal value for FILESPERSET is ranging from 3 to 5.
MAXPIECESIZE can help to limit the backup piece for the large database file, the smaller files can be good fit for the scale out repository and optizmed Veeam backup copy operations.
This defines the number of files that can be read simultaneously by each channel, the default number of MAXOPENFILES are 8
You can reduce or increase the MAXOPENFILES depends on source server load, if the source server is overutlized consider reducing the MAXOPENFILES to be best fit for the enviroment.
Compression help reduced the space utilized by backup set on the backup storage, RMAN uses a binary compression algorithm to the backup set. The default compression algorithm setting is BASIC and does not require the Advanced Compression Option.
RMAN compression is CPU intensive and CPU avabaility can be a limiting factor.
|Compression Mode||Default||Backup Size||CPU overhead|
|Medium||No||smaller than low||High|
If you are using RMAN compression, disable Veeam compression.
Oracle restore using Veeam Explorer for Oracle uses a combination of executing commands via SSH or RPC depending on the platform, and using the RMAN client. VM disks are mounted to target server using iSCSI (Windows) or FUSE and loop device (Linux). Only database files will be restored, not instance files. Instance files may be recovered through file-level recovery if needed.
Ensure the account used to connect to target/staging server has enough permissions on operating system and database as described in the corresponding section of User Guide.
Note: When restoring to Linux ensure that account used to connect to restore target server has valid shell (
- Veeam Plug-in for Oracle RMAN
- Change the Oracle Default Path
- Helpcenter - Oracle Log Backup
- Supplemental details on Veeam’s Oracle handling