| Lesson 5 |
Technical considerations |
| Objective |
Explore technical concerns related to the DBA role. |
DBA Technical Considerations
Every DBA faces challenges that money alone could solve, and it's a rare DBA who's ever complained about having too much horsepower or too much disk space. In practice, though, certain technical limitations genuinely dictate what kind of backup and recovery plan is even possible to implement, and those limitations look different today than they did even a few years ago. An environment with genuine headroom, disk space well beyond what the database actually needs, or fast object storage a backup can be staged to and shipped off site automatically, has real options that a tightly constrained environment simply doesn't: automated image copies, backups that run without ever bringing the database down, retention policies generous enough to keep months of history rather than days. An environment without that headroom has to make harder tradeoffs, bringing the database down for a backup window, or leaning much more heavily on online, incremental backup techniques to get the same protection without the same resources. A DBA has to design around the real technical constraints of the environment actually running today, not the environment they'd prefer to have, or the one a five-year-old capacity plan assumed would still be accurate.
A handful of specific questions tend to surface most of what actually matters technically:
- How much disk and data exists, and when will that space actually run out?
- When will the hardware platform itself need an upgrade?
- Is a standby database genuinely needed?
- What are the likely failure points in the current environment?
- What does the actual transactional mix look like?
How Much Space Exists, and When Does It Run Out?
"Running out of space" is rarely a single date; it's several different dates for several different things that all need tracking independently. Data tablespaces, the fast recovery area (archived redo, flashback logs, and backups together), temp space, undo, and any ASM diskgroups involved all grow, and consume space, at their own pace. A useful practice is alerting well before a resource hits its actual maximum, 80% of a tablespace's maximum autoextend size, for instance, rather than only reacting once a resource is already full, since a full fast recovery area specifically can halt archiving and, eventually, the database itself.
Growth also isn't something a single snapshot captures well; tracking space consumption over weeks, using Oracle's own workload repository data, is what actually reveals a genuine trend worth planning around, as opposed to a one-off spike. A tablespace that grew 5% last week and 5% the week before is telling a very different story than one that grew 5% once and then held steady; only the trend, not any single reading, says whether a real capacity problem is approaching or whether that week was simply unusual. Newer workloads add categories worth remembering to forecast too: vector indexes for AI-related features consume space the way any other index does, and flashback logs can be placed on faster storage outside the fast recovery area specifically to keep them from competing with backup traffic for the same disks.
When Does the Hardware Platform Need an Upgrade?
The honest trigger for a hardware upgrade is genuine headroom, or a service-level target, running out, not a vendor's release calendar. CPU or I/O consistently running near a system's limits after SQL and parameter tuning have already been tried, memory pressure that tuning can't relieve, or a recovery time and recovery point objective the current hardware simply can't hit, are all real signals worth acting on. It's also worth remembering that "upgrading hardware" increasingly means scaling compute or storage in a cloud or engineered-systems environment rather than a literal server replacement, and that compute and recovery storage can often be scaled independently of each other rather than as a single bundled decision.
Oracle Autonomous AI Database
Is a Standby Database Needed?
A standby database earns its cost when at least one of a few conditions genuinely applies: a recovery point objective near zero, a recovery time objective measured in minutes rather than hours, a real site or region failure scenario in the organization's actual threat model, or a deliberate need to isolate a standby from a ransomware event affecting the primary. Oracle Data Guard is the long-standing, well-established technology for this, offering synchronous or asynchronous replication depending on how close to zero the acceptable data loss actually needs to be.
One point worth stating plainly, since it's easy to conflate: a standby database is not a substitute for backups. Data Guard replicates changes faithfully, including a mistaken DELETE or a dropped table; by the time anyone notices the mistake, the standby has usually already made the same mistake too. RMAN-based backups, kept independently, are what actually recovers from that kind of error. If a business can genuinely tolerate the hours a full restore from backup takes, along with whatever data loss that implies, a standby may be entirely optional, but that tolerance should be documented explicitly rather than assumed.
A useful way to frame the decision: a standby answers "how do we stay up when infrastructure fails," while a backup answers "how do we get back to a known-good state when the data itself is wrong." A site that loses power has an infrastructure problem a standby is built for; a table someone dropped by mistake has a data problem only a backup, or Flashback, actually solves. Reaching for the wrong tool for a given failure, expecting a standby to undo a bad DELETE, or expecting a backup restore to deliver seconds of downtime, wastes exactly the time a real incident doesn't have to spare.
What Are the Likely Failure Points?
Walking through a database environment layer by layer tends to surface most of the realistic failure modes worth planning around: storage or media failure (still the classic case a physical backup restores from, not something Flashback substitutes for), human or application error (a bad deployment, an accidental mass update, exactly what Flashback Table and Flashback Database are suited for), block-level corruption, an instance or node crash, the loss of an entire site or region, and deliberate threats like ransomware or a malicious insider. Each of these deserves its own answer to three questions: how would it actually be detected, what recovery time and recovery point objective applies to it, and does a tested runbook exist for it specifically, not just a general one.
A few of these deserve individual attention. Losing access to Transparent Data Encryption keys makes an otherwise perfectly good encrypted backup completely unrestorable, which makes key management itself a failure point worth planning around directly. In a multitenant environment, the blast radius of a given failure matters too: an outage affecting an entire container database is a different kind of event than one affecting a single pluggable database, and PDB-level flashback or point-in-time recovery can meaningfully contain that blast radius when the failure is scoped to just one PDB.
It's worth resisting the temptation to treat this list as exhaustive or to rank every entry by how dramatic it sounds. A quietly full fast recovery area, which simply stops archiving until someone notices and clears space, causes far more real incidents in practice than a genuine site-wide disaster ever does, precisely because it's mundane enough to go unmonitored. The failure points most worth mapping carefully are often the boring, easy-to-overlook ones, not the dramatic scenarios that naturally get planned for anyway because they're the ones everyone already imagines when they picture a database going down.
What Is the Transactional Mix?
"Transactional mix" means what the database actually does day to day, since that drives CPU usage, I/O patterns, undo and redo generation, and standby replication lag. Measuring this with Oracle's own workload repository and session-monitoring data, rather than assuming it, tends to reveal real answers: how much redo gets generated per second, the balance of reads versus writes, whether the workload is dominated by short OLTP transactions or long-running reporting queries, and which wait events actually account for the most time. Answering this well is what determines whether a workload genuinely belongs on the same database as everything else running there, or whether it needs to be separated out, and it directly shapes decisions about Data Guard's protection mode, how the fast recovery area should be sized, and whether a hardware constraint is actually about compute or about I/O.
Technical Limitations That Shape a Backup and Recovery Plan
Beyond the five questions above, a broad set of technical factors shapes what backup and recovery approach is actually practical in a given environment: available storage and how fast data is growing, the size of the actual backup window and how much performance impact a backup can tolerably cause, recovery time and recovery point objectives, network bandwidth for anything backing up to a remote location or the cloud, database size and whether partitioned or multisection backups are worth using, ARCHIVELOG mode (already covered in an earlier lesson), the specific capabilities and configuration of RMAN, fast recovery area sizing, Transparent Data Encryption key management, the number and criticality of pluggable databases in a multitenant environment, the resource cost of the backup process itself, Flashback's dependence on retained flashback logs and its own retention window, and the licensing and cost implications of specific advanced features.
One correction worth making to a commonly repeated claim: Oracle Sharding is often described as a newer feature, but it's actually been part of Oracle since Database 12c Release 2, considerably before more recent releases. As of the current documentation, it's also been renamed: what was called Oracle Sharding is now Oracle Globally Distributed Database, the same underlying capability for partitioning a database across multiple independent instances, under its current name. JSON Relational Duality, by contrast, genuinely is a more recent addition, confirmed as a current, real feature. A backup and recovery strategy for either technology has to account for the specific structures involved, sharded data across independent database instances, or dual JSON and relational views over the same underlying data, rather than treating either as an ordinary single-instance database.
These factors tend to compound rather than act independently, which is worth illustrating concretely. A rapidly growing multi-terabyte database, encrypted with TDE, split across several pluggable databases of differing criticality, running with a genuinely tight backup window, isn't four separate problems to solve one at a time; it's one problem where each constraint narrows the available options for every other one. The database's size argues for partitioned or multisection backups; the tight window argues for incremental backups over full ones; the encryption means losing track of a wallet turns any of those backups into an unrestorable file regardless of how well they were taken; and the multiple PDBs mean the most critical one may need a materially different backup cadence than the least critical one sharing the same container. Solving each constraint in isolation, without checking how it interacts with the others, is a reliable way to end up with a technically defensible plan that still doesn't actually meet the business's real recovery objective.
What's Still Being Verified for This Lesson
Several specific technical claims touching this lesson could not be confirmed against the documentation available for this course and are named here explicitly rather than asserted as settled fact, consistent with the practice established earlier in this module:
- Whether Data Recovery Advisor and its RMAN commands remain supported in 26ai, first raised in an earlier lesson and still unresolved.
- The specific Maximum Availability Architecture tier failover timings referenced in earlier material for this course.
- Exact system view and column names for tracking space usage (tablespace usage metrics, ASM diskgroup views, and similar), along with specific parameter names like those governing vector index memory or per-PDB storage limits. These are precisely the kind of exact, checkable syntax that needs confirming against Oracle's detailed reference documentation before being presented as commands a DBA could run directly.
- Whether immutable tablespaces and temporal validity, both genuine Oracle features as of recent releases, remain current and behave as described in 26ai specifically.
Oracle's dedicated Backup and Recovery guide and Database Reference would be the right sources to resolve the specific view and parameter names; the High Availability documentation would resolve the MAA tier claims.
Technical Considerations - Exercise
A few points from this lesson worth carrying forward:
- The five technical questions, space, hardware headroom, standby need, failure points, and transactional mix, interact with each other rather than standing independently, and answering them one at a time without checking those interactions misses exactly where a plan usually breaks.
- A standby database and a backup solve different problems: a standby keeps a system up when infrastructure fails, while only a backup or Flashback actually undoes a data-level mistake that a standby would otherwise faithfully replicate.
- Growth trends, in space, in transactional volume, only become visible across weeks of data, never from a single snapshot, which is exactly why they're easy to miss until a resource is already critically full.
- Oracle Sharding, now renamed Oracle Globally Distributed Database, has existed since Database 12c Release 2, considerably longer than its reputation as a newer feature would suggest.
- Several specific 26ai claims touching this lesson, Data Recovery Advisor's support status, exact Maximum Availability Architecture failover timings, and a handful of granular view and parameter names, remain genuinely unverified and are worth confirming against Oracle's dedicated documentation before being treated as settled fact.
Technical Considerations - Exercise
