-
What Is Oracle RMAN Backup Filesperset?
-
Why Adjust Filesperset Value?
-
Method 1: Setting Filesperset in RMAN Scripts
-
Method 2: Configuring Filesperset in Oracle Enterprise Manager
-
Method 3: Tuning Performance Using Filesperset Parameter
-
Vinchin Backup & Recovery: Professional Database Protection for Oracle Environments
-
Oracle RMAN Backup Filesperset FAQs
-
Conclusion
When you back up an Oracle database with RMAN, you want both speed and reliability. A key parameter for this control is filesperset. Understanding and tuning this setting can make your backups faster and your restores easier. Let’s break down what filesperset does, why it matters, and how to use it in real-world Oracle environments.
What Is Oracle RMAN Backup Filesperset?
The filesperset parameter in Oracle RMAN controls how many data files are included in each backup set. By default, RMAN tries to group as many as 64 files per set, but you can change this value to suit your needs. When you run a backup, RMAN reads the specified number of files and writes their blocks into a single backup set. This process is called multiplexing.
For example, if you set filesperset = 4, each backup set will contain up to four data files. If you have 20 data files in your database, RMAN will create five backup sets during that operation. This grouping affects both backup performance and restore operations because it determines how many pieces must be managed or scanned when recovering data.
Multiplexing helps balance disk I/O by reading from several data files at once but writing them into fewer output streams (backup sets). The right configuration can reduce bottlenecks during heavy workloads or large-scale backups.
Why Adjust Filesperset Value?
Choosing the right filesperset value is about balancing performance, manageability, and recovery speed. A lower value (like 1) means each backup set contains only one file—this can make restores faster since only one piece needs scanning for a single-file recovery. Deduplication appliances also work better with smaller sets because they spot identical blocks more easily.
A higher value reduces the number of backup sets created during each job. For administrators managing hundreds of databases or very large environments, fewer pieces mean simpler catalog management—but possibly slower restores if you need just one file out of a big set.
Let’s look at an example: Suppose your database has 100 data files.
With filesperset = 64 (the default), RMAN creates two backup sets: one containing 64 files; another containing the remaining 36.
With filesperset = 4, RMAN creates twenty-five separate backup sets (each holding four files).
This difference impacts not just storage layout but also how quickly you can locate or restore individual objects later on.
If your environment uses deduplication storage or requires rapid single-file restores—such as when using BACKUP DATAFILE commands—setting filesperset = 1 is often recommended. On the other hand, if minimizing catalog entries is more important than granular restore speed, higher values may be preferable.
Always consider your storage type (disk/tape/cloud), available bandwidth during backups/restores, business recovery objectives (RTO/RPO), and any regulatory requirements before settling on a value.
Method 1: Setting Filesperset in RMAN Scripts
You can set the filesperset parameter directly in your RMAN backup scripts for precise control over file grouping within each channel’s workload. Here’s how it works:
First allocate all channels needed for parallelism based on available hardware resources or desired throughput. Then use the BACKUP command with the FILESPERSET clause to specify grouping:
RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
ALLOCATE CHANNEL c2 DEVICE TYPE DISK;
BACKUP
FILESPERSET 5
DATABASE;
}In this script:
Each allocated channel processes its own stream,
Up to five data files are grouped per backup set per channel,
If there are fewer than five unassigned files left when creating a new set on any channel, all remaining ones go into that final piece.
If maximum deduplication efficiency or fastest possible single-file restore is required—for instance when using certain types of storage arrays—set FILESPERSET to one:
RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
BACKUP
FILESPERSET 1
DATABASE;
}Method 2: Configuring Filesperset in Oracle Enterprise Manager
Not everyone likes writing scripts; some prefer graphical interfaces like Oracle Enterprise Manager (OEM). OEM offers an intuitive way to configure advanced options such as filesperset.
To configure filesperset through OEM:
Start by navigating from the Database Home page; select Availability, then choose Backup & Recovery, followed by Schedule Backup from drop-down menus along top navigation bars. In OEM’s guided wizard interface:
Pick your desired type of operation (e.g., full database vs tablespace-level),
Continue until reaching advanced settings under Options,
Locate field labeled either “Files per Backup Set” or similar wording,
Enter preferred numeric value according to policy/performance goals,
Proceed through remaining steps until scheduling/submitting job confirmation appears onscreen; OEM generates correct underlying RMAN syntax automatically based on selections made here—including custom filesperset values where applicable!
This approach suits teams who want consistency across scheduled jobs without deep scripting knowledge while still retaining fine-grained control over critical parameters affecting both performance metrics & disaster recovery timelines alike.
Method 3: Tuning Performance Using Filesperset Parameter
Adjusting filesperset forms part of broader performance tuning strategies within enterprise-class Oracle deployments—especially those handling high transaction volumes or strict SLAs around downtime/data loss prevention targets.
Setting low values like one results in every output piece containing just a single source file—a boon when restoring isolated objects after accidental deletion/corruption events since only minimal scanning occurs before retrieval begins! Storage appliances leveraging block-level deduplication also benefit because repeated patterns become easier/faster/more space-efficiently identified across multiple cycles/jobs/retention periods compared against larger mixed-content bundles produced via higher settings instead...
Conversely raising numbers above defaults trims total count/catalog size generated per session/job/run—which simplifies administrative overheads related tracking/reporting/auditing activities downstream—but may slow down targeted recoveries due increased search times inside bigger composite outputs whenever partial/incremental rollbacks get triggered unexpectedly midstream somewhere else entirely!
Interaction with MAXOPENFILES and Channel Configuration
Understanding how MAXOPENFILES interacts with FILESPERSET helps unlock even greater efficiencies during both backups/restores by optimizing concurrent read/write operations across all available hardware threads/devices simultaneously deployed onsite/offsite/cloud-side too...
The effective level of multiplexing achieved during any given operation equals whichever minimum exists between these two parameters:
> Effective Multiplexing Level = min(FILESPERSET , MAXOPENFILES)
Here’s what happens behind-the-scenes:
Suppose you allocate three channels (c1, c2, c3) targeting disk devices; then specify both limits explicitly inside script block like so—
RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE DISK MAXOPENFILES=2;
ALLOCATE CHANNEL c2 DEVICE TYPE DISK MAXOPENFILES=2;
ALLOCATE CHANNEL c3 DEVICE TYPE DISK MAXOPENFILES=2;
BACKUP
FILESPERSET=4
DATABASE;
}Each channel now reads no more than two distinct source objects concurrently—even though up-to-four could theoretically fit inside resulting bundle(s)—because lowest ceiling always wins out! This prevents overwhelming local disks/network links while still allowing parallelization benefits wherever infrastructure supports them best...
Fine-tuning these variables together lets DBAs strike ideal balance between throughput/latency/resource consumption depending upon unique mix found within their own production/test/dev/UAT landscapes worldwide today!
Vinchin Backup & Recovery: Professional Database Protection for Oracle Environments
For organizations seeking streamlined protection beyond manual scripting or native tools alone, Vinchin Backup & Recovery delivers robust enterprise-grade solutions tailored for modern databases—including comprehensive support for Oracle alongside MySQL, SQL Server, MariaDB, PostgreSQL, PostgresPro, and TiDB platforms. As an all-in-one platform designed for diverse IT landscapes, Vinchin Backup & Recovery empowers users with features such as batch database backups for operational efficiency; flexible retention policies including GFS retention; advanced source-side compression specifically optimized for Oracle workloads; integrity checks; and secure cloud/tape archiving options—all working together to ensure reliable protection while simplifying daily management tasks.
The intuitive web console makes safeguarding your Oracle environment straightforward:
Step 1. Select the Oracle database to back up

Step 2. Choose the backup storage

Step 3. Define the backup strategy

Step 4. Submit the job

Recognized globally by thousands of enterprises for its reliability and ease-of-use—and rated highly by industry analysts—you can experience every feature free for sixty days by clicking below to download Vinchin Backup & Recovery today.
Oracle RMAN Backup Filesperset FAQs
Q1: What happens if I set filesperset higher than my total number of data files?
A1: RMAN includes all available data files in that last backup set regardless—it never leaves anything out even if target exceeds actual count present locally/globally configured currently active/inactive states alike!
Q2: Can I change my chosen value between different jobs/runs/schedules?
A2: Yes—you’re free adjust parameter anytime per-command/job basis depending upon evolving requirements encountered day-to-day/month-to-month/year-over-year cycles experienced regularly everywhere globally nowadays too…
Conclusion
The FILESPERSET parameter gives DBAs direct control over grouping logic inside every Oracle RMAN job—impacting everything from raw throughput rates through catalog complexity onto ultimate disaster-recovery timelines themselves overall long-term strategic success stories written daily everywhere worldwide today!
Share on: