There are three distinct types of databases in Oracle Database 12c.
• A single-tenant database: This is a self-contained set of data files, control files, redo log files, parameter files, and so on, that include all of the Oracle metadata (the definition of ALL_OBJECTS, for example), Oracle data, and Oracle code (such as the code for DBMS_OUTPUT), in addition to all of the application metadata, data, and code. This is the only type of database in releases prior to version 12c.
• A container or root database: This is a self-contained set of data files, control files, redo log files, parameter files, and so on, that only include the Oracle metadata, Oracle data, and Oracle code. There are no application objects or code in these data files—only Oracle-supplied metadata and Oracle-supplied code objects. This database is self-contained in that it can be mounted and opened without any other supporting physical structures.
• A pluggable database: This is a set of data files only. It is not self-contained. A pluggable database needs a container database to be “plugged into” to be opened and accessible. These data files contain only metadata for application objects, application data, and code for those applications. There is no Oracle metadata or any Oracle code in these data files. There are no redo log files, control files, parameter files, and so on—only data files associated with a pluggable database. The pluggable database inherits these other types of files from the container database it is currently plugged into.
So you can see that “single-tenant database” is one type of the three distinct types of databases in Oracle Database 12c, and “pluggable database” is another type of the three.
“single-tenant database” is the only type before 12c, so it is automatically supported.
“pluggable database” is also supported. It is based on two reasons:
1. there are the following text in the chapter 2 of that pdf:
How Is a Pluggable Database Different?
From the perspective of a developer, a pluggable database is no different from a single-tenant database. The application connects to the database in exactly the same way it would connect to a single-tenant database in earlier releases. The earlier examples of creating connections, using shared servers, and using dedicated servers all still apply. The differences lie in the underlying architecture–that of a single instance for many pluggable databases, and the resulting reduced resource utilization on the server and the ease of management for the DBA.
2. The design of SM RTE makes it treats the implementation details of the ORACLE database architecture as a black box.