Changes in This Release for Oracle Database Administrator's Guide

There are changes in this document for recent releases of Oracle Database.

Changes in Oracle Database 12c Release 2 (

The following are changes in Oracle Database Administrator's Guide for Oracle Database 12c Release 2 (

New Features

The following features are new in this release:

  • Oracle Sharding

    Oracle Sharding is a scalability and availability feature that supports distribution and replication of data across a pool of discrete Oracle databases that share no hardware or software.

    See "Sharded Database Management".

  • New features for the Oracle Multitenant option:

    • Application containers

      An application container is an optional component of a multitenant container database (CDB) that consists of an application root and all of the application PDBs associated with it. An application container stores data for one or more applications.

      See "Application Containers".

    • Application common objects

      Application common objects are created in an application root and are shared with the application PDBs that belong to the application root.

      See "Managing Application Common Objects".

    • Support for thousands of pluggable databases (PDBs) in a single CDB

      A CDB can contain up to 4,096 PDBs.

    • Use different character sets for PDBs

      When the character set of the CDB root is AL32UTF8, any container in the CDB can use a character set that is different from the CDB root and different from other containers in the CDB.

      See "Decide How to Configure the CDB" and Oracle Database Globalization Support Guide.

    • Relocate a PDB from one CDB to another

      A PDB can be relocated in one operation with minimal down time.

      See "Creating a PDB by Relocating It".

    • Proxy PDB

      A proxy PDB references a PDB in a different CDB and provides fully functional access to the referenced PDB.

      See "Creating a PDB as a Proxy PDB"

    • Hot PDB cloning

      The source PDB can be in open read/write mode during a PDB clone operation.

      See "Creating a PDB by Cloning an Existing PDB or Non-CDB".

    • Rename services during PDB creation

      The SERVICE_NAME_CONVERT clause of the CREATE PLUGGABLE DATABASE statement renames the user-defined services of the new PDB based on the service names of the source PDB.

      See "Renaming a Service".

    • Switch to a specific service for a container in a CDB

      You can specify a service name in an ALTER SESSION SET CONTAINER statement.

      See "Switching to a Container Using the ALTER SESSION Statement".

    • Manage the memory usage of PDBs in a CDB

      You can configure guarantees and limits for SGA and PGA memory, using PDB initialization parameters.

      See "Initialization Parameters That Control Memory for PDBs."

    • Limit the I/O generated by specific PDBs

      Two new initialization parameters, MAX_IOPS and MAX_MBPS, enable you to limit disk I/O generated by a PDB. MAX_IOPS limits the number of I/O operations, and MAX_MBPS limits the megabytes for I/O operations.

      See "Initialization Parameters That Limit I/O for PDBs".

    • PDB performance profiles

      You can specify Resource Manager directives for a set of PDBs using PDB performance profiles.

      See "Creating New CDB Resource Plan Directives for a PDB Performance Profile".

    • Monitor PDBs managed by Oracle Database Resource Manager

      A set of dynamic performance views enables you to monitor the results of your Oracle Database Resource Manager settings for PDBs.

      See "Monitoring PDBs Managed by Oracle Database Resource Manager".

    • Prioritize PDB upgrades

      You can prioritize the PDBs in a CDB when you upgrade the CDB. The PDBs with higher priority are upgraded before PDBs with lower priority.

      See Oracle Database Upgrade Guide.

    • CDB undo mode

      A CDB can run in local undo mode or shared undo mode. Local undo mode means that every container in the CDB uses local undo. Shared undo mode means that there is one active undo tablespace for a single-instance CDB. For an Oracle RAC CDB, there is one active undo tablespace for each instance.

      See "Managing the CDB Undo Mode".

    • Parallelized PDB creation

      The PARALLEL clause of the CREATE PLUGGABLE DATABASE statement specifies whether to use parallel execution servers during PDB creation and, optionally, the degree of parallelism.

      See "Parallelize PDB Creation".

    • Unplugging PDBs and plugging in PDBs with an archive file

      A PDB can be unplugged into compressed archive of the XML file that describes the PDB and the files used by the PDB (such as the data files and wallet file). The archive file has a .pdb extension, and it can be used to plug the PDB into a CDB or application container.

      "About Unplugging a PDB" and "About Plugging In an Unplugged PDB".

    • PDB refresh

      You can create a PDB as a refreshable clone and refresh the PDB with changes made to the source PDB.

      See "PDB Refresh" and "Refreshing a PDB".

    • Improved support for default tablespace specification during PDB creation

      You can specify a default tablespace for a PDB that is created using techniques such as cloning and plugging in the PDB. Previously, a default tablespace could be specified only if the PDB was created from the CDB seed.

      See "Default Tablespace".

    • Extended USER_TABLESPACES clause during PDB creation

      The creation mode of user tablespaces can be different than the creation mode of the PDB. For example, during PDB creation, the user tablespaces can move a tablespace’s files even when file copy is specified for the PDB.

      See "User Tablespaces".

  • Improvements to online redefinition of tables:

    • In past releases, tables with BFILE columns could not be redefined online. In Oracle Database 12c Release 2 (, tables with BFILE columns can be redefined online.

    • For online table redefinition that did not change the shape of the table, you can enable rollback of a table to return the table to its original definition and preserve DML changes made to the table.

      See "Rolling Back Online Table Redefinition".

    • You can refresh dependent fast refreshable materialized views during online table redefinition by setting the refresh_dep_mviews parameter to Y in the REDEF_TABLE procedure or the START_REDEF_TABLE procedure.

      See "Refreshing Dependent Materialized Views During Online Table Redefinition".

    • Optimize the performance of bulk updates to a table with the EXECUTE_UPDATE procedure in the DBMS_REDEFINITION package. Performance is optimized because the updates are not logged in the redo log.

      See "Optimizing the Performance of Bulk Updates".

    • You can query the V$ONLINE_REDEF view to monitor the progress of an online table redefinition operation.

      See "Monitoring Online Table Redefinition Progress".

    • When online table redefinition fails, often you can correct the problem that caused the failure and restart the online redefinition process where it last stopped.

      See "Restarting Online Table Redefinition After a Failure".

  • Limit PGA usage with Resource Manager

    Resource Manager can limit the amount of PGA memory that can be allocated to each session in a particular consumer group.

    See "Program Global Area (PGA)".

  • Improvements in index compression

    You can specify a high level of advanced index compression in addition to the low level available in past releases. The high level of advanced index compression saves more space than the low level.

    See "Creating an Index Using Advanced Index Compression".

  • Hybrid Columnar Compression can be enabled for array inserts

    Rows inserted with an array insert can be compressed using Hybrid Columnar Compression. In past releases, only rows inserted with a direct-path INSERT could be compressed using Hybrid Columnar Compression.

    See "About Table Compression".

  • Improvements in table move operations

    When the ONLINE keyword is included in an ALTER TABLE MOVE statement, data manipulation language (DML) operations are supported during the move operation. Also, indexes are usable during the move operation when the ONLINE keyword is included and the UPDATE INDEXES clause is included.

    See "About Moving a Table to a New Segment or Tablespace".

  • New SYSRAC administrative privileges for separation of duties

    Oracle Database now provides an new administrative privilege for tasks related to Oracle Real Application Clusters (Oracle RAC) operations.

    See "Administrative Privileges".

  • New database resident connection pooling parameter for long running transactions

    To prevent long running transactions from being rolled back because of the limit specified in the MAX_THINK_TIME parameter, the new parameter MAX_TXN_THINK_TIME for subprograms in the DBMS_CONNECTION_POOL package specifies the maximum amount of time, in seconds, for any sessions with a transaction in progress.

    See "Configuration Parameters for Database Resident Connection Pooling".

  • Additional information available about the state of each connection in the database resident connection pool

    New columns added to the V$CPOOL_CONN_INFO view provide more information about the current state of each connection in the connection pool.

    See "Determining the States of Connections in the Connection Pool".

  • Improved monitoring for database links

    New views and supplied PL/SQL functions enable you to determine the host name of an outgoing database link, view detailed information about information about incoming database links, and determine the source of high system change number (SCN) activity for incoming database links.

    See "Determining the Host of Outgoing Database Links", "Determining Information About Incoming Database Links", and "Determining the Source of High SCN Activity for Incoming Database Links".

  • Object quarantine

    Object quarantine isolates an object that has raised an error and monitors the object for impacts on the system.

    See "Monitoring Quarantined Objects".

  • Delay of instance abort

    The INSTANCE_ABORT_DELAY_TIME initialization parameter specifies a delay time when an error causes an instance to abort.

    See "Delaying Instance Abort".

  • Prespawned processes

    Oracle Database can prespawn processes for better client connection performance.

    See "Managing Prespawned Processes".

  • Partitioned external tables

    For large amounts of data, partitioning for external tables provides fast query performance and enhanced data maintenance.

    See "Partitioning External Tables".

Changes in Oracle Database 12c Release 1 (

The following are changes in Oracle Database Administrator's Guide for Oracle Database 12c Release 1 (

New Features

The following features are new in this release:

  • In-Memory Column Store

    The In-Memory Column Store (IM column store) in an optional area in the SGA that stores whole tables, table partitions, individual columns, and materialized views in a compressed columnar format. The database uses special techniques to scan columnar data extremely rapidly. The IM column store is a supplement to rather than a replacement for the database buffer cache.

    See "Improving Query Performance with the In-Memory Column Store".

  • Data Pump Support for the In-Memory Column Store

    Data Pump can keep, override, or drop the In-Memory clause for database objects being imported.

    See Oracle Database In-Memory Guide.

  • Force full database caching mode

    To improve performance, you can force an instance to store the database in the buffer cache.

    See "Using Force Full Database Caching Mode".

  • Big Table Cache

    The Automatic Big Table Caching feature enables parallel queries to use the buffer cache.

    See "Memory Architecture Overview".

  • Attribute-clustered tables

    Attribute clustering specifies a directive for heap-organized tables to store data in close proximity on disk, providing performance and data storage benefits. This directive is only applicable for direct path operations, such was a bulk insert or a move operation.

    See "Consider Using Attribute-Clustered Tables".

  • Zone maps

    A zone is a set of contiguous data blocks on disk. A zone map tracks the minimum and maximum of specified columns for all individual zones. The primary benefit of zone maps is I/O reduction for table scans.

    See "Consider Using Zone Maps".

  • Advanced index compression

    Advanced index compression results in excellent compression ratios while still providing efficient access to the indexes. Advanced index compression works at the block level to provide the best compression for each block, which means that users do not require knowledge of data characteristics. Advanced index compression automatically chooses the right compression for each block.

    See "Creating an Index Using Advanced Index Compression".

  • Preserving the open mode of PDBs when the CDB restarts

    You can preserve the open mode of one or more PDBs when the CDB restarts by using the ALTER PLUGGABLE DATABASE SQL statement with a pdb_save_or_discard_state clause.

    See "Preserving or Discarding the Open Mode of PDBs When the CDB Restarts".


    You can use this clause to separate the data for multiple schemas into different PDBs. For example, when you move a non-CDB to a PDB, and the non-CDB had a number of schemas that each supported different application, you can use this clause to separate the data belonging to each schema into a separate PDB, assuming that each schema used a separate tablespace in the non-CDB.

    See "User Tablespaces".

  • Excluding data when cloning a PDB

    The NO DATA clause of the CREATE PLUGGABLE DATABASE statement specifies that a PDB's data model definition is cloned but not the PDB's data.

    See "Excluding Data When Cloning a PDB".

  • Default Oracle Managed Files file system directory or Oracle ASM disk group for a PDB's files

    The CREATE_FILE_DEST clause specifies the default location.

    See "File Location of the New PDB".

  • Create a PDB by cloning a non-CDB

    You can create a PDB by cloning a non-CDB with a CREATE PLUGGABLE DATABASE statement that includes the FROM clause.

    See "Creating a PDB by Cloning an Existing PDB or Non-CDB".

  • The logging_clause of the CREATE PLUGGABLE DATABASE and ALTER PLUGGABLE DATABASE statement

    This clause specifies the logging attribute of the PDB. The logging attribute controls whether certain DML operations are logged in the redo log file (LOGGING) or not (NOLOGGING).

    See "PDB Tablespace Logging" for information about this clause and the CREATE PLUGGABLE DATABASE statement. See "Modifying a PDB with the ALTER PLUGGABLE DATABASE Statement" for information about this clause and the ALTER PLUGGABLE DATABASE statement.

  • The pdb_force_logging_clause of the ALTER PLUGGABLE DATABASE statement

    This clause places a PDB into force logging or force nologging mode or takes a PDB out of force logging or force nologging mode.

    See "Modifying a PDB with the ALTER PLUGGABLE DATABASE Statement".

  • The STANDBYS clause of the CREATE PLUGGABLE DATABASE statement

    This clause specifies whether the new PDB is included in standby CDBs.

    See "PDB Inclusion in Standby CDBs".

  • Querying user-created tables and views across all PDBs

    The CONTAINERS clause enables you to query user-created tables and views across all PDBs in a CDB.

    See Querying User-Created Tables and Views Across All PDBs.

  • Oracle Clusterware support for the Diagnosability Framework

    Oracle Clusterware uses the Diagnosability Framework and ADR for recording diagnostic trace data and the Clusterware alert log.

    See "ADR in an Oracle Clusterware Environment".

  • READ object privilege and READ ANY TABLE system privilege

    READ privilege on an object enables a user to select from an object without providing the user with any other privileges.

    See "System and Object Privileges for External Tables" and Oracle Database Security Guide for more information.

Changes in Oracle Database 12c Release 1 (

The following are changes in Oracle Database Administrator's Guide for Oracle Database 12c Release 1 (

New Features

The following features are new in this release:

  • Oracle Multitenant option

    Oracle Multitenant option enables an Oracle database to function as a multitenant container database (CDB) that includes one or many customer-created pluggable databases (PDBs). A PDB is a portable collection of schemas, schema objects, and nonschema objects that appears to an Oracle Net client as a non-CDB. All Oracle databases before Oracle Database 12c were non-CDBs. You can unplug a PDB from a CDB and plug it into a different CDB.

    See Managing a Multitenant Environment.

  • Resource Manager support for a multitenant environment

    Resource Manager can manage resources on the CDB level and on the PDB level. You can create a CDB resource plan that allocates resources to the entire CDB and to individual PDBs. You can allocate more resources to some PDBs and less to others, or you can specify that all PDBs share resources equally.

    See Using Oracle Resource Manager for PDBs with SQL*Plus.

  • Full transportable export/import

    Full transportable export/import enables you to move a database from one database instance to another. Transporting a database is much faster than other methods that move a database, such as full database export/import. In addition, you can use full transportable export/import to move a non-CDB (or an Oracle Database 11g Release 2 ( database) into a PDB that is part of a CDB.

    See Transporting Data.

  • New administrative privileges for separation of duties

    Oracle Database now provides administrative privileges for tasks related to Oracle Recovery Manager (Oracle RMAN), Oracle Data Guard, and Transparent Data Encryption. Each new administrative privilege grants the minimum required privileges to complete tasks in each area of administration. The new administrative privileges enable you to avoid granting SYSDBA administrative privilege for many common tasks.

    See "Administrative Privileges"

  • Database Smart Flash Cache support for multiple flash devices

    A database instance can access and combine multiple flash devices for Database Smart Flash Cache without requiring a volume manager.

    See "Database Smart Flash Cache Initialization Parameters".

  • Temporary undo

    Undo for temporary objects is stored in a temporary tablespace, not in the undo tablespace. Using temporary undo reduces the amount of undo stored in the undo tablespace and the size of the redo log. It also enables data manipulation language (DML) operations on temporary tables in a physical standby database with the Oracle Active Data Guard option.

    See "Managing Temporary Undo". Also, see Oracle Data Guard Concepts and Administration for information about the benefits of temporary undo in an Oracle Data Guard environment.

  • Move a data file online

    You can move a data file when the data file is online and being accessed. This capability simplifies maintenance operations, such as moving data to a different storage device.

    See "Renaming and Relocating Online Data Files".

  • Multiple indexes on the same set of columns

    You can create multiple indexes on the same set of columns to perform application migrations without dropping an existing index and recreating it with different attributes.

    See "Understand When to Create Multiple Indexes on the Same Set of Columns".

  • Move a partition or subpartition online

    DML operations can continue to run uninterrupted on a partition or subpartition that is being moved without using online table redefinition.

    See "Moving a Table to a New Segment or Tablespace".

  • Online redefinition of a table in one step

    You can use the REDEF_TABLE procedure in the DBMS_REDEFINITION package to perform online redefinition of a table's storage properties in a single call to the procedure.

    See "Performing Online Redefinition with the REDEF_TABLE Procedure".

  • Online redefinition of tables with multiple partitions

    To minimize downtime when redefining multiple partitions in a table, you can redefine these partitions online in a single session.

    See "Online Redefinition of One or More Partitions".

  • Online redefinition of tables with Virtual Private Database (VPD) policies

    To minimize downtime, tables with VPD policies can be redefined online.

    See "Handling Virtual Private Database (VPD) Policies During Online Redefinition".

  • New time limit parameter in the FINISH_REDEF_TABLE procedure

    The dml_lock_timeout parameter in the FINISH_REDEF_TABLE procedure in the DBMS_REDEFINITION package can specify how long the procedure waits for pending DML to commit.

    See step 8 in "Performing Online Redefinition with Multiple Procedures in DBMS_REDEFINITION".

  • Invisible columns

    You can make individual table columns invisible. Any generic access of a table does not show the invisible columns in the table.

    See "Understand Invisible Columns".

  • Optimized ALTER TABLE...ADD COLUMN with default value for nullable columns

    A nullable column is a column created without using the NOT NULL constraint. For certain types of tables, when adding a nullable column that has a default value, the database can optimize the resource usage and storage requirements for the operation. It does so by storing the default value for the new column as table metadata, avoiding the need to store the value in all existing records.

    See "Adding Table Columns".

  • Copy-on-write cloning of a database with CloneDB

    When cloning a database with CloneDB, Oracle Database can create the files in a CloneDB database based on copy-on-write technology, so that only the blocks that are modified in the CloneDB database require additional storage on disk.

    See "Cloning a Database with CloneDB".

  • DDL log

    When the logging of DDL statements is enabled, DDL statements are recorded in a separate DDL log instead of the alert log.

    See "DDL Log".

  • Debug log

    Some information that can be used to debug a problem is recorded in a separate debug log instead of the alert log.

    See "Debug Log".

  • Full-word options for the Server Control (SRVCTL) utility

    For improved usability, each SRVCTL utility option is a full word instead of single letter.

    See "SRVCTL Command Reference for Oracle Restart".

  • Transaction Guard and Application Continuity

    Transaction Guard ensures at-most-once execution of transactions to protect applications from duplicate transaction submissions and associated logical errors. Transaction Guard enables Application Continuity, which is the ability to replay transactions and continue processing after recoverable communication errors.

    See "Transaction Guard and Application Continuity".

  • Enhanced statement queuing

    Critical statements can bypass the parallel statement queue. You can set the resource plan directive PARALLEL_STMT_CRITICAL to BYPASS_QUEUE for a high-priority consumer group so that parallel statements from the consumer group bypass the parallel statement queue.

    See "Creating Resource Plan Directives ".

  • New Job Types

    Several new script jobs have been added that permit running custom user scripts using SQL*Plus, the RMAN interpreter, or a command shell for the computer platform.

    See "Script Jobs".

Deprecated Features

The following features are deprecated in this release and may be desupported in a future release:

  • The IGNORECASE argument of ORAPWD

    To support strong authentication, Oracle recommends that you set IGNORECASE to n or omit IGNORECASE entirely. The default value of this optional ORAPWD argument is n.

    See "Creating a Database Password File with ORAPWD" for further information.

  • Single-character options with Server Control (SRVCTL) utility commands

    All SRVCTL commands have been enhanced to accept full-word options instead of the single-letter options. All new SRVCTL command options added in this release support full-word options only and do not have single-letter equivalents. The use of single-character options with SRVCTL commands might be desupported in a future release.

    See "SRVCTL Command Reference for Oracle Restart" for further information.

  • The FILE_MAPPING initialization parameter

    The FILE_MAPPING initialization parameter is deprecated. It is still supported for backward compatibility.

    See Oracle Database Reference for information about the FILE_MAPPING initialization parameter.


    This view continues to be available for backward compatibility.

    See "Specifying Scheduler Job Credentials" for further information.