Oracle Database 12c New Features

Hi Guys,

Oracle 12C Database has Released.  You can download it from edelivery.oracle.com.

It comes with plug and play concept.

  • Pluggable database:
    – Oracle provided metadata and data is kept in the container database (CDB).
    – User metadata and data is kept in the plugable database (PDB) .
    – One container can have multiple plugable databases.
    – No namespace clashes. Allows public synonyms and database links at the PDB level, rather than the CBD level.
    – Cloning is quick and simple as only user metadata and data needs to be cloned.
    – Upgrades have the potential to just unplug from old version (12cR1) to new version (2cR2).
    – Reduce total resource usage is reduced on lower use databases.
    • Separation of Duties:
      – SYSDBA – God
      – SYSOPER – More limited than SYSDBA, but still very powerful.
      – SYSBACKUP – Just enough to do a backup.
      – SYSDG – Just enough for data guard administration.
      – SYSKM – Just enough to perform basic key management tasks.
      – Roles for audit management.

12c Enables us to rename and relocation Online of an active data file

Oracle database 12c R1 no longer requires a number of steps i.e. putting the tablespace in READ ONLY mode, followed by data file offline action.

In 12c R1, a datafile can be renamed or moved online simply using the

ALTER DATABASE MOVE DATAFILE SQL statement.

While the data file is being transferred, the end user can perform queries, DML and DDL tasks.

Additionally, data files can be migrated between storages e.g. from non-ASM to ASM and vice versa.

Rename a data file:

SQL> ALTER DATABASE MOVE DATAFILE ‘/u00/data/users01.dbf’ TO ‘/u00/data/users_01.dbf’;

Migrate a data file from non-ASM to ASM:

SQL> ALTER DATABASE MOVE DATAFILE ‘/u00/data/users_01.dbf’ TO ‘+DG_DATA’;

Migrate a data file from one ASM disk group to another:

SQL> ALTER DATABASE MOVE DATAFILE ‘+DG_DATA/DBNAME/DATAFILE/users_01.dbf ‘ TO ‘+DG_DATA_02’;

Overwrite the data file with the same name, if it exists at the new location:

SQL> ALTER DATABASE MOVE DATAFILE ‘/u00/data/users_01.dbf’ TO ‘/u00/data_new/users_01.dbf’ REUSE;

Copy the file to a new location whilst retaining the old copy in the old location:

SQL> ALTER DATABASE MOVE DATAFILE ‘/u00/data/users_01.dbf’ TO ‘/u00/data_new/users_01.dbf’ KEEP;

You can monitor the progress while a data file being moved by querying the v$session_longops dynamic view.

Additionally, you can also refer the alert.log of the database where Oracle writes the details about action being taken place.

Nagulu Polagani

"We are all apprentices in a craft where no one ever becomes a master."