AFTER trigger

When defining a trigger, you can specify the trigger timing—whether the trigger action is to be executed before or after the triggering statement.

AFTER triggers execute the trigger action after the triggering statement is run.

BEFORE and AFTER apply to both statement and row triggers.

See Also: trigger


See: Oracle architecture


The mode of the database in which Oracle copies filled online redo logs to disk. Specify the mode at database creation or by using the ALTER DATABASE statement. You can enable automatic archiving either dynamically using the ALTER SYSTEM statement or by setting the initialization parameter LOG_ARCHIVE_START to TRUE.

Running the database in ARCHIVELOG mode has several advantages over NOARCHIVELOG mode. You can:

  • Back up the database while it is open and being accessed by users.

  • Recover the database to any desired point in time.

To protect the ARCHIVELOG mode database in case of failure, back up the archived logs.

Automatic Database Diagnostic Monitor (ADDM)

This lets the Oracle Database diagnose its own performance and determine how identified problems could be resolved. It runs automatically after each AWR statistics capture, making the performance diagnostic data readily available.

Automatic Storage Management (ASM)

A vertical integration of both the file system and the volume manager built specifically for Oracle database files. It extends the concept of stripe and mirror everything to optimize performance, while removing the need for manual I/O tuning.

Automatic Storage Management disk

Storage is added and removed from Automatic Storage Management disk groups in units of Automatic Storage Management disks.

Automatic Storage Management file

Oracle database file stored in an Automatic Storage Management disk group. When a file is created, certain file attributes are permanently set. Among these are its protection policy (parity, mirroring, or none) and its striping policy. Automatic Storage Management files are not visible from the operating system or its utilities, but they are visible to database instances, RMAN, and other Oracle-supplied tools.

Automatic Storage Management instance

An Oracle instance that mounts Automatic Storage Management disk groups and performs management functions necessary to make Automatic Storage Management files available to database instances. Automatic Storage Management instances do not mount databases.

See Also: instance

Automatic Storage Management template

Collections of attributes used by Automatic Storage Management during file creation. Templates simplify file creation by mapping complex file attribute specifications into a single name. A default template exists for each Oracle file type. Users can modify the attributes of the default templates or create new templates.

automatic undo management mode

A mode of the database in which undo data is stored in a dedicated undo tablespace. Unlike manual undo management mode, the only undo management that you must perform is the creation of the undo tablespace. All other undo management is performed automatically.

See Also: manual undo management mode

Automatic Workload Repository (AWR)

A built-in repository in every Oracle Database. At regular intervals, the Oracle Database makes a snapshot of all its vital statistics and workload information and stores them here.

background process

Background processes consolidate functions that would otherwise be handled by multiple Oracle programs running for each user process. The background processes asynchronously perform I/O and monitor other Oracle processes to provide increased parallelism for better performance and reliability.

Oracle creates a set of background processes for each instance.

See Also: instance, process, Oracle process, user process

BEFORE trigger

When defining a trigger, you can specify the trigger timing—whether the trigger action is to be executed before or after the triggering statement.

BEFORE triggers execute the trigger action before the triggering statement is run.

BEFORE and AFTER apply to both statement and row triggers.

See Also: trigger

buffer cache

The portion of the SGA that holds copies of Oracle data blocks. All user processes concurrently connected to the instance share access to the buffer cache.

The buffers in the cache are organized in two lists: the dirty list and the least recently used (LRU) list. The dirty list holds dirty buffers, which contain data that has been modified but has not yet been written to disk. The least recently used (LRU) list holds free buffers (unmodified and available), pinned buffers (currently being accessed), and dirty buffers that have not yet been moved to the dirty list.

See Also: system global area (SGA)

byte semantics

The length of string is measured in bytes.

cache recovery

The part of instance recovery where Oracle applies all committed and uncommitted changes in the redo log files to the affected data blocks. Also known as the rolling forward phase of instance recovery.

character semantics

The length of string is measured in characters.

CHECK constraint

A CHECK integrity constraint on a column or set of columns requires that a specified condition be true or unknown for every row of the table. If a DML statement results in the condition of the CHECK constraint evaluating to false, then the statement is rolled back.


A data structure that defines an SCN in the redo thread of a database. Checkpoints are recorded in the control file and each datafile header, and are a crucial element of recovery.


In client/server architecture, the front-end database application, which interacts with a user through the keyboard, display, and pointing device such as a mouse. The client portion has no data access responsibilities. It concentrates on requesting, processing, and presenting data managed by the server portion.

See Also: client/server architecture, server

client/server architecture

Software architecture based on a separation of processing between two CPUs, one acting as the client in the transaction, requesting and receiving services, and the other as the server that provides services in a transaction.


Optional structure for storing table data. Clusters are groups of one or more tables physically stored together because they share common columns and are often used together. Because related rows are physically stored together, disk access time improves.


Vertical space in a database table that represents a particular domain of data. A column has a column name and a specific datatype. For example, in a table of employee information, all of the employees' dates of hire would constitute one column.

See Also: row, table


Make permanent changes to data (inserts, updates, deletes) in the database. Before changes are committed, both the old and new data exist so that changes can be stored or the data can be restored to its prior state.

See Also: rolling back


Simultaneous access of the same data by many users. A multiuser database management system must provide adequate concurrency controls, so that data cannot be updated or changed improperly, compromising data integrity.

See Also: data consistency


Communication pathway between a user process and an Oracle instance.

See Also: session, user process

consistent backup

A whole database backup that you can open with the RESETLOGS option without performing media recovery. In other words, you do not need to apply redo to datafiles in this backup for it to be consistent. All datafiles in a consistent backup must:

  • Have the same checkpoint system change number (SCN) in their headers, unless they are datafiles in tablespaces that are read only or offline normal (in which case they will have a clean SCN that is earlier than the checkpoint SCN)

  • Contain no changes past the checkpoint SCN, that is, are not fuzzy

  • Match the datafile checkpoint information stored in the control file

You can only take consistent backups after you have made a clean shutdown of the database. The database must not be opened until the backup has completed.

See Also: inconsistent backup

control file

A file that records the physical structure of a database and contains the database name, the names and locations of associated databases and redo log files, the time stamp of the database creation, the current log sequence number, and checkpoint information.

See Also: physical structures, redo log


Collection of data that is treated as a unit. The purpose of a database is to store and retrieve related information.

database buffer

One of several types of memory structures that stores information within the system global area. Database buffers store the most recently used blocks of data.

See Also: system global area (SGA)

database buffer cache

Memory structure in the system global area that stores the most recently used blocks of data.

See Also: system global area (SGA)

database link

A named schema object that describes a path from one database to another. Database links are implicitly used when a reference is made to a global object name in a distributed database.

database writer process (DBWn)

An Oracle background process that writes the contents of buffers to datafiles. The DBWn processes are responsible for writing modified (dirty) buffers in the database buffer cache to disk.

See Also: buffer cache


A physical operating system file on disk that was created by Oracle and contains data structures such as tables and indexes. A datafile can only belong to one database.

See Also: index, physical structures

datafile copy

A copy of a datafile on disk produced by either:

  • The Recovery Manager COPY command

  • An operating system utility

data block

Smallest logical unit of data storage in an Oracle database. Also called logical blocks, Oracle blocks, or pages. One data block corresponds to a specific number of bytes of physical database space on disk.

See Also: extent, segment

data consistency

In a multiuser environment, where many users can access data at the same time (concurrency), data consistency means that each user sees a consistent view of the data, including visible changes made by the user's own transactions and transactions of other users.

See Also: concurrency

data dictionary

The central set of tables and views that are used as a read-only reference about a particular database. A data dictionary stores such information as:

  • The logical and physical structure of the database

  • Valid users of the database

  • Information about integrity constraints

  • How much space is allocated for a schema object and how much of it is in use

A data dictionary is created when a database is created and is automatically updated when the structure of the database is updated.

data integrity

Business rules that dictate the standards for acceptable data. These rules are applied to a database by using integrity constraints and triggers to prevent the entry of invalid information into tables.

See Also: integrity constraint, trigger

data segment

Each nonclustered table has a data segment. All of the table's data is stored in the extents of its data segment. For a partitioned table, each partition has a data segment.

Each cluster has a data segment. The data of every table in the cluster is stored in the cluster's data segment.

See Also: cluster, extent, segment

dedicated server

A database server configuration in which a server process handles requests for a single user process.

See Also: shared server

define variables

Variables defined (location, size, and datatype) to receive each fetched value.

disk group

One or more Automatic Storage Management disks managed as a logical unit. Automatic Storage Management disks can be added or dropped from a disk group while preserving the contents of the files in the group, and with only a minimal amount of automatically initiated I/O required to redistribute the data evenly. All I/O to a disk group is automatically spread across all the disks in the group.

dispatcher processes (Dnnn)

Optional background processes, present only when a shared server configuration is used. At least one dispatcher process is created for every communication protocol in use (D000, . . ., Dnnn). Each dispatcher process is responsible for routing requests from connected user processes to available shared server processes and returning the responses back to the appropriate user processes.

See Also: shared server

distributed processing

Software architecture that uses more than one computer to divide the processing for a set of related jobs. Distributed processing reduces the processing load on a single computer.


Data definition language. Includes statements like CREATE/ALTER TABLE/INDEX, which define or change data structure.


Data manipulation language. Includes statements like INSERT, UPDATE, and DELETE, which change data in tables.


The degree of parallelism of an operation.

Enterprise Manager

An Oracle system management tool that provides an integrated solution for centrally managing your heterogeneous environment. It combines a graphical console, Oracle Management Servers, Oracle Intelligent Agents, common services, and administrative tools for managing Oracle products.


Second level of logical database storage. An extent is a specific number of contiguous data blocks allocated for storing a specific type of information.

See Also: data block, segment

failure group

Administratively assigned sets of disks that share a common resource whose failure must be tolerated. Failure groups are used to determine which Automatic Storage Management disks to use for storing redundant copies of data.

foreign key

Integrity constraint that requires each value in a column or set of columns to match a value in a related table's UNIQUE or PRIMARY KEY.

FOREIGN KEY integrity constraints also define referential integrity actions that dictate what Oracle should do with dependent data if the data it references is altered.

See Also: integrity constraint, primary key

inconsistent backup

A backup in which some of the files in the backup contain changes that were made after the files were checkpointed. This type of backup needs recovery before it can be made consistent. Inconsistent backups are usually created by taking online database backups; that is, the database is open while the files are being backed up. You can also make an inconsistent backup by backing up datafiles while a database is closed, either:

  • Immediately after an Oracle instance failed (or all instances in an Oracle Real Application Clusters configuration)

  • After shutting down the database using SHUTDOWN ABORT

Note that inconsistent backups are only useful if the database is in ARCHIVELOG mode.

See Also: consistent backup, online backup, system change number (SCN), whole database backup


Optional structure associated with tables and clusters. You can create indexes on one or more columns of a table to speed access to data on that table.

See Also: cluster


An object that registers a new indexing scheme by specifying the set of supported operators and routines that manage a domain index.

index segment

Each index has an index segment that stores all of its data. For a partitioned index, each partition has an index segment.

See Also: index, segment


A system global area (SGA) and the Oracle background processes constitute an Oracle database instance. Every time a database is started, a system global area is allocated and Oracle background processes are started. The SGA is deallocated when the instance shuts down.

See Also: background process, system global area (SGA), Automatic Storage Management instance


See: data integrity

integrity constraint

Declarative method of defining a rule for a column of a table. Integrity constraints enforce the business rules associated with a database and prevent the entry of invalid information into tables.


Column or set of columns included in the definition of certain types of integrity constraints. Keys describe the relationships between the different tables and columns of a relational database.

See Also: integrity constraint, foreign key, primary key

large pool

Optional area in the system global area that provides large memory allocations for Oracle backup and restore operations, I/O server processes, and session memory for the shared server and Oracle XA.

See Also: system global area (SGA), process, shared server, Oracle XA

logical backups

Backups in which an Oracle export utility uses SQL to read database data and export it into a binary file at the operating system level. You can then import the data back into a database using Oracle utilities. Backups taken with Oracle export utilities differ in the following ways from RMAN backups:

  • Database logical objects are exported independently of the files that contain those objects.

  • Logical backups can be imported into a different database, even on a different platform. RMAN backups are not portable between databases or platforms.

See Also: physical backups

logical structures

Logical structures of an Oracle database include tablespaces, schema objects, data blocks, extents, and segments. Because the physical and logical structures are separate, the physical storage of data can be managed without affecting the access to logical storage structures.

See Also: physical structures


A utility that lets administrators use SQL to read, analyze, and interpret log files. It can view any redo log file, online or archived. The Oracle Enterprise Manager application Oracle LogMiner Viewer adds a GUI-based interface.

log writer process (LGWR)

The log writer process (LGWR) is responsible for redo log buffer management—writing the redo log buffer to a redo log file on disk. LGWR writes all redo entries that have been copied into the buffer since the last time it wrote.

See Also: redo log

manual undo management mode

A mode of the database in which undo blocks are stored in user-managed rollback segments. In automatic undo management mode, undo blocks are stored in a system-managed, dedicated undo tablespaces.

See Also: automatic undo management mode

materialized view

A materialized view provides access to table data by storing the results of a query in a separate schema object.

See Also: view

mean time to recover (MTTR)

The desired time required to perform instance or media recovery on the database. For example, you may set 10 minutes as the goal for media recovery from a disk failure. A variety of factors influence MTTR for media recovery, including the speed of detection, the type of method used to perform media recovery, and the size of the database.

mounted database

An instance that is started and has the control file associated with the database open. You can mount a database without opening it; typically, you put the database in this state for maintenance or for restore and recovery operations.

NOT NULL constraint

Data integrity constraint that requires a column of a table contain no null values.

See Also: NULL value

NULL value

Absence of a value in a column of a row. Nulls indicate missing, unknown, or inapplicable data. A null should not be used to imply any other value, such as zero.

object type

An object type consists of two parts: a spec and a body. The type body always depends on its type spec.

online backup

A backup of one or more datafiles taken while a database is open and the datafiles are online. When you make a user-managed backup while the database is open, you must put the tablespaces in backup mode by issuing an ALTER TABLESPACE BEGIN BACKUP command. When you make an RMAN backup while the database is open, however, you do not need to put the tablespaces in backup mode.

online redo log

The online redo log is a set of two or more files that record all changes made to Oracle datafiles and control files. Whenever a change is made to the database, Oracle generates a redo record in the redo buffer. The LGWR process flushes the contents of the redo buffer into the redo log.

See Also: redo log


In memory management, the term operator refers to a data flow operator, such as a sort, hash join, or bitmap merge.

Oracle architecture

Memory and process structures used by an Oracle database server to manage a database.

See Also: database, process, server

Oracle process

Oracle processes run the Oracle database server code. They include server processes and background processes.

See Also: process, server process, background process, user process

Oracle XA

The Oracle XA library is an external interface that allows global transactions to be coordinated by a transaction manager other than the Oracle database server.


A smaller and more manageable piece of a table or index.

physical backups

Physical database files that have been copied from one place to another. The files can be datafiles, archived redo logs, or control files. You can make physical backups using Recovery Manager or with operating system commands such as the UNIX cp.

See Also: logical backups

physical structures

Physical database structures of an Oracle database include datafiles, redo log files, and control files.

See Also: logical structures


Oracle's procedural language extension to SQL. PL/SQL enables you to mix SQL statements with procedural constructs. With PL/SQL, you can define and execute PL/SQL program units such as procedures, functions, and packages.

See Also: SQL

primary key

The column or set of columns included in the definition of a table's PRIMARY KEY constraint. A primary key's values uniquely identify the rows in a table. Only one primary key can be defined for each table.

See Also: PRIMARY KEY constraint

PRIMARY KEY constraint

Integrity constraint that disallows duplicate values and nulls in a column or set of columns.

See Also: integrity constraint, key

priority inversion

Priority inversion occurs when a high priority job is run with lower amount of resources than a low priority job. Thus the expected priority is "inverted."


Each process in an Oracle instance performs a specific job. By dividing the work of Oracle and database applications into several processes, multiple users and applications can connect to a single database instance simultaneously.

See Also: Oracle process, user process

program global area (PGA)

A memory buffer that contains data and control information for a server process. A PGA is created by Oracle when a server process is started. The information in a PGA depends on the Oracle configuration.

query block

A self-contained DML against a table. A query block can be a top-level DML or a subquery.

See Also: DML

read consistency

In a multiuser environment, Oracle's read consistency ensures that

  • The set of data seen by a statement remains constant throughout statement execution (statement-level read consistency).

  • Readers and writers of database data do not wait for other writers or other readers of the same data. Writers of database data wait only for other writers who are updating identical rows in concurrent transactions.

See Also: concurrency, data consistency

read-only database

A database opened with the ALTER DATABASE OPEN READ ONLY command. As their name suggests, read-only databases are for queries only and cannot be modified. Oracle allows a standby database to be run in read-only mode, which means that it can be queried while still serving as an up-to-date emergency replacement for the primary database.

Real Application Clusters (RAC)

Option that allows multiple concurrent instances to share a single physical database.

See Also: instance

Recovery Manager (RMAN)

A utility that backs up, restores, and recovers Oracle databases. You can use it with or without the central information repository called a recovery catalog. If you do not use a recovery catalog, RMAN uses the database's control file to store information necessary for backup and recovery operations. You can use RMAN in conjunction with a media manager to back up files to tertiary storage.

redo log

A set of files that protect altered database data in memory that has not been written to the datafiles. The redo log can consist of two parts: the online redo log and the archived redo log.

See Also: online redo log

redo log buffer

Memory structure in the system global area that stores redo entries—a log of changes made to the database. The redo entries stored in the redo log buffers are written to an online redo log file, which is used if database recovery is necessary.

See Also: system global area (SGA)

redo thread

The redo generated by an instance. If the database runs in a single instance configuration, then the database has only one thread of redo. If you run in an Oracle Real Application Clusters configuration, then you have multiple redo threads, one for each instance.

referential integrity

A rule defined on a key (a column or set of columns) in one table that guarantees that the values in that key match the values in a key in a related table (the referenced value). Referential integrity includes the rules that dictate what types of data manipulation are allowed on referenced values and how these actions affect dependent values.

See Also: key


See Also: Recovery Manager (RMAN)

rollback segment

Logical database structure created by the database administrator to temporarily store undo information. Rollback segments store old data changed by SQL statements in a transaction until it is committed. Oracle has now deprecated this method of storing undo.

See Also: commit, logical structures, segment

rolling back

The use of rollback segments to undo uncommitted transactions applied to the database during the rolling forward stage of recovery.

See Also: commit, rolling forward

rolling forward

The application of redo records or incremental backups to datafiles and control files in order to recover changes to those files.

See Also: rolling back


Set of attributes or values pertaining to one entity or record in a table. A row is a collection of column information corresponding to a single record.

See Also: column, table


A globally unique identifier for a row in a database. It is created at the time the row is inserted into a table, and destroyed when it is removed from a table.


Collection of database objects, including logical structures such as tables, views, sequences, stored procedures, synonyms, indexes, clusters, and database links. A schema has the name of the user who controls it.

See Also: logical structures


Third level of logical database storage. A segment is a set of extents, each of which has been allocated for a specific data structure, and all of which are stored in the same tablespace.

See Also: extent, data block


A sequence generates a serial list of unique numbers for numeric columns of a database's tables.


In a client/server architecture, the computer that runs Oracle software and handles the functions required for concurrent, shared data access. The server receives and processes the SQL and PL/SQL statements that originate from client applications.

See Also: client, client/server architecture

server process

Server processes handle requests from connected user processes. A server process is in charge of communicating with the user process and interacting with Oracle to carry out requests of the associated user process.

See Also: process, user process


Specific connection of a user to an Oracle instance through a user process. A session lasts from the time the user connects until the time the user disconnects or exits the database application.

See Also: connection, instance, user process

shared pool

Portion of the system global area that contains shared memory constructs such as shared SQL areas. A shared SQL area is required to process every unique SQL statement submitted to a database.

See Also: system global area (SGA), SQL

shared server

A database server configuration that allows many user processes to share a small number of server processes, minimizing the number of server processes and maximizing the use of available system resources.

See Also: dedicated server


Structured Query Language, a nonprocedural language to access data. Users describe in SQL what they want done, and the SQL language compiler automatically generates a procedure to navigate the database and perform the task. Oracle SQL includes many extensions to the ANSI/ISO standard SQL language.

See Also: SQL*Plus, PL/SQL


Oracle tool used to run SQL statements against an Oracle database.

See Also: SQL, PL/SQL

standby database

A copy of a production database that you can use for disaster protection. You can update the standby database with archived redo logs from the production database in order to keep it current. If a disaster destroys the production database, you can activate the standby database and make it the new production database.


In the hierarchy of user-defined datatypes, a subtype is always a dependent on its supertype.


See: subtype


An alias for a table, view, materialized view, sequence, procedure, function, package, type, Java class schema object, user-defined object type, or another synonym.

system change number (SCN)

A stamp that defines a committed version of a database at a point in time. Oracle assigns every committed transaction a unique SCN.

system global area (SGA)

A group of shared memory structures that contain data and control information for one Oracle database instance. If multiple users are concurrently connected to the same instance, then the data in the instance's SGA is shared among the users. Consequently, the SGA is sometimes referred to as the shared global area.

See Also: instance


Basic unit of data storage in an Oracle database. Table data is stored in rows and columns.

See Also: column, row


A database storage unit that groups related logical structures together.

See Also: logical structures


A file that belongs to a temporary tablespace, and is created with the TEMPFILE option. Temporary tablespaces cannot contain permanent database objects such as tables, and are typically used for sorting.

temporary segment

Temporary segments are created by Oracle when a SQL statement needs a temporary database area to complete execution. When the statement finishes execution, the temporary segment's extents are returned to the system for future use.

See Also: extent, segment


Logical unit of work that contains one or more SQL statements. All statements in a transaction are committed or rolled back together.

See Also: commit, rolling back

transaction recovery

Transaction recovery involves rolling back all uncommitted transactions of a failed instance. These are "in-progress" transactions that did not commit and that Oracle needs to undo. It is possible for uncommitted transactions to get saved to disk. In this case, Oracle uses undo data to reverse the effects of any changes that were written to the datafiles but not yet committed.


Stored database procedure automatically invoked whenever a table or view is modified, for example by INSERT, UPDATE, or DELETE operations.


A way of representing all the characters in all the languages in the world. Characters are defined as a sequence of codepoints, a base codepoint followed by any number of surrogates. There are 64K codepoints.

Unicode column

A column of type NCHAR, NVARCHAR2, or NCLOB guaranteed to hold Unicode.

UNIQUE KEY constraint

A data integrity constraint requiring that every value in a column or set of columns (key) be unique—that is, no two rows of a table have duplicate values in a specified column or set of columns.

See Also: integrity constraint, key

user name

The name by which a user is known to the Oracle database server and to other users. Every user name is associated with a password, and both must be entered to connect to an Oracle database.

user process

User processes execute the application or Oracle tool code.

See Also: process, Oracle process


Coordinated Universal Time, previously called Greenwich Mean Time, or GMT.


A view is a custom-tailored presentation of the data in one or more tables. A view can also be thought of as a "stored query." Views do not actually contain or store data; they derive their data from the tables on which they are based.

Like tables, views can be queried, updated, inserted into, and deleted from, with some restrictions. All operations performed on a view affect it's base tables.

whole database backup

A backup of the control file and all datafiles that belong to a database.