Database-as-a-Service with
#EM12c and #DB12c
Leighton L. Nelson
About Me
Oracle DBA
Oracle ACE
Oracle Certified Expert RAC and Grid Infrastructure
Administrator 11gR2
Co-Author Expert Oracle Enterprise Manager Cloud Control
12c (Apress 2013)
Speaker at IOUG Collaborate, KScope, Oracle OpenWorld
Blogs, Social Media
RAC Attack Ninja
Agenda
What is Database-as-a-Service (DBaaS)
Why DBaaS?
Why EM12c?
Self-Service Portal
Pluggable DBaaS
Metering and Chargeback
Rapid Cloud Setup
What is Database as a Service
(DBaaS)?
The ability to provide rapid on-demand
database provisioning using a
consolidated platform to reduce cost and
increase resource utilization.
Why #DBaaS?
Self-Service Automation
Fast Provisioning
Reduces Database/VM Sprawl
Standardization & Automation
DBaaS Providers
Why #EM12c?
Central Database Management Tool
Complete Lifecycle Management
Quota, Role-based Access
REST API Access
Single Pane of Glass
Why #DB12c?
Database Consolidation (Containers)
“Manage Many as One”
Backups, Upgrades & Patching
Fast Provisioning via Plug and
Unplug
Isolation
Security
Use Cases
Copies of Prod for QA & Test
Provision Development Environments for new projects
Create DR Testing Environment
Reporting Databases
Migration from 11g to 12c
Requirements: Plug-ins
Oracle Database
12.1.0.5.0

oracle.sysman.db

Oracle Consolidation Planning and Chargeback oracle.sysman.emct
12.1.0.5.0
Oracle Storage Management Framework
12.1.0.3.0

oracle.sysman.smf

Oracle Cloud Application
12.1.0.7.0

oracle.sysman.ssa

Oracle Virtualization
12.1.0.5.0

oracle.sysman.vt

Oracle Exadata
12.1.0.4.0

oracle.sysman.xa

VMware vSphere
12.1.0.8.0

bm.vmware.vsph
Requirements: Licenses
Oracle Database12c Multitenant Option
Cloud Management Pack for Database
Database Lifecycle Management Pack
Storage Licenses if Necessary
EM12c DBaaS Options
DBCA Template
RMAN
SnapClone
Schema-as-a-Service
Pluggable DBaaS (Multitenant) 12.1.0.3.0
DBaaS Setup
Create Roles and Users
Setup Privilege Delegation
Add Hosts
Configure Software Library
Create PaaS Infrastructure Zone
Setup Software Pools
Setup Quotas
Create Provisioning Profiles
Create Service Templates
Users and Roles
Super Administrator
EM_CLOUD_ADMINISTRATOR
EM_SSA_ADMINISTRATOR
EM_SSA_USER

Database Administrator
Self-Service Portal
Database Cloud Topology
Zones
Hosts
hostA
hostB
Software Pools
PDB Pool
RAC Pool
Database Request Dashboard
Database Cloud Home
PDBaaS

Databases for PDB as a Service should be Container Databases
All CDBs should be of a same version
All CDBs should be either single instance or RAC
PDBaaS Pool Setup

$ emcli create_pool -name="Pluggable DB Pool" -target_type="pdbaas_pool" paas_zone="DBA_Test_Zone" -members="orclcdb" -description="Oracle Database 12c Pool for Pluggable
Databases" member_constraints="PLATFORM_CDB=226,TARGET_TYPE_CDB=oracle_database,VERSION_CDB=12.1.0.1.0"!
Software Pool "Pluggable DB Pool" created successfully.!
!

$ emcli get_pool_detail -name="Pluggable DB Pool" -target_type=pdbaas_pool!
!

Name
Target Type
Description
Paas Infrastructure Zone
Number of Members
Placement Constraints!
Member Constraints
Instance!

Pluggable DB Pool!
pdbaas_pool!
Oracle Database 12c Pool for Pluggable Databases!
DBA_Test_Zone!
1!
PLATFORM_CDB : Linux x86-64 , TARGET_TYPE_CDB : Database
, VERSION_CDB : 12.1.0.1.0!
PDBaaS Service Template
PDB provisioned with or without data
RAC or Single Instance PDB
Specify Workloads
$ emcli create_service_template -name="Demo PDB" service_family=DBAAS -service_type="PDB" -software_pools="Pluggable
DB Pool" -pool_target_type=pdbaas_pool -roles=CLOUD_DBA,CLOUD_DEV description="Oracle 12c Pluggable Database"!
Demo
PDBaaS
CREATE PLUGGABLE DATABASE pdb_000 ADMIN USER pdbadmin
IDENTIFIED BY * ROLES=(CONNECT) file_name_convert=NONE
CREATE TABLESPACE EM_PDBAAS_TBSP1 DATAFILE size 10485K
AUTOEXTEND ON
CREATES DATABASE SERVICE
$ srvctl status service -db racdb
Service Mypdb_000 is running on instance(s) racdb1,racdb2
PDBaaS Management
Resource Manager Plan Created at Container Level
Backup Container + PDBs
Patch Container + PDBs
Monitor All PDBs together
Metering & Chargeback
Pay-for-what-you-use (CPU,
memory, storage)
Measure value of I.T. investments
to business
Control costs
Chargeback Requirements

Oracle Chargeback and Capacity Planning plug-in (oracle.sysman.emct)
Cloud Management Pack for Database/Middleware
Chargeback privileges granted (EM_CBA_ADMIN)
Chargeback Setup
Chargeback: SSA Administrator
Chargeback: SSA Administrator
Chargeback: SSA User
Rapid Cloud Setup
Multiple Steps Required for DBaaS setup
click, click, click…
EMCLI
Rapid Start Kit
ORACLE_HOME/bin/emcli @exadata_cloud_setup.py -pdbaas db_list=pdb
Blue Medora Plug-in for VMware
Thank You
http://blogs.griddba.com
LinkedIn
@leight0nn
leightonn@gmail.com

Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Oracle Database 12c