Oracle Database

Also known as: Oracle DB

On this page 7

Oracle Database, often shortened to Oracle DB, is a commercial relational database management system developed by Oracle Corporation and used for large transactional and analytical workloads. Among database systems it is one of the oldest and most feature-rich products: its first commercial release in 1979 was among the first SQL-based relational databases offered for sale.

Modern releases are multi-model, storing relational tables alongside JSON documents, spatial data, graphs, XML and vectors. Oracle Database is best known for its multiversion read consistency, the PL/SQL procedural language, and high-availability options such as Real Application Clusters (RAC) and Data Guard.

Architecture of an Oracle instance

Oracle distinguishes between the database, which is the set of files on disk, and the instance, which is the shared memory plus background processes that serve it. One instance normally opens one database; with RAC, several instances on different servers open the same database at once.

ComponentKindRole
System Global Area (SGA)Shared memoryBuffer cache, shared pool, redo log buffer
Program Global Area (PGA)Private memorySorts, hash joins and session data
Database writer (DBWn)Background processWrites changed blocks to data files
Log writer (LGWR)Background processWrites redo entries to online redo logs
Undo tablespaceStorage structureHolds prior versions for rollback and consistency
Control fileStorage structureRecords the database’s physical layout
Core components of Oracle Database

Since version 12c, Oracle uses a multitenant architecture: a container database (CDB) hosts one or more pluggable databases (PDBs), each looking like an independent database to applications. The older non-CDB architecture has been desupported in recent releases, so new deployments are always multitenant.

Storage is often managed by Automatic Storage Management (ASM), which stripes and mirrors data files across disks without a conventional file system. Server-side logic is written in PL/SQL, a block-structured language compiled and stored inside the database as procedures, functions, packages and triggers. On engineered Exadata systems, parts of query processing are offloaded to intelligent storage servers, which reduces the data sent back to the database nodes.

How read consistency and transactions work

Oracle implements multiversion concurrency control through undo data. When a transaction changes a row, the previous version is written to undo. A query that started earlier reconstructs the block as it was at its start, identified by a system change number (SCN), so readers never block writers and writers never block readers.

The default isolation level is READ COMMITTED with statement-level consistency; SERIALIZABLE is also available and gives transaction-level consistency. Oracle does not offer dirty reads. Durability comes from the redo log: a commit returns once LGWR has written the redo to disk, while data blocks are written later.

A known failure mode is the ORA-01555 snapshot too old error, raised when a long query needs undo that has already been overwritten. The usual remedies are a larger undo tablespace, a longer undo retention setting, or splitting very long queries.

Editions and deployment options

Oracle Database is offered in several editions with different feature sets and licensing terms. Many advanced capabilities are separately licensed options on top of Enterprise Edition, which is a frequent source of compliance risk.

EditionIntended useNotable limits
Enterprise EditionLarge production systemsOptions such as RAC and Partitioning cost extra
Standard Edition 2Small and medium systemsLimited sockets and CPU threads, no Partitioning
Free (formerly Express Edition)Learning and small appsCapped CPU, memory and user data size
Autonomous DatabaseManaged cloud serviceRuns on Oracle Cloud Infrastructure
Main Oracle Database editions

Oracle publishes long-term releases, such as 19c, with extended support periods, and innovation releases between them. Most enterprises standardize on a long-term release and upgrade every several years. On-premises licensing is commonly per processor, adjusted by a core factor, or per Named User Plus.

Oracle Database compared with other relational systems

Oracle competes most directly with Microsoft SQL Server and with the open-source PostgreSQL, and less directly with MySQL and MariaDB. The comparison usually turns on high availability, licensing cost and ecosystem, not on SQL basics, which all of them share.

AspectOracle DatabasePostgreSQLMicrosoft SQL Server
LicenseCommercialOpen sourceCommercial
Procedural languagePL/SQLPL/pgSQL and othersT-SQL
Shared-disk clusteringRACNot built inNot built in
Standby replicationData GuardStreaming replicationAlways On availability groups
Empty string handlingTreated as NULLDistinct from NULLDistinct from NULL
Oracle Database and neighboring database systems

Oracle’s distinctive strength is RAC, where several active servers share one database on common storage, so a node failure does not stop the service. Its distinctive weakness is total cost, as the license, options and support fees can exceed hardware costs by a wide margin.

Practical pitfalls for developers and administrators

Teams moving to or from Oracle meet a set of dialect and behavior differences that cause subtle bugs. Knowing them in advance saves migration effort.

  • Empty strings are NULL: inserting ” into a VARCHAR2 column stores NULL, which changes the results of comparisons and unique checks.
  • Identifiers are uppercase by default; quoted mixed-case names must then be quoted everywhere.
  • Queries without a table use the one-row DUAL table, a habit that ported code often carries over.
  • Sequences and identity columns behave differently from auto-increment in MySQL, especially with caching and gaps.
  • Using a feature such as Partitioning or Diagnostics Pack without the matching license can create audit liabilities.

For performance work, administrators rely on execution plans, AWR reports and wait events, the instrumentation that Oracle has refined over decades and that remains one of its practical advantages.

Understanding it simply

Oracle Database is a large, commercial filing system for business data. Banks, airlines, governments and retailers use it to keep millions of records organized and correct, even while thousands of people read and change them at the same moment.

Its special talent is that everyone sees a consistent picture: a report that starts at noon shows the data as it was at noon, even if others keep working. It is powerful and dependable, but it is also expensive and needs skilled people to run it.

Applied in practice

A regional bank runs its core account system on Oracle Database Enterprise Edition with a two-node RAC cluster in its main data center and a Data Guard physical standby in a second site about 200 kilometers away. Daytime traffic consists of thousands of short transactions per second, while overnight batch jobs compute interest and produce regulatory reports.

During a planned hardware upgrade, administrators take one RAC node offline; sessions continue on the remaining node without interruption. Months later, a power failure at the main site triggers a switchover to the standby, and the bank resumes service in minutes with no committed transactions lost, because redo was shipped synchronously. The outcome justifies the licensing cost for this workload, although smaller units of the same bank run on PostgreSQL.