Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 1
The Oracle Multitenant Option meets Oracle RAC
Deba Chatterjee
Principal Product Manager, Oracle Multitenant
Markus Michalewicz
Director of Product Management, Oracle RAC
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 3
Safe Harbor Statement
The following is intended to outline our general product direction. It is
intended for information purposes only, and may not be incorporated
into any contract. It is not a commitment to deliver any material, code, or
functionality, and should not be relied upon in making purchasing
decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole
discretion of Oracle.
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 4
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 5
Oracle Multitenant and Oracle RAC Winning combination of scalability & reliability for consolidated databases
Oracle Multitenant & Oracle RAC
• Scalability • Flexibility • Reduced Costs
Oracle RAC: Scalable, Reliable
Oracle Multitenant
• Consolidation means
“putting all your eggs
in one basket”
• Consolidating many
databases into one
demands scalable
platform
Oracle RAC
• Means managing
many nodes in the
cluster as one system
• Provides resiliency
against individual
server failures
• Allows for horizontal
scaling
Multitenant: Simplify Consolidation
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 6
Standardize on Oracle RAC and Oracle Multitenant The new standard for Oracle Database Consolidation
Consolidation
Ag
ilit
y
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 7
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 8
Oracle Multitenant Architecture Components of a Multitenant Container Database (CDB)
Pluggable Databases (PDBs)
PDBs
Root
CDB
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 9
Oracle Multitenant Architecture – Dynamics
PDBs share common SGA
and background processes
Foreground sessions see only
the PDB they connect to
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 10
Advantages of Oracle Multitenant Architecture Reduced CapEx & OpEx, Increased Agility, Easy Adoption
Self-contained PDB for each application Applications run unchanged
Rapid provisioning (via clones)
Portability (via pluggability)
Shared memory and background processes More applications per server
Common operations performed at CDB level Manage many as one (upgrade, HA, backup)
Granular control when appropriate
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 11
Oracle Real Application Clusters (RAC) 12c Overview
– Clustered database deployments for
high availability, performance, and agility
– Oracle's premier shared disk
database clustering technology
– Choice of administrator-managed or
policy-managed deployments
Benefits
– Runs all database workloads
– Foundation for database clouds
– Scale out and scale up on-demand
– Highest availability for the database
– Flexible workload management
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 12
Oracle Multitenant on Oracle RAC Consider a Single Instance (SI), non-CDB
Server
Database Instance
Services
Server
Database Instance
CRM
North
CRM
South Services CRM
Reporting
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 13
Oracle Multitenant on Oracle RAC Then consider a RAC Database, non-CDB
Node 1
RAC Instance 1
Services
Node 1
RAC Instance 1
CRM
North
CRM
South Services
Node 2
RAC Instance 2
CRM
Reporting
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 14
Oracle Multitenant on Oracle RAC Finally, picture a CDB RAC Database
Node2
CDB Instance 2
Node1
CDB Instance 1
CDB
Services
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 15
Oracle Multitenant on Oracle RAC The simplest way of converting a SI PDB to RAC: unplug/plug
Node2
CDB Instance 2
Node1
CDB Instance 1
CDB
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 16
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 17
HRg1wc
Why Use Services? Because the default service should not be used for client connections
The default service of the CDB is started when
the CDB is started. This is an admin-service.
The default service of the PDB is available
for connectivity as soon as PDB is mounted
with the startup of the CDB.
If an application uses the default service for
connectivity, it can connect to this service as
soon as it is registered with the listener.
– How to prevent an application from connecting?
rudolph
cdb1
sqlplus <user>/<pwd>@MySCAN/crmsvc
CRM PDB Default service
HR PDB CRMSVC
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 18
HRg1wc
Why Use Services? Using the default service is not enough when moving PDBs around
PDBs provide location independency (plug /
unplug / clone), but exist within an environment
Moving PDBs between environments
may require changing names of PDBs.
Use services to provide a “dial in number” for
your application. If the PDB moves to another
location, you can keep the number.
– This requires uniqueness of service names
rudolph
cdb1
CRM PDB
HR PDB CRMSVC cupid
cdb1
NewHR
PDB
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 19
Use Services with Policy Managed Databases For better HA and workload management
Oracle RAC-based systems allow for
management of services based on policies.
Server Pools are used to group workload to run
on either one or a group of servers in the pool.
Using policies allows for adapting to changes
in demand (Dynamic Database Services)
HRg1wc
HR PDB
CRM PDB
CRMSVC vixen srvpool: backoffice comet srvpool: frontoffice
dancer srvpool: frontoffice dasher srvpool: frontoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_1
raccdb1_4 Raccdb1_3
Raccdb1_2
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 20
Policy-Managed Databases with Oracle RAC 12c Improved HA Management - Startup
raccdb1
Defining a Service Startup Order
– Ensure services are started in
specified groups and specified order.
– Leverages Server Pool
Minimum and Importance properties
dasher srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_4
1st
vixen srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_3
2nd
comet srvpool: backoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_1
4th
dancer srvpool: backoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_2
3rd
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 21
dancer srvpool: backoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_2
dancer srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_2
Policy-Managed Databases with Oracle RAC 12c Improved HA Management – New Failover Strategy
raccdb1
dasher srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_4
vixen srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_3
comet srvpool: backoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_1
Servers “Move” to Replace Failed node
– Protects against cascade failures due to load
– Ensures workload isolation between pools
– Less important workloads
shutdown transactional
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 22
dancer srvpool: backoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_2
dancer srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_2
comet srvpool: backoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_1
comet srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_1
Policy-Managed Databases with Oracle RAC 12c Improved HA Management – Manage Last Service Standing
raccdb1
dasher srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_4
vixen srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_3
Business Critical Services survive multiple failures
– Most important pool always gets the servers
– Services preserved across multiple failures
– Less important workloads shutdown transactional
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 23
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 24
Improved Agility With Changing Workloads Dynamic Provisioning
vixen srvpool: frontoffice
dancer srvpool: backoffice dasher srvpool: frontoffice
Oracle GI | HUB Oracle GI | HUB
Oracle GI | HUB
Oracle RAC Oracle RAC
Oracle RAC
raccdb1
raccdb1_3
raccdb1_4 raccdb1_2
[GRID]> srvctl modify serverpool
–serverpool backoffice –max 1
[RAC]> srvctl config serverpool
Server pool name: frontoffice
Importance: 10, Min: 2, Max 4
Server pool name: backoffice
Importance: 5, Min: 1, Max 1
[RAC]> srvctl status service –db
Service crmsrv is running on nodes dasher,dancer,vixen
Service hrsvc is not running
comet srvpool: backoffice
Oracle GI | HUB
Oracle RAC
raccdb1_1
Add Servers Just-In Time to meet demand
– Server Pools sized via Min and Max properties
– Dynamically controlled by QoS Management
– Planned control via Clusterware or QoSM Policies
dancer srvpool: frontoffice
Oracle GI | HUB
Oracle RAC
raccdb1_2
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 25
Improved Agility With Changing Workloads Facilitating Policy-Managed Dynamic Database Services
HRg1wc
HR PDB
CRM PDB
CRMSVC vixen srvpool: backoffice comet srvpool: frontoffice
dasher srvpool: frontoffice
Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_1
raccdb1_4
dancer srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_3
raccdb1_2
sqlplus <user>/<pwd>@MySCAN/crmsvc
SQL> select instance_name,host_name
from v$instance;
INSTANCE_NAME HOST_NAME
------------------------------------
raccdb1_3 dancer
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 26
Improved Agility With Changing Workloads Facilitating Policy-Managed Dynamic Database Services
HRg1wc
HR PDB
CRM PDB
CRMSVC
sqlplus <user>/<pwd>@MySCAN/crmsvc
SQL> select instance_name,host_name
from v$instance;
INSTANCE_NAME HOST_NAME
------------------------------------
Raccdb1_1 vixen
vixen srvpool: frontoffice comet srvpool: backup
dancer srvpool: backup dasher srvpool: backoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_1
raccdb1_4 raccdb1_3
raccdb1_2
backup
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 27
dancer srvpool: frontoffice
Oracle GI for a cluster
Oracle RAC
raccdb1_3
Improved Agility With Changing Workloads Stopping a PDB once it was opened r/w or r/o using services
vixen srvpool: frontoffice comet srvpool: frontoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
raccdb1
raccdb1_1 Raccdb1_2
sqlplus <user>/<pwd>@MySCAN/crmsvc ERROR:
ORA-12514: TNS:listener does not currently
know of service requested in connect descriptor
Services regulate user access to a database
– The first service assigned to a PDB opens
the PDB in read/write mode (default)
– Stopping a service does not close the PDB
User access to this PDB is prevented.
– The buffers held by the PDB not actively used
will be subject to regular buffer aging operations
Use SQL to stop a PDB (on an instance) as required
Buffers HRg1wc
HR PDB CRMSVC
CRM PDB
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 28
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 29
Create an Oracle RAC Database What is the default when keeping the preselection in steps 1-4…?
Policy-managed
Oracle RAC-based
Non-CDB Database
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 30
Create an Oracle RAC-based CDB Create a CDB instead…
Create an empty
multitenant CDB.
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 31
Milestone What has been installed and configured so far?
vixen srvpool: frontoffice comet srvpool: backoffice
dancer srvpool: backoffice dasher srvpool: frontoffice
OS OL 6.4 OS OL 6.4
OS OL 6.4 OS OL 6.4
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_2
raccdb1_1
[RAC]> srvctl status database -d raccdb1
Instance raccdb1_1 is running on node comet
Instance raccdb1_2 is running on node dancer
[RAC]>srvctl status srvpool -serverpool backoffice -detail
Server pool name: backoffice
Active servers count: 2
Active server names: comet,dancer
NAME=comet STATE=ONLINE
NAME=dancer STATE=ONLINE
[RAC]> srvctl status srvpool
Server pool name: Free
Active servers count: 0
Server pool name: Generic
Active servers count: 0
Server pool name: backoffice
Active servers count: 2
Server pool name: frontoffice
Active servers count: 2
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 32
Create Pluggable Databases Create HR PDB on running instances
vixen srvpool: frontoffice comet srvpool: backoffice
dancer srvpool: backoffice dasher srvpool: frontoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_2
raccdb1_1
Create a PDB on a node
that hosts a multintenant
CDB instance
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 33
Create Pluggable Databases Create CRM PDB on running instances
vixen srvpool: frontoffice comet srvpool: backoffice
dancer srvpool: backoffice dasher srvpool: frontoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_2
raccdb1_1
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 34
Post-Creation Steps Create services – part 1
vixen srvpool: frontoffice comet srvpool: backoffice
dancer srvpool: backoffice dasher srvpool: frontoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_2
raccdb1_1 [RAC]> srvctl add service -d raccdb1 -s hrsvc -pdb hr -
serverpool backoffice
[RAC]> srvctl add service -d raccdb1 -s crmsvc -pdb crm -
serverpool frontoffice
[RAC]> srvctl start service -d raccdb1 -s hrsvc
[RAC]> srvctl start service -d raccdb1 -s crmsvc
Dynamic Database Services
– For easier management of multitenant CDBs
– For better workload management in the cluster
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 35
Pluggable Databases
– By default are in mount status after creation
– They need to be opened in either r/o or w/r
– Startup and distribution of Pluggable databases
can be automated and optimized using services
Post-Creation Steps Create services – part 2
vixen srvpool: frontoffice comet srvpool: backoffice
dancer srvpool: backoffice dasher srvpool: frontoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
raccdb1_3
raccdb1_4 raccdb1_2
raccdb1_1
[RAC]> srvctl status database -d raccdb1
Instance raccdb1_1 is running on node comet
Instance raccdb1_2 is running on node dancer
Instance raccdb1_3 is running on node vixen
Instance raccdb1_4 is running on node dasher
[RAC]> srvctl status service -d raccdb1
Service crmsvc is running on nodes: vixen,dasher
Service hrsvc is running on nodes: comet,dancer
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 36
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 37
Utilize Nodes in the Cluster to Support Flexible Consolidation Model
Services
Single SGA per
CDB Instance
Improved Agility With Changing Workloads
Node1
CDB Instance 1
Node2
CDB Instance 2
Multitenant Container Database (CDB)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 38
Utilize Nodes in the Cluster to Support Flexible Consolidation Model
Services
Single SGA per
CDB Instance
Node1
CDB Instance 1
Node2
CDB Instance 2
Node3
CDB Instance 3
Improved Agility With Changing Workloads
Multitenant Container Database (CDB)
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 39
Manage Many as One with Multitenant Backup databases as one; recover at pluggable database level
One Backup
Point-in-time recovery
At pluggable database level
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 40
Manage Many as One with Multitenant Backup databases as one; recover at pluggable database level
vixen srvpool: frontoffice comet srvpool: backup
dancer srvpool: backup dasher srvpool: backoffice
Oracle GI for a cluster Oracle GI for a cluster
Oracle GI for a cluster Oracle GI for a cluster
Oracle RAC Oracle RAC
Oracle RAC Oracle RAC
raccdb1
Raccdb1_1
raccdb1_4 raccdb1_3
raccdb1_2
Backup
Point-in-time recovery
At pluggable database level
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 41
Multitenant for Simplified Upgrades Apply changes once, all pluggable databases updated
Upgrade
in-place
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 42
Multitenant for Patching Flexible choice when patching & upgrading databases
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 43
Standardize on Oracle RAC and Oracle Multitenant The new standard for Oracle Database Consolidation
Consolidation
Ag
ilit
y
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 44
Agenda
Introduction
Oracle Multitenant and Oracle RAC Basics
Why Use Database Services
Improved Agility with Changing Workloads
Creating an Oracle RAC-based CDB
Administering an Oracle RAC-based CDB
Summary and Q&A
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 45
Benefit Capability Enabled
Minimize CapEx • More applications per server
Minimize OpEx • Manage many as one
• Standardized procedures & service levels
• Cloning for development / testing
Maximize Agility • Rapid provisioning
• Portability through “pluggability”
• Scalability with RAC
Ease of Adoption • Applications run unchanged
Key Benefits
Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 46