SlideShare a Scribd company logo
1 of 85
BÂLE BERNE BRUGG DUSSELDORF FRANCFORT S.M. FRIBOURG E.BR. GENÈVE
HAMBOURG COPENHAGUE LAUSANNE MUNICH STUTTGART VIENNE ZURICH
Upgrading 300 DBs to 12c in 300 days.
What can go wrong?
Ludovico Caldara
Oracle ACE Director
Trivadis AG
About Ludovico Caldara
Migrating to 12c: 300 DB in 300 days2 30/11/2016
■ 17 Years DBA (Not Only Oracle)
▪ I do it everywhere (even Windows)
■ RAC ATTACK Ninja & co-writer
■ President, SOUG & ITOUG Board
■ OCP (11g, 12c, MySQL) & OCE
■ Italian living in Switzerland
■ http://www.ludovicocaldara.net
■ @ludodba ludodba
■ ludovicocaldara
Our company.
Migrating to 12c: 300 DB in 300 days3 30/11/2016
Trivadis is a market leader in IT consulting, system integration, solution engineering
and the provision of IT services focusing on and
technologies in Switzerland, Germany, Austria and Denmark.
We offer our services in the following strategic business fields:
Trivadis Services takes over the interactive operation of your IT systems.
O P E R A T I O N
COPENHAGEN
MUNICH
LAUSANNE
BERN
ZURICH
BRUGG
GENEVA
HAMBURG
DÜSSELDORF
FRANKFURT
STUTTGART
FREIBURG
BASEL
VIENNA
With over 600 specialists and IT experts in your region.
Migrating to 12c: 300 DB in 300 days4 30/11/2016
14 Trivadis branches and more than
600 employees
200 Service Level Agreements
Over 4,000 training participants
Research and development budget:
CHF 5.0 / EUR 4 million
Financially self-supporting and
sustainably profitable
Experience from more than 1,900
projects per year at over 800
customers
Migrating to 12c: 300 DB in 300 days5 30/11/2016
A small introduction
The customer numbers - Instances
Migrating to 12c: 300 DB in 300 days6 30/11/2016
DISCLAIMER: not really 300 DB in 300 days, but you get the idea 
47
33
220
16 8
28.01.2015
10.2.0.4
11.2.0.2
11.2.0.3
11.2.0.4
12.1.0.2
306
83
84301
30.11.2016
TOTAL: 324 TOTAL: 504
The customer numbers - DBAs
Migrating to 12c: 300 DB in 300 days7 30/11/2016
4 Oracle DBAs (+1 )
504 Oracle instances
Ratio of 126 instances per DBA
111 Instances per DBA
Migrating to 12c: 300 DB in 300 days8 30/11/2016
No Additional DBAs for the migration project.
How is it possible?
Avoid Zoos
Migrating to 12c: 300 DB in 300 days9 30/11/2016
Avoid Zoos
Migrating to 12c: 300 DB in 300 days10 30/11/2016
#MakeStandardsGreatAgain
Have a single platform for all the Oracle Databases (Linux being the most obvious) *
Reduce the number of versions and patches *
All databases are equal in front of the DBA *
Rock-solid naming conventions
* whenever possible
Follow @trumpDBA
Avoid Frankensteins
Migrating to 12c: 300 DB in 300 days11 30/11/2016
Avoid Frankensteins
Migrating to 12c: 300 DB in 300 days12 30/11/2016
…even if they look innocuous!
https://www.flickr.com/photos/rahego/
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days13 30/11/2016
Granting DBA to technical accounts
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days14 30/11/2016
Using Public Synonyms
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days15 30/11/2016
Using DB Links
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days16 30/11/2016
Using Java Stored procedures
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days17 30/11/2016
Using External Tables
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days18 30/11/2016
Setting hidden («underscore») parameters
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days19 30/11/2016
Using /*+ hints */
Trivia quiz: Does it create a Frankenstein?
Migrating to 12c: 300 DB in 300 days20 30/11/2016
Using SQL Plan Management
Automate all the things!
Migrating to 12c: 300 DB in 300 days21 30/11/2016
Automate all the things!
Migrating to 12c: 300 DB in 300 days22 30/11/2016
Database creation/deletion
Database patching
Duplicate, Database refresh
Export/Import of schemas
User management
Tablespace creation/extension
Database upgrades
Migrating to 12c: 300 DB in 300 days23 30/11/2016
July 2013:
So there is a new GA version?
Phases of the migration project
Migrating to 12c: 300 DB in 300 days24 30/11/2016
1. Evaluate
2. Homologate
3. Plan
4. Migrate
5. Maintain / Follow-up
Evaluate (Jan 2014 – Aug 2014)
Migrating to 12c: 300 DB in 300 days25 30/11/2016
What are the New Features?
Does the licensing model change?
Any concern regarding the roadmap?
Any deprecated/desupported features?
The new feature list is long and impressive
Migrating to 12c: 300 DB in 300 days26 30/11/2016
Database New Features Guide
http://docs.oracle.com/database/121/NEWFT/toc.htm
New Features of Oracle Database 12c for DBAs
http://www.trivadis.com/en/training/new-features-oracle-database-12c-dbas-o-nf12c-
dba
The new feature list is long and impressive
Migrating to 12c: 300 DB in 300 days27 30/11/2016
Evaluate (Jan 2014 – Aug 2014)
Migrating to 12c: 300 DB in 300 days28 30/11/2016
Non-CDB, Singletenant, or Multitenant?
Evaluate (Jan 2014 – Aug 2014)
Migrating to 12c: 300 DB in 300 days29 30/11/2016
Non-CDB, Singletenant, or Multitenant?
Not compatible with Multitenant in 12.1:
ILM & Streams (among others)
Homologate (Aug 2014 – Nov 2014)
Migrating to 12c: 300 DB in 300 days30 30/11/2016
Do my scripts work without any change with the new release?
– All automation scripts (create, duplicate, etc)
– Performance related scripts (statistics gathering, etc.)
– Backup and Recovery procedures
– Monitoring with EM12c
Plan (Nov 2014 – Dec 2014)
Migrating to 12c: 300 DB in 300 days31 30/11/2016
113
110
95
132 QA
Other
Integration
Production
Critical
Non-Critical
Complex
Easy
Plan (Nov 2014 – Dec 2014)
Migrating to 12c: 300 DB in 300 days32 30/11/2016
RMAN EM12c
EASY
NON-
CRITICAL
COMPLEX
NON-
CRITICAL
EASY
CRITICAL
COMPLEX
CRITICAL
Plan (Nov 2014 – Dec 2014)
Migrating to 12c: 300 DB in 300 days33 30/11/2016
INTEGRATION QA PRODUCTION
Plan (Nov 2014 – Dec 2014)
Migrating to 12c: 300 DB in 300 days34 30/11/2016
INTEGRATION QA PRODUCTION
QA First!
– Let the developers integrate changes with the current release
– Allow refreshes from Production to Integration
– If the deployement works in Integration and QA, it will work in Prod
– Do performance/regression tests here!
Plan (Nov 2014 – Dec 2014)
Migrating to 12c: 300 DB in 300 days35 30/11/2016
INTEGRATION QA PRODUCTION
When integration is upgraded
– The developers cannot deploy in production
– The production must be upgraded soon
– Make sure you tested correctly in QA
Plan (Nov 2014 – Dec 2014)
Migrating to 12c: 300 DB in 300 days36 30/11/2016
INTEGRATION QA PRODUCTION
When upgrading the production
– Be ready to react ;-)
Migrating to 12c: 300 DB in 300 days37 30/11/2016
Migrate. How?
There is the guide, and there is the gold mine
Migrating to 12c: 300 DB in 300 days38 30/11/2016
Database Upgrade Guide
https://docs.oracle.com/database/121/UPGRD/toc.htm
Upgrade your Database - NOW!
https://blogs.oracle.com/UPGRADE/
It’s a mine: find the diamonds on your own!
Upgrade path
Migrating to 12c: 300 DB in 300 days39 30/11/2016
Database Upgrade Assistant?
Manual Upgrade?
Export/Import?
First, obvious choice: Use DBUA
Migrating to 12c: 300 DB in 300 days40 30/11/2016
Why?
Partially automated
Easy to script
OK for dedicated databases and inter-related consolidated schemas
First, obvious choice: Use DBUA
Migrating to 12c: 300 DB in 300 days41 30/11/2016
Additional steps required. Our migration script actually:
Increases the SGA +512Mb
Executes some pre-upgrade steps
Saves the object states
Checks Data Guard synchronization
Checks for Materialized View refreshs
Does other sanity checks (pending distributed transactions, DF in backup mode, etc)
Checks for the successful execution of the last archive backup
Purges DBA_RECYCLEBIN
… continue…
First, obvious choice: Use DBUA
Migrating to 12c: 300 DB in 300 days42 30/11/2016
Gathers dictionary stats
Saves the oratab
Blackouts the target in EM12c
Launches the dbua (see next page)
Checks the upgrade logs
Runs datapatch -verbose
Changes the LDAP entry if necessary
Changes the ORACLE_HOME for the target in EM12c
Checks and eventually registers the DB with the RMAN catalog
Restores and modifies the oratab
First, obvious choice: Use DBUA
Migrating to 12c: 300 DB in 300 days43 30/11/2016
${NEW_ORACLE_HOME}/bin/dbua -silent 
-sid $ORACLE_SID 
-oracleHome ${ORACLE_HOME} 
-sysDBAUserName sys 
-sysDBAPassword $SYS_PASSWORD 
-recompile_invalid_objects true 
-upgradeTimezone 
-listeners LISTENER_12C 
-createGRP true 
-emConfiguration NONE 
-newRecoveryArea $NEW_FRA 
-newRecoveryAreaSize $NEW_FRA_SIZE 
-initParam $INIT_PARAMS >> ${outfile}
Second choice: Use expdp/impdp
Migrating to 12c: 300 DB in 300 days44 30/11/2016
Why?
Schema-consolidated databases
Migrating to 12c: 300 DB in 300 days45 30/11/2016
2015 – 2016: The migration phase
Many databases? Find a good project manager
Migrating to 12c: 300 DB in 300 days46 30/11/2016
The project manager:
Mediates with the application owner or final users
Solicits the developers/editors to validate the new version
Keeps track of the evolution
Fixes dates and agrees downtimes
Buys pizzas when the DBAs upgrade a database in the evening
October 2015
Migrating to 12c: 300 DB in 300 days47 30/11/2016
https://blogs.oracle.com/UPGRADE/entry/no_extra_fee_for_extended
Waived Extended Support impact
Migrating to 12c: 300 DB in 300 days48 30/11/2016
None, if you don’t tell it anyone ;-)
You can follow the upgrade roadmap with less stress
Migrating to 12c: 300 DB in 300 days49 30/11/2016
Performance?
Performance in 12c
Migrating to 12c: 300 DB in 300 days50 30/11/2016
Overall high performance improvement
But servers changed for this project
– not an apple to apple comparison
Guess what?
Migrating to 12c: 300 DB in 300 days51 30/11/2016
Guess what?
Migrating to 12c: 300 DB in 300 days52 30/11/2016
Guess what?
Migrating to 12c: 300 DB in 300 days53 30/11/2016
Guess what?
Migrating to 12c: 300 DB in 300 days54 30/11/2016
The big mess with SQL Plan Directives
Migrating to 12c: 300 DB in 300 days55 30/11/2016
SQL Plan Directives
Migrating to 12c: 300 DB in 300 days56 30/11/2016
It does not impact only one statement but ALL the statements that involve specific
tables/columns/joins
A few cardinality misestimates can lead to several side effects
– Adaptive Dynamic Sampling triggered "without reason"
– Extended Statistics created "without control"
Different symptoms. Among others:
– Library Cache contention
– Result Cache problems
– Bad Execution Plans
– High CPU usage
Solution to SQL Plan Directives?
Migrating to 12c: 300 DB in 300 days57 30/11/2016
Resolving the problem database-wide
Adaptive Features or: How I learned to Stop Worrying58 30/11/2016
optimizer_features_enabled = 11.2.0.4
optimizer_adaptive_features = false
_optimizer_enable_extended_stats = false
optimizer_adaptive_sampling = 0
_sql_plan_directive_mgmt_control = 0
_optimizer_dsdir_usage_control = 0
PARAMETER MY SCORE
Or even better…
Migrating to 12c: 300 DB in 300 days59 30/11/2016
Recommendations for Adaptive Features in Oracle Database 12.1
DOC Id: 2187449.1
https://blogs.oracle.com/UPGRADE/entry/enabling_adaptive_features_of_oracle
DBMS_FEATURE_AWR and SPDs
Migrating to 12c: 300 DB in 300 days60 30/11/2016
DBMS_FEATURE_AWR sistematically has misestimations
This leads to SPDs on
– WRH$_SYS_TIME_MODEL
– WRH$_STAT_NAME
– WRM$_SNAPSHOT
Check if it is the case and use this post to fix:
– http://www.ludovicocaldara.net/dba/cpu-usage-12c-dbms_feature_awr/
Other performance considerations (incomplete list)
Migrating to 12c: 300 DB in 300 days61 30/11/2016
Patches to Consider for 12.1.0.2 to Avoid Problems with SQL Plan Management
(SPM) (Doc ID 2035898.1)
Things to Consider to Avoid Poor Performance or Wrong Results on 12.1.0.2 (Doc ID
2034610.1)
Parameter Recommendations for Oracle Database 12c - Part I
– https://blogs.oracle.com/UPGRADE/entry/parameter_recommendations_for_oracle_database
Migrating to 12c: 300 DB in 300 days62 30/11/2016
Bugs?
August 2015
Migrating to 12c: 300 DB in 300 days63 30/11/2016
https://blogs.oracle.com/UPGRADE/entry/ouch_this_really_hurts_bug
“Bug 17325413 - Drop column with DEFAULT value and NOT NULL definition
ends up with dropped column data hitting disk leading to corruption”
Change of upgrade strategy because of bug 17325413
Migrating to 12c: 300 DB in 300 days64 30/11/2016
$ upgrade_db_to_11204.sh && sanitize.sh && upgrade_db_to_12102.sh
47
33
220
16 8
08.01.2015
10.2.0.4
11.2.0.2
11.2.0.3
11.2.0.4
12.1.0.2
bug 17325413: impact?
Migrating to 12c: 300 DB in 300 days65 30/11/2016
No problems or corruptions encountered so far
A strategy has been set to sanitize the data in case of future corruptions
Let 30 minutes of additional downtime for double-patching
November 2015
Migrating to 12c: 300 DB in 300 days66 30/11/2016
https://blogs.oracle.com/UPGRADE/entry/ouch_this_hurts_bug_21923026
Bug 21923026 Corruption during Recovery after
upgrading to 12c for Compressed Tables
bug 21923026: impact?
Migrating to 12c: 300 DB in 300 days67 30/11/2016
Luckily, my customer was not using OLTP compression
Now all migrations are done on a patched Oracle Home
Things to Consider to Avoid... Wrong Results on 12.1.0.2
Migrating to 12c: 300 DB in 300 days68 30/11/2016
Wrong results when _optimizer_aggr_groupby_elim=true (Doc ID 21826068.8)
Wrong Results on Query with Subquery Using OR EXISTS or Null Accepting
Semijoin (Doc ID 18650065.8)
Adaptive Plan and Left Join Give Wrong Result (Doc ID 18430870.8)
alter system set "_optimizer_aggr_groupby_elim"=false scope=both;
alter system set "_optimizer_reduce_groupby_key"=false scope=both;
MOS Doc ID 2034610.1
Wrong results bugs fixed in DBBP (Apr16 to Oct16)
Migrating to 12c: 300 DB in 300 days69 30/11/2016
Bug 18430870: Adaptive Plan and Left Join Give Wrong Result (Doc ID 18430870.8)
Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE)
Bug 19526873: Wrong result on temp table under UNION ALL when accessed by Concurrent Parallel
Bug 21079201: WRONG RESULTS WITH CONCURRENT PX ON GTT UNDER UNION ALL
Bug 22173980: WRONG RESULTS (NUMBER OF ROWS) WHEN "_ROWSETS_ENABLED" = TRUE
Bug 19894622: ORA-600 [kkqcsfixfro:1 -- frooutj] error occur in 12c
Bug 23480973: wrong results with chained rows and fix of bug 22503456 or 22576590
Bug 18819908: Wrong Results From Partition Pruning When Comparing CHAR Columns of Different Lengths
Bug 22465352: Wrong results using object types with UNPIVOT operator
Bug 22916353: Window sort function returns wrong results with ORDER BY clause
Bug 14372604: Select from view with outer join (+) to nested table returns wrong results
Bug 17414008: Wrong results/ORA-7445 for functions returning object types
Bug 18549238: Primary key allows NULLs after DBMS_REDEFINITION of table
Bug 21220620: Wrong result on 12c when querying partitioned table with DISTINCT clause
Bug 22338374: ORA-7445 [kkoiqb] or ORA-979 or Wrong Results when using scalar sub-queries
Fixed in DBBP 160419 Fixed in DBBP 160719 Fixed in DBBP 161018
Wrong results bugs fixed in DBBP (Apr16 to Oct16)
Migrating to 12c: 300 DB in 300 days70 30/11/2016
Bug 18430870: Adaptive Plan and Left Join Give Wrong Result (Doc ID 18430870.8)
Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE)
Bug 19526873: Wrong result on temp table under UNION ALL when accessed by Concurrent Parallel
Bug 21079201: WRONG RESULTS WITH CONCURRENT PX ON GTT UNDER UNION ALL
Bug 22173980: WRONG RESULTS (NUMBER OF ROWS) WHEN "_ROWSETS_ENABLED" = TRUE
Bug 19894622: ORA-600 [kkqcsfixfro:1 -- frooutj] error occur in 12c
Bug 23480973: wrong results with chained rows and fix of bug 22503456 or 22576590
Bug 18819908: Wrong Results From Partition Pruning When Comparing CHAR Columns of Different Lengths
Bug 22465352: Wrong results using object types with UNPIVOT operator
Bug 22916353: Window sort function returns wrong results with ORDER BY clause
Bug 14372604: Select from view with outer join (+) to nested table returns wrong results
Bug 17414008: Wrong results/ORA-7445 for functions returning object types
Bug 18549238: Primary key allows NULLs after DBMS_REDEFINITION of table
Bug 21220620: Wrong result on 12c when querying partitioned table with DISTINCT clause
Bug 22338374: ORA-7445 [kkoiqb] or ORA-979 or Wrong Results when using scalar sub-queries
Fixed in DBBP 160419 Fixed in DBBP 160719 Fixed in DBBP 161018
The fix is there, but the bug can still reproduce
Wrong results bugs that require attention
Migrating to 12c: 300 DB in 300 days71 30/11/2016
Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE)
– Setting "_px_groupby_pushdown"=off is the most effective workaround
Wrong results bugs that require attention
Migrating to 12c: 300 DB in 300 days72 30/11/2016
Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE)
– Setting "_px_groupby_pushdown"=off is the most effective workaround
Bug 20508819: WRONG RESULTS OR ORA-7445 WHEN _OPTIMIZER_AGGR_GROUPBY_ELIM=TRUE
– Apply interim patch or set "_optimizer_aggr_groupby_elim"=false
Bug 20634449: Wrong results from OUTER JOIN with a bind variable and a GROUP BY clause in 12.1.0.2
– Apply interim patch or set “_optimizer_reduce_groupby_key" = false
Bug 22913528: WRONG RESULTS WITH PARTITION PRUNING AND MIN/MAX SCANS
– Apply interim patch
Bug 18650065: WRONG RESULTS ON QUERY WITH SUBQUERY USING OR EXISTS
– Apply interim patch or set "_optimizer_null_accepting_semijoin"=false
Bug 21459392: QUERY WITH ANSI OUTER JOIN RETURNS WRONG RESULT IN 12C
– Apply interim patch or set "_optimizer_ansi_join_lateral_enhance" = FALSE
Bug 24499054: WRONG RESULTS WITH PARALLEL MERGE
– Setting "_fix_control" = '11843466:off‘ is the only workaround
Impact?
Migrating to 12c: 300 DB in 300 days73 30/11/2016
My customer did not encounter any bug related to wrong results
Other Trivadis customers had some impacts
Trivadis has now a «Recommended Approach»
– Contact me if you need a review of your situation: ludovico.caldara@trivadis.com
Migrating to 12c: 300 DB in 300 days74 30/11/2016
Other problems?
ORA-39346: data loss in character set conversion
Migrating to 12c: 300 DB in 300 days75 30/11/2016
Issue with impdp when using NCHAR/NVARCHAR2 columns with histograms
– Histogram Data is Corrupted After Importing Data Using Impdp or ORA-39346 is
Raised While Executing Impdp (Doc ID 2105130.1)
Solution: Ignore the error and re-compute the statistics
Error: prereq checks failed!
Migrating to 12c: 300 DB in 300 days76 30/11/2016
Issue when running datapatch on a freshly installed ORACLE_HOME
Only if the database already has patches installed
Solution 1: copy the rollback scripts from the old ORACLE_HOME
Solution 2: patch at the same level as the old ORACLE_HOME
Solution 3: use ORACLE_HOME cloning installations (Rapid Home Provisioning?)
Data Guard delayed switchover
Migrating to 12c: 300 DB in 300 days77 30/11/2016
When Data Guard is set with a specific delay
Switchover time = normal switchover time + delay
Solution: it's a feature, not a bug ;-)
Migrating to 12c: 300 DB in 300 days78 30/11/2016
Best of the best
(from operations PoV)
Online datafile move
Migrating to 12c: 300 DB in 300 days79 30/11/2016
SQL> select file#, name from v$datafile where file#=1;
FILE# NAME
---------- --------------------------------------------------------------------------
1 +DATA/CLASSIC/DATAFILE/system.267.814717093
SQL> alter database move datafile 1 to '/data/CLASSIC/system01.dbf';
Database altered.
SQL> select file#, name from v$datafile where file#=1;
FILE# NAME
---------- --------------------------------------------------------------------------
1/data/CLASSIC/system01.dbf
Data Guard Transport and Apply Lag Thresholds
Migrating to 12c: 300 DB in 300 days80 30/11/2016
DGMGRL> show database verbose 'STDBY';
Database - STDBY
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 1 second ago)
Average Apply Rate: 5.00 KByte/s
Active Apply Rate: 0 Byte/s
Maximum Apply Rate: 0 Byte/s
Real Time Query: OFF
Instance(s):
STDBY
DGMGRL> show configuration verbose;
Configuration Status:
SUCCESS
Datapatch & DBMS_QOPATCH
Migrating to 12c: 300 DB in 300 days81 30/11/2016
Datapatch rules! Patching a DB is really easy now
DBMS_QOPATCH allows querying the patches applied to the DB
– Great for taking the patch roadmap under control
Database Migration Assistant for Unicode (DMU)
Migrating to 12c: 300 DB in 300 days82 30/11/2016
DMU replaces csscan and csalter
If you still use a single-byte character set, DMU will be your friend
Migrating to 12c: 300 DB in 300 days83 30/11/2016
My conclusion
12c strengths and weaknesses
Migrating to 12c: 300 DB in 300 days84 30/11/2016
Very Stable! Never seen a crash or whatever
Easier to manage than ever before
Now really production ready (because most wrong results are fixed)
The SQL Plan Directives and Adaptive Dynamic Sampling require all your attention
Questions?
30/11/2016 Migrating to 12c: 300 DB in 300 days85
Ludovico Caldara
ACE Director, Senior Consultant
Tél. +41 79 909 72 75
ludovico.caldara@trivadis.com

More Related Content

What's hot

ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIESORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIESLudovico Caldara
 
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...Ludovico Caldara
 
Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?Ludovico Caldara
 
Galera Cluster: Synchronous Multi-Master Replication for MySQL HA
Galera Cluster: Synchronous Multi-Master Replication for MySQL HAGalera Cluster: Synchronous Multi-Master Replication for MySQL HA
Galera Cluster: Synchronous Multi-Master Replication for MySQL HALudovico Caldara
 
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databases
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databasesRACAttack 12c Advanced Lab: Server Pools and Policy-managed databases
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databasesLudovico Caldara
 
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Ludovico Caldara
 
Oracle RAC 12c and Policy-Managed Databases, a Technical Overview
Oracle RAC 12c and Policy-Managed Databases, a Technical OverviewOracle RAC 12c and Policy-Managed Databases, a Technical Overview
Oracle RAC 12c and Policy-Managed Databases, a Technical OverviewLudovico Caldara
 
Boost your Oracle RAC manageability with Policy-Managed Databases
Boost your Oracle RAC manageability with Policy-Managed DatabasesBoost your Oracle RAC manageability with Policy-Managed Databases
Boost your Oracle RAC manageability with Policy-Managed DatabasesLudovico Caldara
 
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.Ludovico Caldara
 
Oracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam BashaOracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam Bashapasalapudi123
 
Get the most out of Oracle Data Guard - POUG version
Get the most out of Oracle Data Guard - POUG versionGet the most out of Oracle Data Guard - POUG version
Get the most out of Oracle Data Guard - POUG versionLudovico Caldara
 
Oracle Drivers configuration for High Availability, is it a developer's job?
Oracle Drivers configuration for High Availability, is it a developer's job?Oracle Drivers configuration for High Availability, is it a developer's job?
Oracle Drivers configuration for High Availability, is it a developer's job?Ludovico Caldara
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newNassyam Basha
 
Oracle Database 12.1.0.2: New Features
Oracle Database 12.1.0.2: New FeaturesOracle Database 12.1.0.2: New Features
Oracle Database 12.1.0.2: New FeaturesDeiby Gómez
 
Crating a Robust Performance Strategy
Crating a Robust Performance StrategyCrating a Robust Performance Strategy
Crating a Robust Performance StrategyGuatemala User Group
 
Oracle database 12c new features
Oracle database 12c new featuresOracle database 12c new features
Oracle database 12c new featuresJakkrapat S.
 
Oracle Drivers configuration for High Availability
Oracle Drivers configuration for High AvailabilityOracle Drivers configuration for High Availability
Oracle Drivers configuration for High AvailabilityLudovico Caldara
 
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...Leighton Nelson
 
Oracle 12c and its pluggable databases
Oracle 12c and its pluggable databasesOracle 12c and its pluggable databases
Oracle 12c and its pluggable databasesGustavo Rene Antunez
 

What's hot (20)

ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIESORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIES
 
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...
 
Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?Oracle Active Data Guard 12cR2. Is it the best option?
Oracle Active Data Guard 12cR2. Is it the best option?
 
Galera Cluster: Synchronous Multi-Master Replication for MySQL HA
Galera Cluster: Synchronous Multi-Master Replication for MySQL HAGalera Cluster: Synchronous Multi-Master Replication for MySQL HA
Galera Cluster: Synchronous Multi-Master Replication for MySQL HA
 
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databases
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databasesRACAttack 12c Advanced Lab: Server Pools and Policy-managed databases
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databases
 
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...
 
Oracle RAC 12c and Policy-Managed Databases, a Technical Overview
Oracle RAC 12c and Policy-Managed Databases, a Technical OverviewOracle RAC 12c and Policy-Managed Databases, a Technical Overview
Oracle RAC 12c and Policy-Managed Databases, a Technical Overview
 
Boost your Oracle RAC manageability with Policy-Managed Databases
Boost your Oracle RAC manageability with Policy-Managed DatabasesBoost your Oracle RAC manageability with Policy-Managed Databases
Boost your Oracle RAC manageability with Policy-Managed Databases
 
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.
 
Oracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam BashaOracle12c data guard farsync and whats new - Nassyam Basha
Oracle12c data guard farsync and whats new - Nassyam Basha
 
Get the most out of Oracle Data Guard - POUG version
Get the most out of Oracle Data Guard - POUG versionGet the most out of Oracle Data Guard - POUG version
Get the most out of Oracle Data Guard - POUG version
 
Oracle Drivers configuration for High Availability, is it a developer's job?
Oracle Drivers configuration for High Availability, is it a developer's job?Oracle Drivers configuration for High Availability, is it a developer's job?
Oracle Drivers configuration for High Availability, is it a developer's job?
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats new
 
Oracle Database 12.1.0.2: New Features
Oracle Database 12.1.0.2: New FeaturesOracle Database 12.1.0.2: New Features
Oracle Database 12.1.0.2: New Features
 
Oracle acfs in oracle 11
Oracle acfs in oracle 11Oracle acfs in oracle 11
Oracle acfs in oracle 11
 
Crating a Robust Performance Strategy
Crating a Robust Performance StrategyCrating a Robust Performance Strategy
Crating a Robust Performance Strategy
 
Oracle database 12c new features
Oracle database 12c new featuresOracle database 12c new features
Oracle database 12c new features
 
Oracle Drivers configuration for High Availability
Oracle Drivers configuration for High AvailabilityOracle Drivers configuration for High Availability
Oracle Drivers configuration for High Availability
 
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
 
Oracle 12c and its pluggable databases
Oracle 12c and its pluggable databasesOracle 12c and its pluggable databases
Oracle 12c and its pluggable databases
 

Viewers also liked

Sirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, Sirris
Sirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, SirrisSirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, Sirris
Sirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, SirrisSirris
 
APEX für den Oracle DBA
APEX für den Oracle DBAAPEX für den Oracle DBA
APEX für den Oracle DBANiels de Bruijn
 
MT AG: Sesam oeffne Dich
MT AG: Sesam oeffne DichMT AG: Sesam oeffne Dich
MT AG: Sesam oeffne DichMT AG
 
Creating Velocity in Data Centre Migrations to AWS
Creating Velocity in Data Centre Migrations to AWSCreating Velocity in Data Centre Migrations to AWS
Creating Velocity in Data Centre Migrations to AWSAmazon Web Services
 
Boost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerBoost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerSteven Grzbielok
 
MT AG: 7 gute Gründe warum Apex
MT AG: 7 gute Gründe warum ApexMT AG: 7 gute Gründe warum Apex
MT AG: 7 gute Gründe warum ApexMT AG
 
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG
 
Establishing a service factory
Establishing a service factoryEstablishing a service factory
Establishing a service factorydavemayo
 
DSRC : The future of safer driving
DSRC : The future of safer drivingDSRC : The future of safer driving
DSRC : The future of safer drivingLavakush Verma
 
Oracle smart flash cache
Oracle smart flash cacheOracle smart flash cache
Oracle smart flash cachexiangrong
 
Exadata Smart Scan - What is so smart about it?
Exadata Smart Scan  - What is so smart about it?Exadata Smart Scan  - What is so smart about it?
Exadata Smart Scan - What is so smart about it?Uwe Hesse
 
Maximizing service profitability at optimized cost to serve: Next generation ...
Maximizing service profitability at optimized cost to serve: Next generation ...Maximizing service profitability at optimized cost to serve: Next generation ...
Maximizing service profitability at optimized cost to serve: Next generation ...Genpact Ltd
 
DSRC Corporate Capabilities Presentation
DSRC Corporate Capabilities PresentationDSRC Corporate Capabilities Presentation
DSRC Corporate Capabilities PresentationDSRC
 
Achieving “services” business process excellence: Metrics-driven best practic...
Achieving “services” business process excellence: Metrics-driven best practic...Achieving “services” business process excellence: Metrics-driven best practic...
Achieving “services” business process excellence: Metrics-driven best practic...Genpact Ltd
 
Pluggable database tutorial 2
Pluggable database tutorial 2Pluggable database tutorial 2
Pluggable database tutorial 2Osama Mustafa
 
Pluggable database tutorial
Pluggable database tutorialPluggable database tutorial
Pluggable database tutorialOsama Mustafa
 
Migrating from Oracle Enterprise Manager 10g to 12c Cloud Control
Migrating from Oracle Enterprise Manager 10g to 12c Cloud ControlMigrating from Oracle Enterprise Manager 10g to 12c Cloud Control
Migrating from Oracle Enterprise Manager 10g to 12c Cloud ControlLeighton Nelson
 

Viewers also liked (20)

Sirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, Sirris
Sirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, SirrisSirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, Sirris
Sirris Digitale Fabriek IV - Introductie - Ludwig Prinsen, Sirris
 
Oracle RDBMS Workshop (Part1)
Oracle RDBMS Workshop (Part1)Oracle RDBMS Workshop (Part1)
Oracle RDBMS Workshop (Part1)
 
APEX für den Oracle DBA
APEX für den Oracle DBAAPEX für den Oracle DBA
APEX für den Oracle DBA
 
MT AG: Sesam oeffne Dich
MT AG: Sesam oeffne DichMT AG: Sesam oeffne Dich
MT AG: Sesam oeffne Dich
 
Creating Velocity in Data Centre Migrations to AWS
Creating Velocity in Data Centre Migrations to AWSCreating Velocity in Data Centre Migrations to AWS
Creating Velocity in Data Centre Migrations to AWS
 
Boost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with DockerBoost your APEX Deployment and Provisioning with Docker
Boost your APEX Deployment and Provisioning with Docker
 
MT AG: 7 gute Gründe warum Apex
MT AG: 7 gute Gründe warum ApexMT AG: 7 gute Gründe warum Apex
MT AG: 7 gute Gründe warum Apex
 
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5
 
Establishing a service factory
Establishing a service factoryEstablishing a service factory
Establishing a service factory
 
DSRC : The future of safer driving
DSRC : The future of safer drivingDSRC : The future of safer driving
DSRC : The future of safer driving
 
Oracle smart flash cache
Oracle smart flash cacheOracle smart flash cache
Oracle smart flash cache
 
Exadata Smart Scan - What is so smart about it?
Exadata Smart Scan  - What is so smart about it?Exadata Smart Scan  - What is so smart about it?
Exadata Smart Scan - What is so smart about it?
 
Maximizing service profitability at optimized cost to serve: Next generation ...
Maximizing service profitability at optimized cost to serve: Next generation ...Maximizing service profitability at optimized cost to serve: Next generation ...
Maximizing service profitability at optimized cost to serve: Next generation ...
 
AWR & ASH Analysis
AWR & ASH AnalysisAWR & ASH Analysis
AWR & ASH Analysis
 
DSRC Corporate Capabilities Presentation
DSRC Corporate Capabilities PresentationDSRC Corporate Capabilities Presentation
DSRC Corporate Capabilities Presentation
 
Achieving “services” business process excellence: Metrics-driven best practic...
Achieving “services” business process excellence: Metrics-driven best practic...Achieving “services” business process excellence: Metrics-driven best practic...
Achieving “services” business process excellence: Metrics-driven best practic...
 
Pluggable database tutorial 2
Pluggable database tutorial 2Pluggable database tutorial 2
Pluggable database tutorial 2
 
Pluggable database tutorial
Pluggable database tutorialPluggable database tutorial
Pluggable database tutorial
 
Migrating from Oracle Enterprise Manager 10g to 12c Cloud Control
Migrating from Oracle Enterprise Manager 10g to 12c Cloud ControlMigrating from Oracle Enterprise Manager 10g to 12c Cloud Control
Migrating from Oracle Enterprise Manager 10g to 12c Cloud Control
 
Rac&asm
Rac&asmRac&asm
Rac&asm
 

Similar to Migrating to Oracle Database 12c: 300 DBs in 300 days.

Montée en version de 300 bases de données vers Oracle 12c en 300 jours. Quel...
Montée en version de 300 bases de données vers Oracle 12c en 300 jours.  Quel...Montée en version de 300 bases de données vers Oracle 12c en 300 jours.  Quel...
Montée en version de 300 bases de données vers Oracle 12c en 300 jours. Quel...Swiss Data Forum Swiss Data Forum
 
Oracle Rapid Home Provisioning 12.2
Oracle Rapid Home Provisioning 12.2Oracle Rapid Home Provisioning 12.2
Oracle Rapid Home Provisioning 12.2Daniele Massimi
 
Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...
Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...
Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...Trivadis
 
MOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major AnnouncementsMOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major AnnouncementsMonica Li
 
Tungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL DataTungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL DataContinuent
 
Modernizing sql server the right way
Modernizing sql server the right wayModernizing sql server the right way
Modernizing sql server the right wayMariano Kovo
 
Reference for data migration pls choose and
Reference for data migration pls choose andReference for data migration pls choose and
Reference for data migration pls choose andiswarianagarajan
 
SQL to Azure Migrations
SQL to Azure MigrationsSQL to Azure Migrations
SQL to Azure MigrationsDatavail
 
DATABASE AUTOMATION with Thousands of database, monitoring and backup
DATABASE AUTOMATION with Thousands of database, monitoring and backupDATABASE AUTOMATION with Thousands of database, monitoring and backup
DATABASE AUTOMATION with Thousands of database, monitoring and backupSaewoong Lee
 
Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Olivier DASINI
 
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca SartoriCCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartoriwalk2talk srl
 
Checklist for Upgrades and Migrations
Checklist for Upgrades and MigrationsChecklist for Upgrades and Migrations
Checklist for Upgrades and MigrationsMarkus Flechtner
 
YOUR machine and MY database - a performing relationship!?
YOUR machine and MY database - a performing relationship!?YOUR machine and MY database - a performing relationship!?
YOUR machine and MY database - a performing relationship!?Martin Klier
 
Apache sqoop with an use case
Apache sqoop with an use caseApache sqoop with an use case
Apache sqoop with an use caseDavin Abraham
 
Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...
Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...
Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...Alex Zaballa
 
A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...Hari Srinivasan
 
EXACC Presentat CHEUG 2019 (9).pptx
EXACC Presentat CHEUG 2019 (9).pptxEXACC Presentat CHEUG 2019 (9).pptx
EXACC Presentat CHEUG 2019 (9).pptxabdulhafeezkalsekar1
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 

Similar to Migrating to Oracle Database 12c: 300 DBs in 300 days. (20)

Montée en version de 300 bases de données vers Oracle 12c en 300 jours. Quel...
Montée en version de 300 bases de données vers Oracle 12c en 300 jours.  Quel...Montée en version de 300 bases de données vers Oracle 12c en 300 jours.  Quel...
Montée en version de 300 bases de données vers Oracle 12c en 300 jours. Quel...
 
Oracle Rapid Home Provisioning 12.2
Oracle Rapid Home Provisioning 12.2Oracle Rapid Home Provisioning 12.2
Oracle Rapid Home Provisioning 12.2
 
Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...
Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...
Trivadis TechEvent 2017 Oracle to My SQL Migration - Challenges by Robert Bia...
 
MOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major AnnouncementsMOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major Announcements
 
Tungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL DataTungsten University: Load A Vertica Data Warehouse With MySQL Data
Tungsten University: Load A Vertica Data Warehouse With MySQL Data
 
ZDLRA in Action
ZDLRA in ActionZDLRA in Action
ZDLRA in Action
 
Modernizing sql server the right way
Modernizing sql server the right wayModernizing sql server the right way
Modernizing sql server the right way
 
Reference for data migration pls choose and
Reference for data migration pls choose andReference for data migration pls choose and
Reference for data migration pls choose and
 
SQL to Azure Migrations
SQL to Azure MigrationsSQL to Azure Migrations
SQL to Azure Migrations
 
DATABASE AUTOMATION with Thousands of database, monitoring and backup
DATABASE AUTOMATION with Thousands of database, monitoring and backupDATABASE AUTOMATION with Thousands of database, monitoring and backup
DATABASE AUTOMATION with Thousands of database, monitoring and backup
 
Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0Upgrade from MySQL 5.7 to MySQL 8.0
Upgrade from MySQL 5.7 to MySQL 8.0
 
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca SartoriCCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
CCI2017 - Considerations for Migrating Databases to Azure - Gianluca Sartori
 
Azure SQL Data Warehouse
Azure SQL Data Warehouse Azure SQL Data Warehouse
Azure SQL Data Warehouse
 
Checklist for Upgrades and Migrations
Checklist for Upgrades and MigrationsChecklist for Upgrades and Migrations
Checklist for Upgrades and Migrations
 
YOUR machine and MY database - a performing relationship!?
YOUR machine and MY database - a performing relationship!?YOUR machine and MY database - a performing relationship!?
YOUR machine and MY database - a performing relationship!?
 
Apache sqoop with an use case
Apache sqoop with an use caseApache sqoop with an use case
Apache sqoop with an use case
 
Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...
Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...
Oracle Database 12c Release 2 - New Features On Oracle Database Exadata Expre...
 
A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...
 
EXACC Presentat CHEUG 2019 (9).pptx
EXACC Presentat CHEUG 2019 (9).pptxEXACC Presentat CHEUG 2019 (9).pptx
EXACC Presentat CHEUG 2019 (9).pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

More from Ludovico Caldara

Oracle Fleet Patching and Provisioning Deep Dive Webcast Slides
Oracle Fleet Patching and Provisioning Deep Dive Webcast SlidesOracle Fleet Patching and Provisioning Deep Dive Webcast Slides
Oracle Fleet Patching and Provisioning Deep Dive Webcast SlidesLudovico Caldara
 
Let your DBAs get some REST(api)
Let your DBAs get some REST(api)Let your DBAs get some REST(api)
Let your DBAs get some REST(api)Ludovico Caldara
 
Effective Oracle Home Management - UKOUG_Tech18
Effective Oracle Home Management  - UKOUG_Tech18Effective Oracle Home Management  - UKOUG_Tech18
Effective Oracle Home Management - UKOUG_Tech18Ludovico Caldara
 
Effective Oracle Home Management in the new Release Model era
Effective Oracle Home Management in the new Release Model eraEffective Oracle Home Management in the new Release Model era
Effective Oracle Home Management in the new Release Model eraLudovico Caldara
 
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMB
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMBADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMB
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMBLudovico Caldara
 

More from Ludovico Caldara (6)

Oracle Fleet Patching and Provisioning Deep Dive Webcast Slides
Oracle Fleet Patching and Provisioning Deep Dive Webcast SlidesOracle Fleet Patching and Provisioning Deep Dive Webcast Slides
Oracle Fleet Patching and Provisioning Deep Dive Webcast Slides
 
Long live to CMAN!
Long live to CMAN!Long live to CMAN!
Long live to CMAN!
 
Let your DBAs get some REST(api)
Let your DBAs get some REST(api)Let your DBAs get some REST(api)
Let your DBAs get some REST(api)
 
Effective Oracle Home Management - UKOUG_Tech18
Effective Oracle Home Management  - UKOUG_Tech18Effective Oracle Home Management  - UKOUG_Tech18
Effective Oracle Home Management - UKOUG_Tech18
 
Effective Oracle Home Management in the new Release Model era
Effective Oracle Home Management in the new Release Model eraEffective Oracle Home Management in the new Release Model era
Effective Oracle Home Management in the new Release Model era
 
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMB
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMBADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMB
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMB
 

Recently uploaded

Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...caitlingebhard1
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringWSO2
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingWSO2
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseWSO2
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Migrating to Oracle Database 12c: 300 DBs in 300 days.

  • 1. BÂLE BERNE BRUGG DUSSELDORF FRANCFORT S.M. FRIBOURG E.BR. GENÈVE HAMBOURG COPENHAGUE LAUSANNE MUNICH STUTTGART VIENNE ZURICH Upgrading 300 DBs to 12c in 300 days. What can go wrong? Ludovico Caldara Oracle ACE Director Trivadis AG
  • 2. About Ludovico Caldara Migrating to 12c: 300 DB in 300 days2 30/11/2016 ■ 17 Years DBA (Not Only Oracle) ▪ I do it everywhere (even Windows) ■ RAC ATTACK Ninja & co-writer ■ President, SOUG & ITOUG Board ■ OCP (11g, 12c, MySQL) & OCE ■ Italian living in Switzerland ■ http://www.ludovicocaldara.net ■ @ludodba ludodba ■ ludovicocaldara
  • 3. Our company. Migrating to 12c: 300 DB in 300 days3 30/11/2016 Trivadis is a market leader in IT consulting, system integration, solution engineering and the provision of IT services focusing on and technologies in Switzerland, Germany, Austria and Denmark. We offer our services in the following strategic business fields: Trivadis Services takes over the interactive operation of your IT systems. O P E R A T I O N
  • 4. COPENHAGEN MUNICH LAUSANNE BERN ZURICH BRUGG GENEVA HAMBURG DÜSSELDORF FRANKFURT STUTTGART FREIBURG BASEL VIENNA With over 600 specialists and IT experts in your region. Migrating to 12c: 300 DB in 300 days4 30/11/2016 14 Trivadis branches and more than 600 employees 200 Service Level Agreements Over 4,000 training participants Research and development budget: CHF 5.0 / EUR 4 million Financially self-supporting and sustainably profitable Experience from more than 1,900 projects per year at over 800 customers
  • 5. Migrating to 12c: 300 DB in 300 days5 30/11/2016 A small introduction
  • 6. The customer numbers - Instances Migrating to 12c: 300 DB in 300 days6 30/11/2016 DISCLAIMER: not really 300 DB in 300 days, but you get the idea  47 33 220 16 8 28.01.2015 10.2.0.4 11.2.0.2 11.2.0.3 11.2.0.4 12.1.0.2 306 83 84301 30.11.2016 TOTAL: 324 TOTAL: 504
  • 7. The customer numbers - DBAs Migrating to 12c: 300 DB in 300 days7 30/11/2016 4 Oracle DBAs (+1 ) 504 Oracle instances Ratio of 126 instances per DBA
  • 8. 111 Instances per DBA Migrating to 12c: 300 DB in 300 days8 30/11/2016 No Additional DBAs for the migration project. How is it possible?
  • 9. Avoid Zoos Migrating to 12c: 300 DB in 300 days9 30/11/2016
  • 10. Avoid Zoos Migrating to 12c: 300 DB in 300 days10 30/11/2016 #MakeStandardsGreatAgain Have a single platform for all the Oracle Databases (Linux being the most obvious) * Reduce the number of versions and patches * All databases are equal in front of the DBA * Rock-solid naming conventions * whenever possible Follow @trumpDBA
  • 11. Avoid Frankensteins Migrating to 12c: 300 DB in 300 days11 30/11/2016
  • 12. Avoid Frankensteins Migrating to 12c: 300 DB in 300 days12 30/11/2016 …even if they look innocuous! https://www.flickr.com/photos/rahego/
  • 13. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days13 30/11/2016 Granting DBA to technical accounts
  • 14. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days14 30/11/2016 Using Public Synonyms
  • 15. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days15 30/11/2016 Using DB Links
  • 16. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days16 30/11/2016 Using Java Stored procedures
  • 17. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days17 30/11/2016 Using External Tables
  • 18. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days18 30/11/2016 Setting hidden («underscore») parameters
  • 19. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days19 30/11/2016 Using /*+ hints */
  • 20. Trivia quiz: Does it create a Frankenstein? Migrating to 12c: 300 DB in 300 days20 30/11/2016 Using SQL Plan Management
  • 21. Automate all the things! Migrating to 12c: 300 DB in 300 days21 30/11/2016
  • 22. Automate all the things! Migrating to 12c: 300 DB in 300 days22 30/11/2016 Database creation/deletion Database patching Duplicate, Database refresh Export/Import of schemas User management Tablespace creation/extension Database upgrades
  • 23. Migrating to 12c: 300 DB in 300 days23 30/11/2016 July 2013: So there is a new GA version?
  • 24. Phases of the migration project Migrating to 12c: 300 DB in 300 days24 30/11/2016 1. Evaluate 2. Homologate 3. Plan 4. Migrate 5. Maintain / Follow-up
  • 25. Evaluate (Jan 2014 – Aug 2014) Migrating to 12c: 300 DB in 300 days25 30/11/2016 What are the New Features? Does the licensing model change? Any concern regarding the roadmap? Any deprecated/desupported features?
  • 26. The new feature list is long and impressive Migrating to 12c: 300 DB in 300 days26 30/11/2016 Database New Features Guide http://docs.oracle.com/database/121/NEWFT/toc.htm New Features of Oracle Database 12c for DBAs http://www.trivadis.com/en/training/new-features-oracle-database-12c-dbas-o-nf12c- dba
  • 27. The new feature list is long and impressive Migrating to 12c: 300 DB in 300 days27 30/11/2016
  • 28. Evaluate (Jan 2014 – Aug 2014) Migrating to 12c: 300 DB in 300 days28 30/11/2016 Non-CDB, Singletenant, or Multitenant?
  • 29. Evaluate (Jan 2014 – Aug 2014) Migrating to 12c: 300 DB in 300 days29 30/11/2016 Non-CDB, Singletenant, or Multitenant? Not compatible with Multitenant in 12.1: ILM & Streams (among others)
  • 30. Homologate (Aug 2014 – Nov 2014) Migrating to 12c: 300 DB in 300 days30 30/11/2016 Do my scripts work without any change with the new release? – All automation scripts (create, duplicate, etc) – Performance related scripts (statistics gathering, etc.) – Backup and Recovery procedures – Monitoring with EM12c
  • 31. Plan (Nov 2014 – Dec 2014) Migrating to 12c: 300 DB in 300 days31 30/11/2016 113 110 95 132 QA Other Integration Production Critical Non-Critical Complex Easy
  • 32. Plan (Nov 2014 – Dec 2014) Migrating to 12c: 300 DB in 300 days32 30/11/2016 RMAN EM12c EASY NON- CRITICAL COMPLEX NON- CRITICAL EASY CRITICAL COMPLEX CRITICAL
  • 33. Plan (Nov 2014 – Dec 2014) Migrating to 12c: 300 DB in 300 days33 30/11/2016 INTEGRATION QA PRODUCTION
  • 34. Plan (Nov 2014 – Dec 2014) Migrating to 12c: 300 DB in 300 days34 30/11/2016 INTEGRATION QA PRODUCTION QA First! – Let the developers integrate changes with the current release – Allow refreshes from Production to Integration – If the deployement works in Integration and QA, it will work in Prod – Do performance/regression tests here!
  • 35. Plan (Nov 2014 – Dec 2014) Migrating to 12c: 300 DB in 300 days35 30/11/2016 INTEGRATION QA PRODUCTION When integration is upgraded – The developers cannot deploy in production – The production must be upgraded soon – Make sure you tested correctly in QA
  • 36. Plan (Nov 2014 – Dec 2014) Migrating to 12c: 300 DB in 300 days36 30/11/2016 INTEGRATION QA PRODUCTION When upgrading the production – Be ready to react ;-)
  • 37. Migrating to 12c: 300 DB in 300 days37 30/11/2016 Migrate. How?
  • 38. There is the guide, and there is the gold mine Migrating to 12c: 300 DB in 300 days38 30/11/2016 Database Upgrade Guide https://docs.oracle.com/database/121/UPGRD/toc.htm Upgrade your Database - NOW! https://blogs.oracle.com/UPGRADE/ It’s a mine: find the diamonds on your own!
  • 39. Upgrade path Migrating to 12c: 300 DB in 300 days39 30/11/2016 Database Upgrade Assistant? Manual Upgrade? Export/Import?
  • 40. First, obvious choice: Use DBUA Migrating to 12c: 300 DB in 300 days40 30/11/2016 Why? Partially automated Easy to script OK for dedicated databases and inter-related consolidated schemas
  • 41. First, obvious choice: Use DBUA Migrating to 12c: 300 DB in 300 days41 30/11/2016 Additional steps required. Our migration script actually: Increases the SGA +512Mb Executes some pre-upgrade steps Saves the object states Checks Data Guard synchronization Checks for Materialized View refreshs Does other sanity checks (pending distributed transactions, DF in backup mode, etc) Checks for the successful execution of the last archive backup Purges DBA_RECYCLEBIN … continue…
  • 42. First, obvious choice: Use DBUA Migrating to 12c: 300 DB in 300 days42 30/11/2016 Gathers dictionary stats Saves the oratab Blackouts the target in EM12c Launches the dbua (see next page) Checks the upgrade logs Runs datapatch -verbose Changes the LDAP entry if necessary Changes the ORACLE_HOME for the target in EM12c Checks and eventually registers the DB with the RMAN catalog Restores and modifies the oratab
  • 43. First, obvious choice: Use DBUA Migrating to 12c: 300 DB in 300 days43 30/11/2016 ${NEW_ORACLE_HOME}/bin/dbua -silent -sid $ORACLE_SID -oracleHome ${ORACLE_HOME} -sysDBAUserName sys -sysDBAPassword $SYS_PASSWORD -recompile_invalid_objects true -upgradeTimezone -listeners LISTENER_12C -createGRP true -emConfiguration NONE -newRecoveryArea $NEW_FRA -newRecoveryAreaSize $NEW_FRA_SIZE -initParam $INIT_PARAMS >> ${outfile}
  • 44. Second choice: Use expdp/impdp Migrating to 12c: 300 DB in 300 days44 30/11/2016 Why? Schema-consolidated databases
  • 45. Migrating to 12c: 300 DB in 300 days45 30/11/2016 2015 – 2016: The migration phase
  • 46. Many databases? Find a good project manager Migrating to 12c: 300 DB in 300 days46 30/11/2016 The project manager: Mediates with the application owner or final users Solicits the developers/editors to validate the new version Keeps track of the evolution Fixes dates and agrees downtimes Buys pizzas when the DBAs upgrade a database in the evening
  • 47. October 2015 Migrating to 12c: 300 DB in 300 days47 30/11/2016 https://blogs.oracle.com/UPGRADE/entry/no_extra_fee_for_extended
  • 48. Waived Extended Support impact Migrating to 12c: 300 DB in 300 days48 30/11/2016 None, if you don’t tell it anyone ;-) You can follow the upgrade roadmap with less stress
  • 49. Migrating to 12c: 300 DB in 300 days49 30/11/2016 Performance?
  • 50. Performance in 12c Migrating to 12c: 300 DB in 300 days50 30/11/2016 Overall high performance improvement But servers changed for this project – not an apple to apple comparison
  • 51. Guess what? Migrating to 12c: 300 DB in 300 days51 30/11/2016
  • 52. Guess what? Migrating to 12c: 300 DB in 300 days52 30/11/2016
  • 53. Guess what? Migrating to 12c: 300 DB in 300 days53 30/11/2016
  • 54. Guess what? Migrating to 12c: 300 DB in 300 days54 30/11/2016
  • 55. The big mess with SQL Plan Directives Migrating to 12c: 300 DB in 300 days55 30/11/2016
  • 56. SQL Plan Directives Migrating to 12c: 300 DB in 300 days56 30/11/2016 It does not impact only one statement but ALL the statements that involve specific tables/columns/joins A few cardinality misestimates can lead to several side effects – Adaptive Dynamic Sampling triggered "without reason" – Extended Statistics created "without control" Different symptoms. Among others: – Library Cache contention – Result Cache problems – Bad Execution Plans – High CPU usage
  • 57. Solution to SQL Plan Directives? Migrating to 12c: 300 DB in 300 days57 30/11/2016
  • 58. Resolving the problem database-wide Adaptive Features or: How I learned to Stop Worrying58 30/11/2016 optimizer_features_enabled = 11.2.0.4 optimizer_adaptive_features = false _optimizer_enable_extended_stats = false optimizer_adaptive_sampling = 0 _sql_plan_directive_mgmt_control = 0 _optimizer_dsdir_usage_control = 0 PARAMETER MY SCORE
  • 59. Or even better… Migrating to 12c: 300 DB in 300 days59 30/11/2016 Recommendations for Adaptive Features in Oracle Database 12.1 DOC Id: 2187449.1 https://blogs.oracle.com/UPGRADE/entry/enabling_adaptive_features_of_oracle
  • 60. DBMS_FEATURE_AWR and SPDs Migrating to 12c: 300 DB in 300 days60 30/11/2016 DBMS_FEATURE_AWR sistematically has misestimations This leads to SPDs on – WRH$_SYS_TIME_MODEL – WRH$_STAT_NAME – WRM$_SNAPSHOT Check if it is the case and use this post to fix: – http://www.ludovicocaldara.net/dba/cpu-usage-12c-dbms_feature_awr/
  • 61. Other performance considerations (incomplete list) Migrating to 12c: 300 DB in 300 days61 30/11/2016 Patches to Consider for 12.1.0.2 to Avoid Problems with SQL Plan Management (SPM) (Doc ID 2035898.1) Things to Consider to Avoid Poor Performance or Wrong Results on 12.1.0.2 (Doc ID 2034610.1) Parameter Recommendations for Oracle Database 12c - Part I – https://blogs.oracle.com/UPGRADE/entry/parameter_recommendations_for_oracle_database
  • 62. Migrating to 12c: 300 DB in 300 days62 30/11/2016 Bugs?
  • 63. August 2015 Migrating to 12c: 300 DB in 300 days63 30/11/2016 https://blogs.oracle.com/UPGRADE/entry/ouch_this_really_hurts_bug “Bug 17325413 - Drop column with DEFAULT value and NOT NULL definition ends up with dropped column data hitting disk leading to corruption”
  • 64. Change of upgrade strategy because of bug 17325413 Migrating to 12c: 300 DB in 300 days64 30/11/2016 $ upgrade_db_to_11204.sh && sanitize.sh && upgrade_db_to_12102.sh 47 33 220 16 8 08.01.2015 10.2.0.4 11.2.0.2 11.2.0.3 11.2.0.4 12.1.0.2
  • 65. bug 17325413: impact? Migrating to 12c: 300 DB in 300 days65 30/11/2016 No problems or corruptions encountered so far A strategy has been set to sanitize the data in case of future corruptions Let 30 minutes of additional downtime for double-patching
  • 66. November 2015 Migrating to 12c: 300 DB in 300 days66 30/11/2016 https://blogs.oracle.com/UPGRADE/entry/ouch_this_hurts_bug_21923026 Bug 21923026 Corruption during Recovery after upgrading to 12c for Compressed Tables
  • 67. bug 21923026: impact? Migrating to 12c: 300 DB in 300 days67 30/11/2016 Luckily, my customer was not using OLTP compression Now all migrations are done on a patched Oracle Home
  • 68. Things to Consider to Avoid... Wrong Results on 12.1.0.2 Migrating to 12c: 300 DB in 300 days68 30/11/2016 Wrong results when _optimizer_aggr_groupby_elim=true (Doc ID 21826068.8) Wrong Results on Query with Subquery Using OR EXISTS or Null Accepting Semijoin (Doc ID 18650065.8) Adaptive Plan and Left Join Give Wrong Result (Doc ID 18430870.8) alter system set "_optimizer_aggr_groupby_elim"=false scope=both; alter system set "_optimizer_reduce_groupby_key"=false scope=both; MOS Doc ID 2034610.1
  • 69. Wrong results bugs fixed in DBBP (Apr16 to Oct16) Migrating to 12c: 300 DB in 300 days69 30/11/2016 Bug 18430870: Adaptive Plan and Left Join Give Wrong Result (Doc ID 18430870.8) Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE) Bug 19526873: Wrong result on temp table under UNION ALL when accessed by Concurrent Parallel Bug 21079201: WRONG RESULTS WITH CONCURRENT PX ON GTT UNDER UNION ALL Bug 22173980: WRONG RESULTS (NUMBER OF ROWS) WHEN "_ROWSETS_ENABLED" = TRUE Bug 19894622: ORA-600 [kkqcsfixfro:1 -- frooutj] error occur in 12c Bug 23480973: wrong results with chained rows and fix of bug 22503456 or 22576590 Bug 18819908: Wrong Results From Partition Pruning When Comparing CHAR Columns of Different Lengths Bug 22465352: Wrong results using object types with UNPIVOT operator Bug 22916353: Window sort function returns wrong results with ORDER BY clause Bug 14372604: Select from view with outer join (+) to nested table returns wrong results Bug 17414008: Wrong results/ORA-7445 for functions returning object types Bug 18549238: Primary key allows NULLs after DBMS_REDEFINITION of table Bug 21220620: Wrong result on 12c when querying partitioned table with DISTINCT clause Bug 22338374: ORA-7445 [kkoiqb] or ORA-979 or Wrong Results when using scalar sub-queries Fixed in DBBP 160419 Fixed in DBBP 160719 Fixed in DBBP 161018
  • 70. Wrong results bugs fixed in DBBP (Apr16 to Oct16) Migrating to 12c: 300 DB in 300 days70 30/11/2016 Bug 18430870: Adaptive Plan and Left Join Give Wrong Result (Doc ID 18430870.8) Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE) Bug 19526873: Wrong result on temp table under UNION ALL when accessed by Concurrent Parallel Bug 21079201: WRONG RESULTS WITH CONCURRENT PX ON GTT UNDER UNION ALL Bug 22173980: WRONG RESULTS (NUMBER OF ROWS) WHEN "_ROWSETS_ENABLED" = TRUE Bug 19894622: ORA-600 [kkqcsfixfro:1 -- frooutj] error occur in 12c Bug 23480973: wrong results with chained rows and fix of bug 22503456 or 22576590 Bug 18819908: Wrong Results From Partition Pruning When Comparing CHAR Columns of Different Lengths Bug 22465352: Wrong results using object types with UNPIVOT operator Bug 22916353: Window sort function returns wrong results with ORDER BY clause Bug 14372604: Select from view with outer join (+) to nested table returns wrong results Bug 17414008: Wrong results/ORA-7445 for functions returning object types Bug 18549238: Primary key allows NULLs after DBMS_REDEFINITION of table Bug 21220620: Wrong result on 12c when querying partitioned table with DISTINCT clause Bug 22338374: ORA-7445 [kkoiqb] or ORA-979 or Wrong Results when using scalar sub-queries Fixed in DBBP 160419 Fixed in DBBP 160719 Fixed in DBBP 161018 The fix is there, but the bug can still reproduce
  • 71. Wrong results bugs that require attention Migrating to 12c: 300 DB in 300 days71 30/11/2016 Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE) – Setting "_px_groupby_pushdown"=off is the most effective workaround
  • 72. Wrong results bugs that require attention Migrating to 12c: 300 DB in 300 days72 30/11/2016 Bug 18499088: PARALLEL QUERY RUNS WITH WRONG RESULT WITH PUSHDOWN DISTINCT (UNIQUE) – Setting "_px_groupby_pushdown"=off is the most effective workaround Bug 20508819: WRONG RESULTS OR ORA-7445 WHEN _OPTIMIZER_AGGR_GROUPBY_ELIM=TRUE – Apply interim patch or set "_optimizer_aggr_groupby_elim"=false Bug 20634449: Wrong results from OUTER JOIN with a bind variable and a GROUP BY clause in 12.1.0.2 – Apply interim patch or set “_optimizer_reduce_groupby_key" = false Bug 22913528: WRONG RESULTS WITH PARTITION PRUNING AND MIN/MAX SCANS – Apply interim patch Bug 18650065: WRONG RESULTS ON QUERY WITH SUBQUERY USING OR EXISTS – Apply interim patch or set "_optimizer_null_accepting_semijoin"=false Bug 21459392: QUERY WITH ANSI OUTER JOIN RETURNS WRONG RESULT IN 12C – Apply interim patch or set "_optimizer_ansi_join_lateral_enhance" = FALSE Bug 24499054: WRONG RESULTS WITH PARALLEL MERGE – Setting "_fix_control" = '11843466:off‘ is the only workaround
  • 73. Impact? Migrating to 12c: 300 DB in 300 days73 30/11/2016 My customer did not encounter any bug related to wrong results Other Trivadis customers had some impacts Trivadis has now a «Recommended Approach» – Contact me if you need a review of your situation: ludovico.caldara@trivadis.com
  • 74. Migrating to 12c: 300 DB in 300 days74 30/11/2016 Other problems?
  • 75. ORA-39346: data loss in character set conversion Migrating to 12c: 300 DB in 300 days75 30/11/2016 Issue with impdp when using NCHAR/NVARCHAR2 columns with histograms – Histogram Data is Corrupted After Importing Data Using Impdp or ORA-39346 is Raised While Executing Impdp (Doc ID 2105130.1) Solution: Ignore the error and re-compute the statistics
  • 76. Error: prereq checks failed! Migrating to 12c: 300 DB in 300 days76 30/11/2016 Issue when running datapatch on a freshly installed ORACLE_HOME Only if the database already has patches installed Solution 1: copy the rollback scripts from the old ORACLE_HOME Solution 2: patch at the same level as the old ORACLE_HOME Solution 3: use ORACLE_HOME cloning installations (Rapid Home Provisioning?)
  • 77. Data Guard delayed switchover Migrating to 12c: 300 DB in 300 days77 30/11/2016 When Data Guard is set with a specific delay Switchover time = normal switchover time + delay Solution: it's a feature, not a bug ;-)
  • 78. Migrating to 12c: 300 DB in 300 days78 30/11/2016 Best of the best (from operations PoV)
  • 79. Online datafile move Migrating to 12c: 300 DB in 300 days79 30/11/2016 SQL> select file#, name from v$datafile where file#=1; FILE# NAME ---------- -------------------------------------------------------------------------- 1 +DATA/CLASSIC/DATAFILE/system.267.814717093 SQL> alter database move datafile 1 to '/data/CLASSIC/system01.dbf'; Database altered. SQL> select file#, name from v$datafile where file#=1; FILE# NAME ---------- -------------------------------------------------------------------------- 1/data/CLASSIC/system01.dbf
  • 80. Data Guard Transport and Apply Lag Thresholds Migrating to 12c: 300 DB in 300 days80 30/11/2016 DGMGRL> show database verbose 'STDBY'; Database - STDBY Role: PHYSICAL STANDBY Intended State: APPLY-ON Transport Lag: 0 seconds (computed 1 second ago) Apply Lag: 0 seconds (computed 1 second ago) Average Apply Rate: 5.00 KByte/s Active Apply Rate: 0 Byte/s Maximum Apply Rate: 0 Byte/s Real Time Query: OFF Instance(s): STDBY DGMGRL> show configuration verbose; Configuration Status: SUCCESS
  • 81. Datapatch & DBMS_QOPATCH Migrating to 12c: 300 DB in 300 days81 30/11/2016 Datapatch rules! Patching a DB is really easy now DBMS_QOPATCH allows querying the patches applied to the DB – Great for taking the patch roadmap under control
  • 82. Database Migration Assistant for Unicode (DMU) Migrating to 12c: 300 DB in 300 days82 30/11/2016 DMU replaces csscan and csalter If you still use a single-byte character set, DMU will be your friend
  • 83. Migrating to 12c: 300 DB in 300 days83 30/11/2016 My conclusion
  • 84. 12c strengths and weaknesses Migrating to 12c: 300 DB in 300 days84 30/11/2016 Very Stable! Never seen a crash or whatever Easier to manage than ever before Now really production ready (because most wrong results are fixed) The SQL Plan Directives and Adaptive Dynamic Sampling require all your attention
  • 85. Questions? 30/11/2016 Migrating to 12c: 300 DB in 300 days85 Ludovico Caldara ACE Director, Senior Consultant Tél. +41 79 909 72 75 ludovico.caldara@trivadis.com