Friday, September 25, 2026
  • About Us
  • Contact
DBAInsight
  • Guides
    • 23ai
    • RMAN
    • 26ai
    • Patch Update
    • RMAN
    • MySQL
    • Oracle GoldenGate
  • Cloud Technology
  • Case Studies
  • Troubleshooting
  • Training & Certification
NEWSLETTER
No Result
View All Result
DBAInsight
Home Guides

How Oracle RAC Handles Node Failures: Eviction, Failover, and Recovery

March 9, 2026
in Guides
0
Eviction, Failover, and Recovery
0
SHARES
282
VIEWS

Table of Contents

Toggle
    • Introduction
      • Related posts
      • Oracle Database Monitoring Tools: 10 Best Tools for DBAs in 2026
      • Oracle Database Release Roadmap 2026: Current Support Status, 19c, 21c and 26ai
  • Why Failure Handling is Critical in RAC
  • Step 1: Eviction – Protecting Cluster Integrity
    • What is Eviction?
      • When does eviction happen?
      • Who performs eviction?
    • What happens during eviction?
    • Why eviction is important
  • Step 2: Failover – Keeping Services Available
    • What is Failover?
    • What fails over in RAC?
    • Types of Failover
      • 1️⃣ Service Failover
      • 2️⃣ Connection Failover
      • 3️⃣ Workload Failover
  • Step 3: Recovery – Bringing Data Back to Consistency
    • What is Recovery?
    • Types of Recovery in RAC
      • 1️⃣ Instance Recovery
      • 2️⃣ Crash Recovery
      • 3️⃣ Cache Recovery
  • Full Failure Flow in RAC
      • Step-by-step failure handling:
  • Real-Life Example
      • Suddenly:
      • What happens?
  • How to Monitor Eviction, Failover, and Recovery
      • Logs
      • Views
      • Commands
  • Best Practices for Handling Node Failures
      • ✔ Use SCAN listeners
      • ✔ Configure services properly
      • ✔ Enable Application Continuity (TAC)
      • ✔ Use Fast Connection Failover (FCF)
      • ✔ Monitor interconnect network
  • Easy Way to Remember
  • Conclusion

Introduction

In a highly available database system like Oracle RAC, node failures are not a matter of if, but when. Hardware issues, network glitches, OS crashes, or storage interruptions can all cause a node to go down.

What makes Oracle RAC powerful is how gracefully it handles these failures.

Related posts

Oracle Database Monitoring Tools

Oracle Database Monitoring Tools: 10 Best Tools for DBAs in 2026

September 22, 2026
Oracle Database Release Roadmap 2026: Current Support Status, 19c, 21c and 26ai

Oracle Database Release Roadmap 2026: Current Support Status, 19c, 21c and 26ai

September 21, 2026

The secret lies in three critical mechanisms:

Eviction, Failover, and Recovery

These three processes ensure that your database remains available, consistent, and resilient, even when a node suddenly fails.

In this article, we will break down Eviction, Failover, and Recovery in a simple and practical way so you can clearly understand what happens behind the scenes.


Why Failure Handling is Critical in RAC

In a RAC cluster:

  • Multiple instances run on different nodes
  • All instances access the same shared storage
  • Applications connect through services across nodes

If one node crashes without proper coordination, it could lead to:

❌ Data corruption
❌ Split-brain scenario
❌ Lost transactions
❌ Application downtime

To prevent this, Oracle RAC uses Eviction, Failover, and Recovery mechanisms.


Step 1: Eviction – Protecting Cluster Integrity

What is Eviction?

Eviction is the process where a problematic or unresponsive node is forcibly removed from the cluster.

👉 This is done to protect the rest of the cluster from inconsistent behavior.

When does eviction happen?

Eviction can occur due to:

  • Network heartbeat failure
  • I/O subsystem issues
  • CPU starvation
  • OS hang
  • Voting disk communication failure

Who performs eviction?

The Cluster Synchronization Services (CSSD) process monitors all nodes using heartbeat signals.

If a node stops responding:

👉 CSSD decides to evict the node


What happens during eviction?

When eviction is triggered:

  1. The node is removed from cluster membership
  2. The node’s processes are terminated
  3. Access to shared resources is revoked
  4. Surviving nodes continue operations

👉 This is sometimes called a “node fencing” mechanism


Why eviction is important

Eviction ensures:

✔ No split-brain scenario
✔ No two nodes updating same data independently
✔ Cluster consistency is preserved


Step 2: Failover – Keeping Services Available

What is Failover?

Once a node is evicted, the next step is Failover.

Failover means:

Moving database services, connections, and workloads from the failed node to surviving nodes.


What fails over in RAC?

After eviction, the following can failover:

  • Database services
  • Application connections
  • Sessions (depending on configuration)
  • Jobs and workloads

Types of Failover

1️⃣ Service Failover

Oracle automatically relocates services to other nodes.

Example:

Service SALES_APP was running on node1
node1 fails → SALES_APP moves to node2

2️⃣ Connection Failover

Handled using:

  • TAF (Transparent Application Failover)
  • FCF (Fast Connection Failover)
  • TAC (Transparent Application Continuity)

These features allow applications to:

✔ Reconnect automatically
✔ Resume operations
✔ Continue transactions safely


3️⃣ Workload Failover

With policy-managed RAC, workloads are automatically redistributed using:

  • Server pools
  • Load balancing

Step 3: Recovery – Bringing Data Back to Consistency

What is Recovery?

After eviction and failover, Oracle must ensure data consistency.

This is where Recovery comes in.

Recovery is the process of:

Rolling forward and rolling back transactions to bring the database to a consistent state.


Types of Recovery in RAC

1️⃣ Instance Recovery

When a node fails:

  • Its redo logs are used by surviving instances
  • Dirty buffers are applied
  • Uncommitted transactions are rolled back

👉 This is called Instance Recovery


2️⃣ Crash Recovery

If the entire instance crashes, Oracle performs:

✔ Roll forward using redo logs
✔ Rollback of incomplete transactions


3️⃣ Cache Recovery

The Global Cache Service (GCS) ensures that:

  • Cached blocks from the failed node are recovered
  • Ownership is reassigned

Full Failure Flow in RAC

Let’s combine everything into one flow:

Step-by-step failure handling:

  1. Node stops responding
  2. CSSD detects heartbeat failure
  3. Node is evicted from cluster
  4. Services are failed over to surviving nodes
  5. Surviving nodes perform instance recovery
  6. Applications reconnect and continue

👉 This entire process usually completes within seconds


Real-Life Example

Let’s say your production cluster has:

  • Node1
  • Node2
  • Node3

Application is connected to Node1

Suddenly:

  • Node1 crashes

What happens?

✔ Node1 is evicted
✔ Service moves to Node2
✔ Sessions reconnect via SCAN
✔ Instance recovery starts
✔ Transactions are recovered

👉 Users may only see a few seconds delay


How to Monitor Eviction, Failover, and Recovery

DBAs can monitor these processes using:

Logs

  • alert.log
  • ocssd.log
  • crsd.log

Views

  • GV$INSTANCE
  • GV$SESSION
  • GV$ACTIVE_SERVICES

Commands

crsctl stat res -t
srvctl status database -d <db_name>

Best Practices for Handling Node Failures

Here are key DBA recommendations:

✔ Use SCAN listeners

Ensures automatic connection failover

✔ Configure services properly

Use preferred and available instances

✔ Enable Application Continuity (TAC)

For seamless transaction replay

✔ Use Fast Connection Failover (FCF)

For quick reconnection

✔ Monitor interconnect network

Prevent false evictions


Easy Way to Remember

Here’s a simple way to remember:

Eviction → Remove bad node
Failover → Move workload
Recovery → Fix data


Conclusion

Oracle RAC is designed for maximum availability, and the combination of:

Eviction, Failover, and Recovery

ensures that your database continues running even during unexpected failures.

These mechanisms guarantee:

✔ Data consistency
✔ Minimal downtime
✔ Seamless user experience
✔ Enterprise-grade reliability

Understanding how Eviction, Failover, and Recovery work will help you:

  • Troubleshoot RAC failures faster
  • Design resilient systems
  • Improve production stability
Tags: Oracle ClusterwareOracle RAC EvictionOracle RAC FailoverRAC High AvailabilityRAC Instance Recovery
Previous Post

Understanding Global Resource Directory (GRD) in Oracle RAC and ASM

Next Post

Policy-Managed vs Administrator-Managed RAC: Complete Guide for DBAs

Next Post
Policy-Managed vs Administrator-Managed

Policy-Managed vs Administrator-Managed RAC: Complete Guide for DBAs

Leave a Reply Cancel reply

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

POPULAR NEWS

  • Oracle Patch 38632161: Step-by-Step Guide to Upgrade Oracle 19c to Release Update 19.30

    Oracle Patch 38632161: Step-by-Step Guide to Upgrade Oracle 19c to Release Update 19.30

    0 shares
    Share 0 Tweet 0
  • How To Download And Install The Latest OPatch

    0 shares
    Share 0 Tweet 0
  • How to Install Oracle 19c Database on Red Hat Enterprise Linux 9

    0 shares
    Share 0 Tweet 0
  • Oracle Database 19.32 Release Update (RU) Patching Guide – Patch 39472050

    0 shares
    Share 0 Tweet 0
  • Installing Oracle Database 26AI on Red Hat Enterprise Linux 9

    0 shares
    Share 0 Tweet 0
  • About Us
  • Contact

© 2026 DBAInsight - Smarter Databases. Sharper Insights. DBAInsight.

No Result
View All Result
  • Home
  • Cloud & Modern DBs
  • Guides
  • Cloud Technology
  • Case Studies
  • Troubleshooting
  • Training & Certification

© 2026 DBAInsight - Smarter Databases. Sharper Insights. DBAInsight.

Add as a preferred source on Google
Add as preferred source on Google