Site icon Bugra Parlayan | Oracle Database Blog

Exadata Update Utilities: patchmgr and dbnodeupdate.sh

1. Introduction

Oracle Exadata Database Machine is a high-performance, optimized platform for Oracle Database workloads. Regularly updating the software components of this platform—including the operating system, Exadata system software, device drivers, and firmware—is crucial for addressing security vulnerabilities, fixing bugs, and leveraging new features. Oracle provides specialized utilities to manage these update processes. Two of the most commonly used tools are patchmgr and dbnodeupdate.sh. This document aims to provide a detailed technical comparison of these two utilities, explaining their functions, key differences, use cases, and parameters for effective Exadata patching.

2. The patchmgr Utility

2.1. Definition and Purpose

patchmgr is a centralized utility designed to orchestrate and simplify software updates for Oracle Exadata infrastructure components. It allows administrators to update multiple components—database servers, storage servers, and network switches—using a single command structure, streamlining the Exadata update process.  

2.2. Scope and Capabilities

2.3. Platform Support

2.4. Key Parameters and Usage

The general syntax for patchmgr is: ./patchmgr -<component> <component_list_file> -<action> <required_arguments> [optional_arguments]  

3. The dbnodeupdate.sh Utility

3.1. Definition and Purpose

dbnodeupdate.sh is a shell script specifically used to update, roll back, or back up the software on a single Oracle Exadata database server (compute node). Before patchmgr provided orchestration for database servers, updates often involved manually running dbnodeupdate.sh on each node sequentially.  

3.2. Scope and Capabilities

3.3. Platform Support

3.4. Key Parameters and Usage

The basic usage is: ./dbnodeupdate.sh <options>

4. patchmgr vs. dbnodeupdate.sh: Key Differences

Featurepatchmgrdbnodeupdate.sh
Primary PurposeOrchestration for Exadata infrastructure componentsSingle Exadata DB server update/rollback/backup
ScopeDB Servers, Storage Servers, Network SwitchesDB Servers Only
Execution ModeManages multiple targets; invokes dbnodeupdate.sh for DB nodesRuns on a single target node
Update ModeRolling or Non-RollingAffects only the single node it runs on
Run LocationDB Node or separate Linux/Solaris serverOnly on the target DB Node being updated
Typical Use CaseStandard multi-component/multi-node patchingSingle node update/rollback; invoked by patchmgr; patching last node in rolling update; recovery scenarios
Driving PlatformLinux, Solaris Linux (on the target DB Node)

5. Which Tool Should Be Used When?

As a general rule, patchmgr is the standard utility for routine Exadata infrastructure patching. dbnodeupdate.sh should be considered an underlying component used by patchmgr for database nodes or a tool for specific single-node scenarios.

6. Conclusion

patchmgr and dbnodeupdate.sh are essential tools for maintaining the currency and security of Oracle Exadata platforms. patchmgr serves as the primary orchestration utility, simplifying the update process across multiple Exadata components (database servers, storage servers, switches) and supporting both rolling and non-rolling strategies. It can be driven from Linux or Solaris systems. dbnodeupdate.sh is the core script that performs the actual update, rollback, or backup on individual Linux-based Exadata database servers, often invoked by patchmgr but also usable standalone for specific single-node tasks or recovery situations. Understanding the distinct roles and capabilities of each tool allows administrators to choose the appropriate method for their specific Exadata maintenance requirements, with patchmgr being the standard choice for most patching operations.

Exit mobile version