Database Reference
In-Depth Information
Client
Connection
Request
1
Listener
2
fork()/
exec()
3
Client
Connection
Dedicated
Server
Figure 2-4. The listener process and dedicated server connections
However, the listener will behave differently if we are making a shared server connection request. This listener
process knows the dispatcher(s) we have running in the instance. As connection requests are received, the listener
will choose a dispatcher process from the pool of available dispatchers. The listener will either send back to the client
the connection information describing how the client can connect to the dispatcher process or, if possible, hand off
the connection to the dispatcher process (this is OS-and database version-dependent, but the net effect is the same).
When the listener sends back the connection information, it is done because the listener is running on a well-known
hostname and port on that host, but the dispatchers also accept connections on randomly assigned ports on that
server. The listener is made aware of these random port assignments by the dispatcher and will pick a dispatcher
for us. The client then disconnects from the listener and connects directly to the dispatcher. We now have a physical
connection to the database. Figure 2-5 illustrates this process.
1
Client
Connection
Request
2
Tells Client to
Connect to Port
12754
Listener
Dispatcher on
Port 24356
Client
Connection
3
Dispatcher on
Port 12754
Figure 2-5. The listener process and shared server connections
Pluggable Databases
Starting with Oracle Database 12 c , a new approach to the concept of a “database” was introduced. So far in this
chapter, we have concentrated on the single-tenant or container databases and their association with instances
(a database may have one or more instances; an instance will mount and open, at most, a single database). We are
now ready to look at the concept of a pluggable database—what it is and how it operates. Pluggable databases in
the multitenant architecture are non-self-contained sets of data files that consist purely of application data and
metadata. There is no Oracle-specific data/metadata in them; that information is in the container database that they
are currently associated with. A pluggable database—in order to be used, to be queried—must be associated with
a container database. That container database will only have Oracle data and metadata in it—just the information
Oracle needs to “run.” The pluggable databases have the “rest” of the database metadata and data.
 
Search WWH ::




Custom Search