What Is Oracle Active Data Guard?
Oracle Active Data Guard is a licensed add-on option to Oracle Database Enterprise Edition that extends the standard Data Guard disaster recovery capability. While standard Data Guard (included free with Enterprise Edition) maintains a standby database in a mounted state for failover, Active Data Guard allows the standby to be opened read-only while simultaneously applying redo logs from the primary — transforming the standby from a cold reserve into an active, queryable database that is always synchronised with production.
This active utilisation capability makes ADG valuable for offloading reporting workloads, running backups without impacting production, providing read scalability, and achieving near-zero downtime during maintenance. However, every one of these capabilities requires a separate licence — and Oracle's licensing rules for ADG are among the most commonly misunderstood in the entire Oracle product portfolio.
Data Guard vs Active Data Guard — The Licensing Distinction
| Aspect | Oracle Data Guard (Standard — Free) | Oracle Active Data Guard (Licensed Option) |
|---|---|---|
| Included with EE? | Yes — no additional licence required | No — requires separate licence purchase at $11,500/processor or $230/NUP |
| Primary use case | Maintain standby for disaster recovery failover. Standby is mounted but not open for use during normal operation. | Offload work to standby: real-time reporting, ad-hoc queries, backup offloading — while standby remains synchronised with primary. |
| Standby open read-only? | No — not while applying redo. Opening the standby for read-only breaks recovery continuity. | Yes — standby can be open read-only and applying redo simultaneously (real-time query) |
| Key features | Redo transport, log apply, role transition, Data Guard Broker management | All Data Guard features plus: real-time query, automatic block repair, Far Sync, fast incremental backup offload, rolling upgrades, DML redirection, real-time cascade |
| Licensing requirement | Covered under the DB EE licence. Standby database itself must be licensed as EE if running (subject to failover policy). | Must be licensed in addition to DB EE. Both primary and standby environments require ADG licences, using the same metric and quantities as the database. |
| Audit risk | Low — standard Data Guard is included | Very high — ADG is among the top 5 most common audit findings. Feature usage is recorded permanently in DBA_FEATURE_USAGE_STATISTICS. |
The Feature Usage Trap: One Query Triggers Full Licensing
Oracle's DBA_FEATURE_USAGE_STATISTICS view records Active Data Guard usage cumulatively and permanently. If any ADG feature is accessed — even once, even accidentally, even during a test — the usage counter is set and never resets to zero. Oracle's audit team treats any recorded ADG feature usage as evidence that the option must be licensed across the entire environment. A single read-only query against an open standby database, a single automatic block repair event, or a single DML redirection creates a permanent audit trail that Oracle will use to assert full ADG licensing on both primary and standby. There is no "trial" or "evaluation" exception — feature usage equals licensing obligation.
Active Data Guard Features That Trigger Licensing
| Feature | What It Does | Licence Trigger | Common Accidental Activation |
|---|---|---|---|
| Real-Time Query | Standby database open read-only while applying redo — enables reporting and ad-hoc queries against a synchronised standby | Yes — any read query on an open standby | DBA opens standby to "check data"; application configured to read from standby for load balancing |
| Automatic Block Repair | Corrupted data blocks on primary or standby are automatically repaired by fetching the correct block from the other database | Yes — occurs automatically when ADG is configured | Block repair events happen transparently without DBA intervention — ADG may be "in use" without anyone knowing |
| Far Sync | Lightweight instance that enables zero data loss (RPO=0) protection over long distances by synchronously receiving redo and forwarding it to remote standby | Yes — Far Sync instances require ADG licence | Infrastructure team deploys Far Sync for DR without consulting licensing |
| Fast Incremental Backup Offload | Block Change Tracking on standby enables fast RMAN incremental backups taken on standby instead of primary — up to 20× faster | Yes — BCT on standby is an ADG feature | Backup team enables BCT on standby to reduce primary impact |
| DML Redirection (19c+) | Allows write operations on a read-only standby by transparently forwarding DML to primary | Yes — DML redirection requires ADG | Applications configured for standby read may issue writes; DML redirection handles them silently |
| Real-Time Cascade | Standby forwards redo to a secondary standby, enabling multi-tier replication without impacting primary | Yes — cascading standby requires ADG | Multi-site DR architecture with cascading standbys |
| Rolling Upgrades | Database upgrades/patching applied to standby first, then role switched to minimise downtime | Yes — rolling upgrade via ADG requires licence | DBA performs rolling patch using Data Guard switchover |
ADG Licensing Rules — The Complete Framework
| Rule | What Oracle Requires | Compliance Implication |
|---|---|---|
| Enterprise Edition only | ADG is available only with Oracle Database Enterprise Edition. Cannot be used with Standard Edition 2. | Verify all databases in the Data Guard configuration are licensed as Enterprise Edition before adding ADG. |
| License both primary and standby | ADG must be licensed on every server in the Data Guard configuration — the primary database server and every standby database server that uses ADG features. | If you have 1 primary + 2 standbys using ADG, you need ADG licences on all 3 servers. Licensing only the standby is non-compliant. |
| Match the database metric | ADG must use the same licensing metric (Processor or NUP) as the underlying Oracle Database Enterprise Edition licence. No mixing allowed. | If DB EE is licensed by Processor, ADG must be licensed by Processor on both primary and standby. If DB EE uses NUP, ADG must use NUP with quantities matching the database. |
| Match the database quantity | The number of ADG licences must equal at least the number of DB EE licences on each server. For NUP, ADG NUP count must match DB NUP count. | A server with 8 DB EE processor licences requires 8 ADG processor licences. A database with 200 NUP requires 200 ADG NUP. |
| NUP minimums apply | Minimum 25 Named User Plus per processor for ADG, same as DB EE. Even if only 5 users access the standby, NUP minimum is enforced per processor count. | A 2-processor standby requires minimum 50 ADG NUP ($11,500) regardless of actual user count. |
| Virtualisation rules apply | Oracle's Partitioning Policy applies to ADG licensing. VMware = soft partitioning = all physical cores in cluster. Oracle VM = hard partitioning = partition cores only. | A single ADG standby VM on a VMware cluster triggers ADG licensing for all physical cores across all cluster hosts. |
| Cloud BYOL rules apply | On authorised clouds (AWS, Azure, GCP, OCI), ADG licences count per Oracle's cloud licensing policy: 2 vCPUs = 1 processor licence (third-party cloud); 1 OCPU = 1 licence (OCI). | Cloud deployment does not reduce ADG licensing obligations. A 16-vCPU AWS instance running ADG standby requires 8 ADG processor licences. |
ADG Licensing Cost — Worked Examples
| Scenario | DB EE Licence Cost | ADG Licence Cost | Annual Support (22%) | Total Year-1 Cost |
|---|---|---|---|---|
| Small: 1 primary (4 processors) + 1 standby (4 processors) | 8 × $47,500 = $380,000 | 8 × $11,500 = $92,000 | $103,840 | $575,840 |
| Mid-size: 1 primary (16 proc) + 1 standby (16 proc) | 32 × $47,500 = $1,520,000 | 32 × $11,500 = $368,000 | $415,360 | $2,303,360 |
| Large: 1 primary (32 proc) + 2 standbys (32 proc each) | 96 × $47,500 = $4,560,000 | 96 × $11,500 = $1,104,000 | $1,246,080 | $6,910,080 |
| NUP example: 200 users, 2-processor primary + 2-processor standby | 200 × $950 = $190,000 | 200 × $230 = $46,000 | $51,920 | $287,920 |
An enterprise runs Oracle Database Enterprise Edition with Active Data Guard on VMware. The primary database VM runs on a 4-host VMware cluster (128 total physical cores, Intel x86 = 64 processors after 0.5 core factor). The standby VM runs on a separate 4-host cluster (also 128 cores = 64 processors). Oracle's position: both clusters must be fully licensed for DB EE and ADG. DB EE: 128 processors × $47,500 = $6,080,000. ADG: 128 processors × $11,500 = $1,472,000. Total licence exposure: $7,552,000 plus $1,661,440 annual support. Most organisations in this scenario have licensed only the VM's allocated cores (perhaps 8 processors on each side = 16 total), creating a gap of $7M+ in unlicensed Oracle software. This is the single most common ADG audit finding.
The 10-Day Failover Rule — When Standby Licensing Can Be Avoided
Oracle provides a limited exception for purely passive disaster recovery standby databases. If a standby is used only for failover testing or actual disaster recovery events — and is not running Active Data Guard features — Oracle permits the standby to operate without a full licence for up to 10 separate days (24-hour periods) per year. This is the "10-day failover rule."
| Condition | 10-Day Rule Applies | 10-Day Rule Does NOT Apply |
|---|---|---|
| Standby state | Mounted, not open; activated only for failover testing or actual DR events | Open read-only (even briefly) while applying redo = Active Data Guard = full licensing required |
| Duration | Up to 10 separate 24-hour periods per year | More than 10 days of activation = full licensing required |
| Number of standbys | Only one failover standby can use the exemption | Multiple standbys = additional standbys must be fully licensed |
| ADG features | No ADG features used — pure Data Guard only | Any ADG feature (real-time query, block repair, Far Sync, etc.) = failover rule does not apply — full ADG licensing required from day one |
| Patching/maintenance | Counts against the 10-day limit | If patching takes the standby beyond 10 days total annual activation, full licensing is required |
The 10-day failover rule provides relief for cold standby databases using standard Data Guard only. It does not apply to Active Data Guard. If you are using any ADG feature — real-time query, automatic block repair, Far Sync, backup offloading, or any other ADG capability — the standby must be fully licensed for both DB EE and ADG from day one, regardless of how many days per year it is active. The 10-day rule is relevant only for organisations that maintain a true cold standby without ADG.
Cloud BYOL Licensing for Active Data Guard
| Cloud Provider | Counting Rule | ADG Licence Calculation Example | Key Consideration |
|---|---|---|---|
| AWS / Azure / GCP | 2 vCPUs = 1 processor licence (no core factor) | Primary: 16 vCPUs = 8 proc. Standby: 16 vCPUs = 8 proc. ADG = 16 × $11,500 = $184,000 | Core Factor Table does not apply in cloud. Cost per equivalent workload is typically 2× on-premises. |
| OCI (Oracle Cloud) | 1 OCPU = 1 processor licence (EE BYOL) | Primary: 8 OCPU = 8 proc. Standby: 8 OCPU = 8 proc. ADG = 16 × $11,500 = $184,000 | OCI is most favourable for Oracle licensing; also offers ADG as a managed service |
| Dedicated Host (AWS/Azure) | Physical core count with core factor applies | 48-core dedicated host (Intel 0.5 factor) = 24 proc per host. ADG = 48 × $11,500 = $552,000 (2 hosts) | Dedicated hosts allow on-premises counting rules, potentially reducing licence count vs shared tenancy |
Common ADG Audit Findings
| Audit Finding | How It Occurs | Typical Cost Impact | Prevention |
|---|---|---|---|
| ADG used without licence | Standby opened read-only while applying redo; DBA_FEATURE_USAGE_STATISTICS records ADG usage permanently | $200K–$5M+ (depends on processor count across primary + standby) | Audit DBA_FEATURE_USAGE_STATISTICS quarterly. If ADG is not licensed, ensure standby is never opened read-only while applying redo. |
| Standby not licensed | ADG licensed on primary only; standby server omitted from licence calculations | $100K–$2M+ (standby processor count × $11,500) | Licence both primary and every standby. Map ADG licences explicitly to each server. |
| VMware under-licensing | ADG licensed for VM cores only; Oracle asserts all physical cores across VMware cluster | $500K–$10M+ (common gap is 10–100× the licensed quantity) | Use hard partitioning (Oracle VM, Solaris Zones) or licence the full VMware cluster. See virtualisation guide. |
| Automatic block repair counted | Block repair occurs transparently; DBA is unaware ADG is technically "in use" | $100K–$1M+ (full ADG licensing triggered by single automatic event) | If ADG is not licensed, configure Data Guard without ADG features. Monitor for automatic feature activation. |
| Cloud BYOL miscounting | ADG licensed using on-premises core factor in cloud (0.5 for Intel); Oracle requires 2 vCPU = 1 licence with no core factor | $100K–$500K+ (under-licensed by 50%) | Apply cloud-specific counting rules. 2 vCPUs = 1 licence on AWS/Azure/GCP regardless of CPU type. |
Cost Optimisation Strategies
| Strategy | How It Works | Typical Savings | Applicability |
|---|---|---|---|
| Use standard Data Guard instead | If you only need failover capability and do not require real-time query or backup offloading, standard Data Guard is included free with EE. | 100% ADG cost avoided ($11,500/proc) | Organisations that maintain standby purely for DR without active reporting use |
| Hard partitioning for standby | Deploy standby on Oracle VM or other hard-partitioned environment to license only allocated cores instead of entire VMware cluster | 60–90% reduction in standby licensing | Organisations with VMware-based standby environments |
| Right-size standby hardware | Run standby on smaller servers than primary (fewer cores) to reduce licence count. Standby only needs to handle read workloads, not full production. | 25–50% reduction in standby ADG cost | Where standby workload is lighter than primary |
| Consolidate standby environments | Instead of separate standbys for each primary, consolidate multiple standbys onto fewer, higher-density servers | 20–40% reduction through server consolidation | Organisations with multiple Data Guard configurations |
| Include ADG in ULA | If approaching a ULA negotiation, include Active Data Guard in the ULA product scope to obtain unlimited deployment rights at no incremental per-processor cost | $500K–$5M+ in ADG licensing avoided during ULA term; certify ADG entitlements at exit | Organisations with existing or planned Oracle ULAs |
| Negotiate ADG discount | ADG list price ($11,500/proc) is negotiable. Combined with DB EE purchase, discounts of 40–70% are achievable. | 40–70% off list price | All new ADG purchases — never accept list price |
ADG Compliance Governance Checklist
Ongoing Compliance Disciplines
Audit DBA_FEATURE_USAGE_STATISTICS quarterly
Query DBA_FEATURE_USAGE_STATISTICS on every Oracle database for Active Data Guard feature usage. Any non-zero CURRENTLY_USED or historical DETECTED_USAGES for ADG features indicates licensing obligation. This is the exact data source Oracle's audit team will examine.
Map ADG licences to both primary and standby
Maintain a licence allocation register that explicitly maps ADG licences to every server in each Data Guard configuration — primary and all standbys. Verify the processor count on each server matches the allocated ADG licence count.
Verify virtualisation configuration impact
For any ADG deployment on VMware, document the cluster host count, physical cores per host, and total licence requirement under Oracle's soft partitioning rules. If the VMware-based licence requirement is unacceptable, plan migration to hard-partitioned environments.
Validate cloud BYOL counting
For ADG deployments on AWS, Azure, or GCP, confirm licence counts use the correct cloud conversion ratio (2 vCPUs = 1 processor licence, no core factor). For OCI, confirm 1 OCPU = 1 licence. Document instance types and vCPU allocations for each ADG deployment.
Control ADG feature activation
If ADG is not licensed, implement technical controls to prevent accidental activation. Ensure standby databases are not opened read-only while applying redo. Disable DML redirection. Monitor for automatic block repair events. Train DBAs on which features require ADG licensing.
Review ADG necessity annually
Assess whether ADG is still required for each Data Guard configuration. If the standby is used purely for failover without active reporting, consider downgrading to standard Data Guard and eliminating the ADG licence cost entirely.