8.2.2.1 Understanding Rolling and Non-Rolling Updates

Software updates can be performed in rolling manner while the database remains online and available, or non-rolling manner where Oracle Clusterware and Oracle Database are shutdown.

The manner an update is performed does not affect how often it should be done, but does determine how long it will take. In general there are two methods:

  • Rolling software updates — A rolling software update is one that is performed to one of a particular component at a time while the others remain online servicing requests. Note the following key points about rolling software updates:

    • Rolling updates have less application downtime compared to non-rolling updates.

    • The overall length of time to complete the update is longer because one component is offline and updated at a time, while all other components remain online and operational.

    • The impact to existing database connections differs depending on the component being updated.

      • Rolling updates for Oracle Exadata storage servers or RDMA Network Fabric switches — All databases remain fully online and available for the duration of the rolling update. There is no disruption to database connections.

      • Rolling updates for Oracle Exadata database servers, Oracle Grid Infrastructure, or Oracle Database — Multi-instance databases using Oracle Real Application Clusters (Oracle RAC) remain available for the duration of the update. However, database connections on the server being updated will be disrupted when the local database instance is shutdown. Use Oracle RAC features for client high availability to minimize application disruption, as described in Table 8-1.

  • Non-Rolling software updates — A non-rolling software update is one that is performed to all of a particular component while those components are offline. Note the following key points about non-rolling software updates:

    • Non-rolling updates are faster than rolling updates for overall maintenance time because multiple components are updated in parallel.
    • Because all of a particular component are offline for the duration of the update, a database (or all databases on a system) will also be offline for the duration of the update, resulting in a complete outage to the application
    • Important applications serviced by the Oracle Exadata being updated in a non-rolling manner are often moved to a standby system in environments using Oracle Data Guard.
  • Combination of rolling and non-rolling software updates — When multiple components are updated in the same maintenance window, it is possible to use a combination of rolling and non-rolling methods to achieve the desired balance of application downtime and maintenance time. One typical combination used in the situation where an application does not handle connection disruption efficiently is to perform Oracle Exadata storage server and RDMA Network Fabric switch updates in a rolling manner, then performing Oracle Grid Infrastructure, Oracle Database, and Oracle Exadata database server updates in a non-rolling manner.

The patchmgr update utility manages the update orchestration in a rolling or non-rolling manner for Oracle Exadata infrastructure components (storage servers, database servers, and RDMA Network Fabric switches).

The following table describes which update method is supported for each component type.

Table 8-1 Rolling versus Non-Rolling Upgrades

Method Component Support Database Availability Impact During Update

Rolling

Oracle Exadata storage servers

No impact.

Oracle RAC and single instance databases remain fully available on all nodes in the cluster.

Rolling

RDMA Network Fabric switches

No impact.

Oracle RAC and single instance databases remain fully available on all nodes in the cluster.

Rolling

Oracle Exadata database servers

Local connections are disconnected and all local instances are shutdown.

Oracle RAC databases remain available through other nodes in the cluster.

Rolling

Oracle Grid Infrastructure

Local connections are disconnected and all local instances are shutdown.

Oracle RAC databases remain available through other nodes in the cluster.

Rolling

Oracle Database - Release Update (RU)

For the database home being updated, local connections are disconnected and local instances are shutdown.

Oracle RAC databases remain available through other nodes in the cluster.

Databases running from other Oracle Database software homes are unaffected.

Non-Rolling

  • Oracle Exadata storage servers

  • Oracle Exadata database servers

  • Oracle Grid Infrastructure

  • Oracle Database - Release Update (RU)

  • Oracle Database - Patch Set

  • Oracle Database - Release

Databases unavailable

Move workload to Oracle Data Guard or Oracle GoldenGate standby systems to minimize impact.