Wednesday, 31 May 2017

Multitenant : Pluggable Database (PDB) Operating System (OS) Credentials in Oracle Database 12c Release 2

There are a number of database features that require access to the operating system, for example external jobs without explicit credentials, PL/SQL library executions and preprocessor executions for external tables. By default these run using the Oracle software owner on the operating system, which is a highly privileged user and represents a security risk if you are trying to consolidate multiple systems into a single container.

Monday, 29 May 2017

Multitenant : PDB Lockdown Profiles in Oracle Database 12c Release 2

A PDB lockdown profile allows you to restrict the operations and functionality available from within a PDB. This can be very useful from a security perspective, giving the PDBs a greater degree of separation and allowing different people to manage each PDB, without compromising the security of other PDBs with the same instance.

Friday, 26 May 2017

Multitenant : PDB Archive Files for Unplug and Plugin in Oracle Database 12c Release 2

In Oracle 12.1 a pluggable database could be unplugged to a ".xml" file, which describes the contents of the pluggable database. To move the PDB, you needed to manually move the ".xml" file and all the relevant database files. In addition to this functionality, Oracle 12.2 allows a PDB to be unplugged to a ".pdb" archive file. The resulting archive file contains the ".xml" file describing the PDB as well as all the datafiles associated with the PDB. This can simplify the transfer of the files between servers and reduce the chances of human error.

Thursday, 25 May 2017

Multitenant : Memory Resource Management for PDBs in Oracle Database 12c Release 2

In the previous release there was no way to control the amount of memory used by an individual PDB. As a result a "noisy neighbour" could use up lots of memory and impact the performance of other PDBs in the same instance. Oracle Database 12c Release 2 (12.2) allows you to control the amount of memory used by a PDB, making consolidation more reliable.

  • PDB Memory Parameters


The following parameters can be set at the PDB level.

Friday, 19 May 2017

Multitenant : Local Undo Mode in Oracle Database 12c Release 2

In Oracle Database 12c Release 1 all containers in an instance shared the same undo tablespace. In Oracle 12c Release 2 each container in an instance can use its own undo tablespace. This new undo management mechanism is called local undo mode, whilst that of previous releases is now known as shared undo mode. Local undo mode is the default mode in newly created databases, so you will probably only need to consider switching undo modes for upgraded instances.

Thursday, 18 May 2017

Multitenant : Hot Clone a Remote PDB or Non-CDB in Oracle Database 12c Release 2

In the initial release of Oracle Database 12c Release 1 (12.1.0.1) remote cloning of PDBs was listed as a feature, but it didn't work. The 12.1.0.2 patch fixed that, but also added the ability to create a PDB as a clone of a remote non-CDB database. The biggest problem with remote cloning was the prerequisite of placing the source PDB or non-CDB into read-only mode before initiating the cloning process. This made this feature useless for cloning production systems, as that level of down-time is typically unacceptable. Oracle Database 12c Release 2 (12.2) removes this prerequisite, which enables hot cloning of PDBs and non-CDBs for the first time.

Wednesday, 17 May 2017

Multitenant : Flashback Pluggable Database (PDB) in Oracle Database 12c Release 2

In Oracle Database 12.1 flashback database operations were limited to the root container, and therefore affected all pluggable databases (PDBs) associated with the root container. Oracle Database 12.2 now supports flashback of a pluggable database, making flashback database relevant in the multitenant architecture again.

  • Enable/Disable Flashback Database


Before we can enable flashback database we need to make sure the database is in archivelog mode. You must do this from the root container.

Tuesday, 16 May 2017

Multitenant : Disk I/O (IOPS, MBPS) Resource Management for PDBs in Oracle Database 12c Release 2

In the previous release there was no easy way to control the amount of disk I/O used by an individual PDB. As a result a "noisy neighbour" could use up lots of disk I/O and impact the performance of other PDBs in the same instance. Oracle Database 12c Release 2 (12.2) allows you to control the amount of disk I/O used by a PDB, making consolidation more reliable.

  • I/O Parameters (MAX_IOPS, MAX_MBPS)


The following parameters can be set at the CDB or PDB level to throttle I/O at the PDB level.
  • MAX_IOPS : The maximum I/O operations per second for the PDB. Default "0". Values less that 100 IOPS are not recommended.

Monday, 15 May 2017

Multitenant : Default Tablespace Clause During PDB Creation in Oracle Database 12c Release 2

This article describes the change in behaviour of the DEFAULT TABLESPACE clause of the CREATE PLUGGABLE DATABASE command between Oracle database 12.1 and 12.2.

  • Default Tablespace Clause in 12.1

In both Oracle database 12.1 and 12.2 the DEFAULT TABLESPACE clause of the CREATE PLUGGABLE DATABASE command can be used to create a new default tablespace for a pluggable database created from the seed.

Friday, 12 May 2017

Multitenant : Application Containers in Oracle Database 12c Release 2

Application containers are a new feature in Oracle Database 12c Release 2 (12.2) that allow you to define an application root, like a mini CDB root container, along with dependent application container PDBs. An application root can house one or more applications, each made up of shared configuration, metadata and objects that are used by the pluggable databases associated with the application root.

Thursday, 11 May 2017

Multitenant : Create and Configure a Pluggable Database (PDB) in Oracle Database 12c (12.1 and 12.2) Part- 2

  • Manual (SQL*Plus)


There are lots of variations on the CREATE PLUGGABLE DATABASE and ALTER PLUGGABLE DATABASE commands, so we will keep things simple here and only focus on those that mimic what is possible in the DBCA.

For all the operations listed here you must be connected to the CDB with the container set to root (the default). Typically you will be connected to a common user with SYSDBA or SYSOPER privilege. When creating a new pluggable database, the user must have the CREATE PLUGGABLE DATABASE system privilege.

Wednesday, 10 May 2017

Multitenant : Create and Configure a Pluggable Database (PDB) in Oracle Database 12c (12.1 and 12.2) Part- 1

The multitenant option introduced in Oracle Database 12c allows a single container database (CDB) to host multiple separate pluggable databases (PDB). This article covers the options available to create a new pluggable database in an existing container database.

  • Oracle Universal Installer (OUI)

In a previous article we discussed the creation of a pluggable database (PDB) during the creation of the container database (CDB) during the installation of the Oracle software using the Oracle Universal Installer (OUI).

Thursday, 4 May 2017

Database Migration Assistant for Unicode (DMU) in Oracle Database 12c

The Database Migration Assistant for Unicode (DMU) is listed as a 12c new feature, but it is actually a separate tool that supports a number of different database versions.

  • Download


Version 1.2 of the DMU is shipped with the 12c database. You can see it by running the following commands.

$ cd $ORACLE_HOME/dmu
$ sh dmu.sh
Oracle recommend you always download the latest release before starting a migration. At the time of writing, version 2.0 is available at OTN.

Monday, 1 May 2017

Multitenant : Create and Configure a Container Database (CDB) in Oracle Database 12c

The multitenant option introduced in Oracle Database 12c allows a single container database (CDB) to host multiple separate pluggable databases (PDB). This article covers the options available to create a new container database.

  • Oracle Universal Installer (OUI)

The Oracle Universal Installer (OUI) allows you to create a container database (CDB) during the software installation. The "Typical Install Configuration" screen has a checkbox to indicate the database is a container database. You can optionally create a single pluggable database (PDB) in this screen also.