Monday Jul 04, 2016

Full Transportable Export/Import - Things to Know

This blog post is an addition to:

Seth Miller commented the pitfall of having a serious issue during the Data Pump run, Data Pump exiting and not finishing, and you'll have to do the entire backup/restore/incremental-roll-foward thing again. Without any doubt, this is no fun at all. 

So let me point out a few things to take into consideration - and some of them are not obvious I guess.
.

Do you need to backup/restore/incremental-roll-forward again?

When you let do Data Pump all the manual tasks of Transportable Tablespaces (TTS) this is called Full Transportable Export/Import (FTEX as I abbreviate it). With regular TTS you will take your tablespaces read-write in your destination at the end of the entire process. So whenever something is going wrong during the meta data rebuild you won't have to restore all your tens of terabytes. 

With FTEX things are a bit different. Data Pump will take the tablespaces several times read-write during the impdp run. This has to happen. And the job is not restartable right now. This may change in a future release or patch set. We'll see.

What are your options now to prevent a full repeat of all your backup/restore/incremental-roll-forward activities?

FLASHBACK DATABASE unfortunately is not an option as you could set a Guaranteed Restore Point - but as soon as the data file headers got adjusted FLASHBACK won't be able to revert this. 

Setting the data files to read-only on the OS level is not an option either as you might force Data Pump to fail when it would like to write something into a tablespace and gets an OS return code for not being able to complete the write operation.

Therefore right now the only valid option I can think of is leveraging storage snapshot technologies in order to restore the files back into the status from "before Data Pump ran".

We are aware of this pitfall and we discuss alternatives internally for the future.
.

Character Sets and Time Zone?

Another topic to pay close attention is the database's character set and national character set. Please find all the guidelines about character sets and national character sets here: 

For time zone files please make sure you have the same time zone version in source and destination. As you can't downgrade your time zone file in the destination usually you'll have to apply the matching time zone patch in the source before initiating the transport. If you don't pay attention Data Pump will deny the meta import of the data in the tablespaces as otherwise you may end up with corrupted time zone data.

Please find the precise description in the Oracle 12c documentation: 


Tablespace Encryption

When your tablespaces are encrypted you'll have to be a bit more careful when using TTS or FTEX. Even though the FAQ on Oracle.com mentions that there are no issues still there are some limitations. The documentation is more precise: 

  • Limitations on Transportable Tablespace
    • Transportable tablespaces cannot transport encrypted tablespaces.
    • Transportable tablespaces cannot transport tablespaces containing tables with encrypted columns
  • Limitations on Full Transportable Export/Import
    • You cannot transport an encrypted tablespace to a platform with different endianness.
      To transport an encrypted tablespace to a platform with the same endianness, during export set the ENCRYPTION_PWD_PROMPT export utility parameter to YES, or use the ENCRYPTION_PASSWORD export utility parameter. During import, use the equivalent import utility parameter, and set the value to the same password that was used for the export.
      .
--Mike
.

Monday Jun 20, 2016

Minor Upgrade? Going from 11.2.0.1 to 11.2.0.4?

My Belgium friend Phillipe Fierens raised a great question on Twitter last week and dropped me an email again after having a discussion with his client:

For Phillipe and myself the answer is pretty clear and straight forward:

There is no minor upgrade anymore since every (patch set) release is a full release and since new parameters, parameter values, features and whatever appears even in patch sets. 

But the following discussion on Twitter with comments from all sides made me think about why people would honestly declare going for instance from 11.2.0.1 to 11.2.0.3 as a minor upgrade whereas going to 12.1.0.2 is seen as a major upgrade?

Let me summarize why I completely disagree - and actually Dom Giles nailed it:

  • Since Oracle Database 11.2.0.1 we deliver patch sets as a full release
  • A patch set can contain not only new parameters or parameter values but may occasionally also contain new features (typical examples in Oracle 11.2.0.4 are the new value for optimizer_dynamic_sampling=11 or the DBMS_REDACT package)
  • Therefore you will have to do exactly the same amount of testing, regardless of going to Oracle Database 11.2.0.4 vs Oracle Database 12.1.0.2 - it is ZERO difference in the tests, the time, the effort, the manpower ...
    .

You don't believe me? Then please check MOS Note:1962125.1 (Oracle Database - Overview of Database Patch Delivery Methods). Scroll down a bit to Testing Recommendations By Patch Type and see the rightmost column of this table headlined "Patch Set Release":

I hope this clarifies it all.

There is no "minor" patch set upgrade anymore. Even though I would love to tell you that going from 11.2.0.3 to 11.2.0.4 is just a minor hop it will require exactly the same testing and evaluation work then going to Oracle Database 12.1.0.2.

But going to Oracle Database 12.1.0.2 will mean that you are under Premier Support until end of June 2018 - whereas Free Extended Support for Oracle Database 11.2.0.4 will end in May 2017.

--Mike

.

Thursday Jun 16, 2016

EM 13c - How to Upgrade from EM Cloud Control 12c

I'm not a Cloud Control expert but I use the tool from time to time - and most of my customers are heavy users of it, especially in larger deployments.

If you use Oracle Enterprise Manager Cloud Control 12c (12.1.0.3, 12.1.0.4 or 12.1.0.5) and would like to evaluate your options to upgrade to Oracle Enterprise Manager Cloud Control 13c then please consult the following very useful documentation:

If you are searching for the software please find it here:

Just be aware:
As of July 15, 2016 I received several emails and comments by customers about issues with the migration to OEM 13c, e.g.:

So please check with Oracle Support first - and test the migration before doing it on a actual life system.
.

--Mike
.

Monday May 30, 2016

DMU - Tips and Tricks - Migration Assistant for Unicode

DMU OTN Logo

Please find previous posts about the Data Migration Assistant for Unicode (DMU) here:


Since Roy and I subscribed to the Hot Topics support email we'll find a very helpful note none of us was aware of almost every second day.

One of these recent finds is:

For those who have never heard of the DMU before you'll find a very brief overview about this tiny little - and very helpful - tool for database character set migrations not only to Unicode here: 

Why is this note so helpful?

Simply because it combines the most important topics about DMU in one note - from starting to issues. And this is really helpful when you plan to use the tool.

It is structured into:

  • A) Things to check before using the DMU
  • B) FAQ and common issues
  • C) Problems starting the DMU or during scan
  • D) Typical errors such as "invalid binary conversion" and others
  • E) Post conversion phase
  • F) Steps to do afterwards
  • plus some extras

.
--Mike

Thursday May 19, 2016

MOS Note:136697.1 - New HCHECK.SQL for Oracle Database 12c

A while back we added this slide to our big slide deck:

The story behind this slide

A large and important customer in the US tested a patch set upgrade - but when they approached the production upgrade from 11.2.0.2 to 11.2.0.3 on a large RAC cluster they've had to cancel the attempt and revert to the previous state.

Reason

They've hit a dictionary corruption somewhere silently sleeping in the database causing no trouble at all so far - until the upgrade touched the broken structures 

They've asked us:
"How could we ensure the database is really healthy and in good state?"

And unfortunately there's no 100% confirmation as there may be an unknown issue we are not aware of. But we can test two things:

  • Let RMAN verify the logical integrity of the Oracle blocks
  • Let the hcheck.sql script provided by Oracle Support check and test for known dictionary issues
It's actually a general recommendation we give to customers for a long time to check their really important and business critical databases from time to time during off-peak hours. 

Recently Oracle Support updated hcheck.sql to version 4 to include Oracle Database 12c checks as well.

Please find it here:

--Mike

Friday May 06, 2016

Upgrade NOW! - OTN Interview at Collaborate16

Thanks again to Laura for this interview at Collaborate 2016 :-)

Why you need to Upgrade to Oracle Database 12c - NOW!

--Mike

Friday Apr 22, 2016

New PREUPGRD.SQL is available - Upgrade 12c - Apr16

It's time for a new and improved version of our team's preupgrd.sql (comes with the preupgrade package utluppkg.sql). 

The April 2016 preupgrd.sql 

Please always download and use the most recent version from:

as this version is 3 years newer than the one you'll get with a fresh install of Oracle Database 12.1.0.2

preupgrd.sql - April 2016 - MOS Note:884522.1
.

Included in the April 2016 PSU and BP as well

Great news - and very important. Once you apply the most recent April 2016 PSU or BP (recommended - please see here: April 2016 PSU/BP are here!) then you'll get the most recent version of the preupgrd.sql with utluppkg.sql as well automatically.

No need to download it separately anymore once you are on this PSU or BP.
.

--Mike

Wednesday Apr 20, 2016

Data Pump - Exclude Stats differently for TTS and FTEX

Nice little best practice for statistics and Data Pump when doing either Transportable Tablespaces or Full Transportable Export-Import (credits to Roy and Dean Gagne).
.

Transport Statistics via a Staging Table

First of all we always recommend to exclude statistics when doing a Data Pump export as the import of such stats takes way longer than transporting them via a stats table. If you are unfamiliar with transporting stats between databases please see the Oracle Performance Tuning Guide with a nice tutorial

The basic steps to transport statistics from one database to another fast and efficient consist of: 

  1. Create a staging table in your source database with DBMS_STATS.CREATE_STAT_TABLE
  2. Export your local stats into this staging table by using DBMS_STATS.EXPORT_SCHEMA_STATS
  3. Export the staging table and import it into your destination database with Data Pump
  4. Import the statistics held in the staging table by using DBMS_STATS.IMPORT_SCHEMA_STATS

For the regular Data Pump exports we always recommend to set:

EXCLUDE=STATISTICS

to avoid performance penalties during impdp.

But this does not affect Transportable Tablespaces and Full Transportable Export/Import.
.

How to exclude Statistics for TTS and FTEX?

For reasons I don't know the metadata heterogeneous object for "transportable" is different than all of the others Therefore in order to exclude statistics for Transportable Tablespaces and Full Transportable Export/Import you must set:

EXCLUDE=TABLE_STATISTICS,INDEX_STATISTICS

Monday Feb 01, 2016

New PREUPGRD.SQL is available for Upgrades to 12c

üreupgrd.sql

As of today a new version of our upgrade tool preupgrd.sql (including the package utluppkg.sql) for upgrades to Oracle Database 12.1.0.2 is available as download from MOS:

Download it and exchange the existing preupgrd.sql and utluppkg.sql in your current Oracle 12.1.0.2 ?/rdbms/admin directory.

--Mike

Friday Dec 18, 2015

Tech Tip: Get updates about new/important MOS Notes

There's nothing more annoying than unwanted and useless email newsletters in your inbox.

No doubt.

But sometimes I wish to have an alert about important MOS Note changes, recent additions to my favorite notes, updates to the bugs I monitor etc. I would like to know about helpful new MOS articles - when they get published ;-)

And this is what you need to do (and I'll have to apologize for the small pictures but our fancy, modern blog design template does not allow to include larger pictures ...).
.

Log into MOS and change your SETTINGS

Once you've logged in you'll click on MORE and then navigate to SETTINGS.

Change SETTINGS in MOS
.

Choose HOT TOPICS EMAIL in the left navigation menu

HOT TOPICS EMAIL
.

Update the settings

Here it is important that you choose "Send with Selected Options" first and then "HTML" as otherwise the email does not seem to get sent ("Text" option does not seem to work).

HTML Option
.

Add Products you'd like to get updates about 

Add Product Selection

Of course you may add more products - I chose only the "Database" in my example. 
.

Change the number of items you'd like to see 

No of Items

*** AND DON'T FORGET TO HIT THE "APPLY" BUTTON FURTHER DOWN ON THE SCREEN ***
.

 Check your current Favorites

Then it's important to check your current "Favorites". Click on the yellow/orange STAR in the upper menu close to the search field and select "Documents". If "Documents" does not get displayed there's no need to clean up as you haven't marked anything as favorite yet. But in my below example you see that I have a lot of very old docs in my list. 

Check Favorites

So I will clean them up first.
.

Clean Up the favorite documents list

Click on "Manage Favorites" via the yellow/orange STAR and mark all unwanted documents by using either the usual SHIFT or STRG keys. Hit "Remove".

In my case the list is empty now.  
.

Mark documents as FAVORITES 

The important work is now to mark certain documents or bugs as FAVORITES. In the below example I'd choose the most important MOS Note 161818.1 via the plain ID search (right side of the screenshot), and once the note gets displayed I'll push the withe STAR on the upper left corner above the document - the STAR will turn yellow/orange

Empty fav list

Once I've did that I will find this note now in my list of favorite documents:

Repeat this with the notes you'd like to get informed about changes. For instance I monitor always the "Known Issues and Alerts" for Oracle Database 12.1.0.2 and 11.2.0.4:

Issues and Alerts
.

Receive the email update

Once you've did that you'll get an email per day with the recent changes - and it will contain information about the updates in your fav notes.


.

Summary

It's hard to keep track about recent changes and updates to important MOS Notes. And it's even harder to learn about newly published articles in your areas of interest. The HOT Topics email feature in MOS is pretty cool and extremely helpful. I like it a lot.

But you'll have to enable it first in your settings as MOS does not want to spam you. 

Credits to Roy who dug out all the tiny pieces such as the HTML switch ;-)

--Mike

Tuesday Dec 08, 2015

MOS Note:884522.1 - New preupgrd.sql available

Whenever you attempt to upgrade an Oracle database to Oracle Database 12.1.0.2 please get the most recent version of preupgrd.sql, the preupgrade check script, (including the utluppkg.sql package) from MOS Note:884522.1 first.

MOS Note 884522.1
How to Download and Run Oracle's Database Pre-Upgrade Utility

preupgrd.sql

The new version has many improvements over the previous one - and it is more than 2 years "younger" then the one you'll get with a standard installation of Oracle Database 12.1.0.2. It will give you also good advice when you are planning a migration. 

--Mike

Friday Nov 06, 2015

Oracle Database Release Status - MOS Note:742060.1

Almost every day I get at least one email by somebody asking things such as ...

  • What is the current status of Oracle 11.2.0.3? 
  • Is Oracle 11.2.0.4 Standard Edition One under Extended Support's treatment?
  • Do I get bug fixes for Oracle 12.1.0.1?
  • And is it really true that I don't get bug fixes for Oracle 11.2.0.3 anymore???

All valid questions - and all of them get answered within this reference note called:

Why am I writing this?

Simply because the Lifetime Support Policy Brochure only has now a link to a central MOS note added - but no explanatory text such as "Full Extended Support coverage will only apply to the terminal release". And the link is added in the right bottom corner underneath the table on (real) page 6 (the document's pagination doesn't count pages 1 and 2 as 1 and 2 for whatever reason). 

MOS Note:742060.1 has now an updated chart displaying clearly the Support Periods:

Oracle Release Chart

And a nice overview table clearly showing the Patching End Dates as well:

Oracle Patching End Dates for the Database

MOS Note:742060.1 is clearly THE REFERENCE in terms of questions such as:

  • How long will I get bug fixes for release X?
  • When is Premier Support ending for release Y?
  • Do I get Waived Extended Support for release Z?
.
--Mike
.

Tuesday Oct 27, 2015

OOW 2015 - Upgrade and Migrate to Oracle 12c Talk - Live and Uncensored - Get the Slides

Thank You, Thank You, Thank You!!!

Roy and I were extremely happy yesterday as the room was full. Totally sold out. I've read on Twitter that some people wanted to go in and weren't allowed to join as the room capacity was reached.

If you want to get the few slides for our first talk:

And thanks again - you were an awesome audience! And we are looking forward to see you in one of our two other talks:.

  • Our 2nd talk will happen on Wednesday at 12:15pm (skip the unhealthy lunch).
    We'll contrast some nasty things with some very good and detailed customer examples included in it. Real world examples, no artificial lab exercises. Againuncensored (mostly <img src=" title=";-)" style="border: none;" /> ) and just from first hand experience.

    How to Upgrade Hundreds or Thousands of Databases in a Reasonable Amount of Time [CON8375]
    Mike Dietrich, Master Product Manager, Oracle
    Roy Swonger, Sr Director, Software Development, Oracle

    Wednesday, Oct 28, 12:15 p.m. | Moscone South—102
    .
    .
  • The 3rd talk of our group is the Data Pump  Performance Tips and Tricks talk delivered by Data Pump experts from Development.

    Deep Dive: More Oracle Data Pump Performance Tips and Tricks [CON8376]
    Dean Gagne, Consulting Member of Technical Staff, Oracle
    Jim Stenoish, Senior Director, Software Development, Oracle

    Thursday, Oct 29, 9:30 a.m. | Moscone South—305
    .
    .

--Mike

Monday Oct 26, 2015

OOW 2015 - if you've missed our Upgrade Hands On Lab

Ready to kick off with the first of our four Hands-On-Labs at OOW15 at the Nikko Hotel. Currently it's calm before the storm  ...

OOW 2015

But just in case you didn't grab a seat at one of the labs then please come to our talk today (Monday!) at 1:30pm in Moscone South 102 as we'll show you the core parts of the lab - and you'll be able to download it later on from the blog and run it by yourself.

Download the lab via this link:

--Mike

Tuesday Oct 20, 2015

Where do these large trace files come from in Oracle 12c?

Just had an observation about very large trace files on one of my customers I'm working with at the moment. When I write "very" I mean "VERY" as some grew over 10GB within a few hours.

Growth - Trace Files - (c) Mike Dietrich

The files contained a ton of such messages:

----- Cursor Obsoletion Dump sql_id=5p8a9d4017bq3 -----
Parent cursor obsoleted 1 time(s). maxchild=1024 basephd=00007FFB8AD45CB0 phd=00007FFB8AD45CB0

After doing a bit of research I came across this document and an explanation:

MOS Note:1955319.1;
Huge Trace Files Created Containing "----- Cursor Obsoletion Dump sql_id=%s -----"

Well, we introduced an Enhancement - via an unpublished bug (and I'd guess it is undocumented then) in Oracle Database 12.1.0.2 to improve cursor sharing diagnostics by dumping information about an obsolete parent cursor and it's child cursors after the parent cursor has been obsoleted N times.

You can control this behavior by altering the value for:

alter system set "_kks_obsolete_dump_threshold" = N;

Possible value range is 0..8 whereas 0 means: switch the obsolete cursor dump off completely, and other values (N) defined the number of invalidations after which the cursor will be dumped.

The default in Oracle Database 12.1.0.2 is 1 meaning this will happen after every single invalidation

Just be aware that the underlying cursor sharing problem needs to be investigated - always.
If you have cursor sharing issues you may set this parameter higher therefore not every invalidation causes a dump, then investigate and solve the issue, and finally switch the parameter to 0 once the issue is taken care of. 

Please be aware that switching the parameter to 0 will lead to a lack of diagnostics information in case of cursor invalidations.

--Mike

Saturday Oct 17, 2015

Extended Support Fee for Oracle 11.2.0.4 waived until May 31, 2017 - Extended Support until Dec 2020

Friday, Oct 16, 2015, Oracle announced that the Extended Support for Oracle Database 11.2.0.4 will be waived until May 31, 2017. After this period of Waived Extendend Support, Extended Support for Oracle Database 11.2.0.4 will be offered until end of December 2020.

This information can be found here:

Something to mention:

  • There's no bug fixing support for Oracle Database 11.2.0.3 or below available anymore
  • If you'll compare the effort to upgrade to Oracle Database 11.2.0.4 to Oracle 12.1.0.2 you'll have to do the exact same amount of work. tests etc - no difference


    .
  • End of Premier Support means that Oracle will not offer fixes for new issues unless an extra-cost offer called Extended Support has been purchased. But you'll still get Sustaining Support until you'll stop working on the release. For a description what terms such as Premier Support, Extended Support and Sustaining Support mean please refer to the Lifetime Support Policy.
    Premier Support for Oracle Database 11.2 ended on Jan-31, 2015
    .
  • For Oracle Database 11.2.0.4 - the Terminal (final) Patch Set for Oracle Database 11.2 - Oracle will waive (no extra cost, no action required) Extended Support to every customer with a valid support contract until May 31, 2017.
    You can extend the Extended Support for Oracle Database 11.2.0.4 until 31-DEC-2020 - but then at the usual extra cost. 
    This information can be found in MOS Note:742060.1.
    .
  • For Oracle Database 11.2.0.3 Oracle has waived the Extended Support, but as Extended Support for Oracle Database 11.2.0.3 ended on 27-AUG-2015 no bug fixes are available (including PSUs, SPUs and BPs) anymore.
    There's no bug fixing support for Oracle Database 11.2.0.3 anymore.
    This information can be found in MOS Note:742060.1.
    .
  • For Oracle Database 11.2.0.2 there's no Extended Support offering available.
    There's no bug fixing support for Oracle Database 11.2.0.2 anymore.
    This information can be found in MOS Note:742060.1.
    ..
  • For Oracle Database 11.2.0.1 there's no Extended Support offering available.
    There's no bug fixing support for Oracle Database 11.2.0.1 anymore.
    This information can be found in MOS Note:742060.1.
    .
--Mike

Thursday Sep 17, 2015

SE2 - Some questions, some answers ...

Oracle Standard Edition SE2 12.1.0.2*** Updated on Nov 6  to reflect 11.2.0.4 changes***

There were a lot of questions regarding Oracle Database Standard Edition 12.1.0.2 SE2 in the past days.And you may find some things mentioned especially in the COMMENT section of the blog post from Sep 1, 2015.

And please find the official Oracle SE2 "brief" document here giving you a good overview on SE2:
http://www.oracle.com/us/products/database/oracle-db-se2-brief-2680836.pdf

I'll try to summarize some topics I'm able to answer by myself. And please don't expect me to assist with license or license migration questions - that is far beyond my scope or knowledge or responsibility, and you may please contact your Oracle sales person regarding these topics instead.

Please find all our articles about Oracle Database Standard Edition 12.1.0.2 SE2:

Software and Support 

  • Q:
    How long will Premier Support offered for Oracle Database Standard Edition 12.1.0.1 SE and SE1?
  • A:
    Premier Support for Oracle Database Standard Edition 12.1.0.1 SE and SE1 will continue until Aug 31, 2016. After this date (as of Sep 1, 2016) Oracle 12.1.0.1 SE/SE1 will enter Sustaining Support.
    .
  • Q:
    Will there be Extended Support offered for Oracle Database Standard Edition 12.1.0.1 SE and SE1?
  • A:
    No. Extended Support for 12.1 SE and SE1 is not offered. The Lifetime Support Policy document has been updated to reflect this.
    .
  • Q:
    Is the extension of the Waived Extended Support and the Paid Extended Support for Oracle 11.2.0.4 valid for SE and SE1 as well?
  • A:
    Yes, it is - there's actually no distinction (as far as I know) between support periods for SE, SE1 and EE.
    .
  • Q:
    Are there plans to release Oracle 12.1.0.2 SE/SE1?
  • A:
    Oracle Standard Edition 12.1.0.2 will be offered as SE2 only.
    .
  • Q:
    Is hard partitioning allowed with SE2?
  • A:
    Yes, it is as long as there are no more that 2 physical sockets in the server and you are using a supported hard partitioning software to bind a VM to a specific CPU. SE2 is not allowed to run on servers with more than 2 sockets.
    For an explanation and a list of supported hard partitioning technologies please see here:
    http://www.oracle.com/us/corporate/pricing/partitioning-070609.pdf
    .
  • Q:
    Is Oracle Multitenant available with SE2?
  • A:
    Oracle Multitenant is an Oracle Enterprise Edition only license. But you can have Oracle Single Tenant with many benefits meaning you'll have one pluggable database within one container database. Features such as remote cloning will be fully supported. See: https://blogs.oracle.com/UPGRADE/entry/can_you_have_oracle_multitenant
    .
  • Q:
    Can we move PDB from SE2 Single Tenant to a EE Single/Multitenant database? 
  • A:
    Yes, of course - this is fully supported.

Database Installation and Patching

  • Q:
    Can I install Oracle Standard Edition 12.1.0.2 SE2 into the existing home (in-place)?
  • A:
    Yes, this is possible even though I would never recommend to do this for the simple reason that wiping out your current home will increase the potential downtime and cause you plenty of extra work in case of fallback. If you still want to install for whatever reason into the existing home there's no change in handling to any other Oracle release since Oracle 11.2.0.1:
    https://blogs.oracle.com/UPGRADE/entry/why_is_every_patchset_now
    .
  • Q:
    Which PSU should I apply on top of the releases Oracle Database Standard Edition 12.1.0.2 SE2 installation?
  • A:
    Take the same PSU as you would take for an EE database - there's no difference and there won't be specific PSUs (or SPU/CPUs or BPs) released for SE2. Check out MOS Note:1683799.1 (12.1.0.2 Patch Set - Availability and Known Issues) for the most recent recommended PSU
    .
  • Q:
    Is RAC (Real Application Clusters) still included in SE2?
  • A:
    Yes it is - limited to 2 nodes, and each node must be a single-socket server. See above: there's the possibility to either remove a CPU physically - or hard partitioning with a supported virtualization solution such as OVM.
    .
  • Q:
    I would like to use SE2 with RAC. Which Grid Infrastructure will I need to download?
  • A:
    When deploying a SE2 RAC Cluster please download the regular Oracle Grid Infrastructure (GI) packages from the official download locations (OTN, MOS, eDelivery). There's no separate download for an SE2 GI.
    ,
  • Q:
    Can I install/use SE2 on a 4-socket server?
  • A:
    No - SE2 is limited to be deployed on 2-socket servers only. And physically removing 2 CPUs from a 4-socket-machine does not satisfy the license agreement.
    .
  • Q: 
    Can I deploy more than one SE2 database on a server?
  • A:
    Yes, of course you can.

Database Upgrade

  • Q:
    I want to upgrade from Oracle 12.1.0.1 SE/SE1 to Oracle 12.1.0.2 SE2. Is there any specific procedure or tool to use?
  • A:
    Upgrade works exactly as expected. There's no difference for SE2 compared to the upgrade procedure from Oracle 12.1.0.1 EE to Oracle 12.1.0.2 EE. 
    .
  • Q:
    I would like to upgrade from Oracle 12.1.0.1 SE/SE1 to Oracle 12.1.0.2 EE. Is there any specific procedure or tool to use?
  • A:
    Upgrade is always the same procedure, regardless of SE, SE1, SE2 or EE. But if you'll convert from SE/1/2 to EE please follow the advises in MOS Note:2046103.1 (How to Convert Oracle Database 12c from Standard to Enterprise Edition ?)
    .

Other topics

  • Q:
    Does the thread limitation in SE2 (16 in single instance mode, 8 per node in RAC mode) include background processes?
  • A:
    No, background processes such as LGWR or PMON are not included in this limitation.
    .
  • Q:
    Is the thread limitation valid across all instances on the same server?
  • A:
    No, the limit is enforced per database instance and not per server.
    .
  • Q:
    Does the thread limitation happen based on number of OS threads or CPU threads?
  • A:
    Actually the use of the term "threads" may be a bit misleading. Please have a look into the documentation about Instance Caging. That will explain how the thread limitation will be enforced. Views to monitor the resource usage are: V$RSRC_CONSUMER_GROUPV$RSRCMGRMETRIC and V$RSRCMGRMETRIC_HISTORY.
    .
  • Q:
    How do I get an idea how many threads I'm using right now?
  • A:
    First of all your OS displays how many OS threads it offers right now.
    Either check the Windows task manager:

    .
    or on Unix use "top" and press "1":

    .
    In these examples you'll see that the OS can handle a maximum of 16 (Win) or 4 (Linux) threads in parallel. That means you can't hit the thread limitation per single instance database.
    If your OS displays more than 16 threads then you may check some calculation advice given in the following blog post (and please see also the Comments section below):
    http://www.redstk.com/current-thread-count-for-your-standard-edition-oracle-databases/
    .
  • Q:
    Is there a core limitation for the hardware SE2 is installed on?
  • A:
    No, the box you'll use Oracle SE2 on can have as many cores as the CPUs offer. But there's a socket limitation of a maximum of 2 physical sockets. But the most modern CPUs can present 36 cores to SE2 on a 2-socket machine. 
    .
  • Q:
    Can I disable Hyper Threading to present more "real" threads to the database?
  • A:
    Yes, this is possible but the effect may not be huge.
    .
  • Q:
    Can I license any options/packs with SE2 such as Diagnostics or Tuning Packs?
    A:
    Unfortunately you can't license any additional packs or options with SE2. You will have to rely on things such as PERFSTAT and similar tools.

--Mike

Thursday Sep 10, 2015

Don't get puzzled by "sqlpatch" messages during Upgrade

During my last Hands-On-Labs in Uruguay and Argentina I've had several people wondering about these messages below when running the command line upgrade with catctl.pl:

catctl.pl - sqlpatch

This (and another) message breaks the nicely structured format of the catctl.pl output. And as it ends with an "err" extension it looks to many people as if the upgrade had gotten an error,

But please don't feel disturbed. It's just messages from sqlpatch invocation - and the "err" extension is just pointing to an error file in case something has gone wrong.

In a future release such messages will be written to the logfiles only but not to the screen output anymore.

--Mike

Wednesday Sep 09, 2015

Different Metrics for SPA (SQL Performance Analyzer)

I'm more the command line type of person. Once I've understand what's going on behind the curtains I certainly switch to the GUI-click-click tools. But in the case of Real Application Testing - even though the support via the OEM GUI is excellent - sometimes I prefer to run my procedures from the command line and check my reports in the browser.

Recently Thomas, a colleague from Oracle ACS Support, and I were asking ourselves about the different comparison metrics for the SQL Performance Analyzer reporting We did scan the documentation but we found only examples but no complete list. Then we did ask a colleague but thanks to OEM we got an incomplete list as well.

Finally Thomas dug it out - it's stored in the dictionary in the table V$SQLPA_METRIC

SQL> SELECT metric_name FROM v$sqlpa_metric;

METRIC_NAME   
-------------------------
PARSE_TIME               
ELAPSED_TIME             
CPU_TIME                 
USER_IO_TIME             
BUFFER_GETS              
DISK_READS               
DIRECT_WRITES            
OPTIMIZER_COST           
IO_INTERCONNECT_BYTES    

9 rows selected.

What do you do with these metrics now?

You can use them in such a way:

set timing on

begin
dbms_sqlpa.execute_analysis_task(
   task_name=>'SPA_TASK_MR07PLP_11107_12102',
   execution_name=>'Compare workload Elapsed',
   execution_type=>'compare performance',
   execution_params=>dbms_advisor.arglist(
                     'comparison_metric','elapsed_time',
                     'execution_name1','EXEC_SPA_TASK_MR07PLP_11107',
                     'execution_name2','TEST 11107 workload'),
   execution_desc=>'Compare 11107 Workload on 12102 Elapsed');
end;
/

You can vary the elapsed_time in my example with the various comparison metrics mentioned in v$sqlpa_metric

--Mike 

Monday Sep 07, 2015

Oracle Database 12.1.0.2 SE2 - Support and Patches for Oracle Database 12.1.0.1 SE/SE1

Oracle SE2

Please find all our articles about Oracle Database Standard Edition 12.1.0.2 SE2:

 

Some questions regarding support for Oracle Database Standard Edition 12.1.0.1 (SE/SE1) came up in the past days.

Most of those are answered already in MOS Note 2027072.1 (Oracle Database 12c Standard Edition 2 (12.1.0.2) )

How long will Oracle Database 12.1.0.1 in any edition remain under Premier Support? 

Full patching support for 12.1.0.1 for all versions of 12gR1 (Enterprise Edition, Standard Edition and Standard One Edition) will be proviced for an additional 12 months from the release of 12.1.0.2 SE2, so through until end August 2016. 

After that period Oracle Database 12.1.0.1 will enter Sustaining Support. There won't be any Extended Support for Oracle Database 12.1.0.1 in any edition.
.

Will there be PSUs and SPUs/CPUs available?

Yes, quarterly Patch Set Updates and Critical Patch Updates for 12.1.0.1 will continue to be delivered until end of Premier Support for Oracle Database 12.1.0.1.  
.

Will there be an Oracle Database Standard Edition 12.1.0.2 SE/SE1? 

Beginning with the release of Oracle Database 12.1.0.2,  Oracle Database Standard Edition (SE) and Oracle Database Standard Edition One (SE1) are no longer being released.  12.1.0.1 was the final edition that we will produce for SE and SE1.  

MOS Note:742060.1 Release Schedule of Current Database Releases does reflect this extension already:

Release Patching Ends

Notes and Exceptions*

12.1.0.1 31-Aug-2016

.

--Mike 

Friday Sep 04, 2015

Oracle non-CDB architecture may be desupported after Oracle Database 12.2

You may wonder about the headline of this blog post.
Haven't I blogged about this a long time ago?

Yes, I did. On January 22, 2015 - over 7 months ago:
https://blogs.oracle.com/UPGRADE/entry/non_cdb_architecture_of_oracle

But whenever in the past weeks this message has been refreshed and got a bit more precise (which I'd guess everybody appreciates). Now we are clearly saying that such a change won't happen with Oracle 12.2. Before we've said only "in a later release".

See the Oracle Database 12c Upgrade Guide

Deprecation Note non-CDB architecture

In case you'd like to explore the world of (at least) Oracle Single Tenant (no extra license required, available even with SE2) which I'd highly recommend you'll find some useful advice in this slide deck:

  • How Oracle Single Tenant will change a DBA's life 
  •  

    --Mike 

    Thursday Sep 03, 2015

    Can you have Oracle Multitenant in Oracle 12.1.0.2 SE2?

    Please find all our articles about Oracle Database Standard Edition 12.1.0.2 SE2:

     

    Can you have Oracle Multitenant in Oracle Standard Edition 12.1.0.2 SE2?

    No, you can't as Oracle Multitenant is a licensable option for Enterprise Edition (EE) databases only.

    But wait a second ...

    You can do Oracle Single Tenant with SE2 of course meaning you can have one active pluggable database within one container database at a time. That is possible and does not require any additional licenses.

    See the DBCA (Database Configuration Assistant) screen when you'll try to create a container database:

    DBCA - Single Tenant

    More information? 

    You'll find more information about the differences in handling and such between Oracle non-CDB, Oracle Single Tenant and Oracle Multitenant databases in this presentation:

    --Mike 

    Monday Aug 24, 2015

    Migration IBM AIX ==> SPARC Solaris with Data Guard

    Can we migrate our database with Oracle Data Guard?

    We are getting this question asked quite often during our workshops or via email. And if you are staying within the same operating system family (such as Red Hat 5.8 to OL 7) all is fine, and this is one of the best and most simple approaches to jump between servers. Even when you add a subsequent database upgrade all is very straight forward.

    But what if you mix operating systems?

    The Support Note for Heterogeneous Data Guard Configurations explains which combinations are allowed beginning with specific releases:

    MOS Note: 413484.1
    Data Guard Support for Heterogeneous Primary and Physical Standbys in Same Data Guard Configuration

    The most popular combinations are Windows to Linux or Intel Solaris to Linux beginning with Oracle 11.1. One combination often requested was IBM AIX to Oracle SPARC Solaris. And we did support this for a few weeks - a white paper got published - and taken away shortly after, removing the support as it turned out that the control file had 5 or 6 pieces which were highly OS dependent. There were rumors circling around you still could do it with a bit of manual extra work.

    Migration Oracle on AIX to SPARC SOLARIS

    Now (ok, since end of March 2015), surprise-surprise, there's an official MOS Note available explaining how to migrate away from IBM AIX to SPARC Solaris by using a Physical Standby Database beginning with Oracle 11.2.0.1:

    MOS Note: 1982638.1
    One Time Migration Steps from IBM AIX Power to Solaris SPARC using Data Guard

    It is based on the MOS Note:469493.1 (Step By Step Guide to create a Physical Standby Database using RMAN Backup/Restore).

    The key action is to recreate the controlfile:

    To recreate a new primary control file, use the following procedure:
    a) On the open production, connect as SYSDBA, and issue "alter database backup controlfile to trace;"
    b) In the trace file for this session you will see two sets of DDLs to create a new backup control file. Use the set of DDLs that create the control file with the NORESETLOGS option (Set # 1)
    c) Shutdown the production database

    SQL> shutdown;

    d) Run the commands in the trace file starting with 'startup NOMOUNT', 'CREATE CONTROLFILE REUSE .. NORESETLOGS ..', 'RECOVER DATABASE', etc..

    And how about Big to Little Endian platforms?

    As the redo stream is highly OS dependent I don't think that we'll see combinations such as HP-UX to OL in the near future - just my feeling. But with the offering of Full Transportable Export/Import and the help of RMAN Incremental Backups (see this presentation in our Slides Download Center about it: ) we have very strong alternative in place.

    --Mike 


    Thursday Aug 20, 2015

    Upgrade nach Oracle Database 12c - alles ganz einfach!

    Sorry - German only - if you seek for a very similar presentation in English please find it here:
    https://blogs.oracle.com/UPGRADE/entry/webcast_why_upgrade_to_oracle
    .


    Danke noch mal an meinen Kollegen Frank Schneede, der das erste Webinar rund um 12c eingeführt hat. 

    Das Replay meines Seminar-Teils ist hier in Deutsch verfügbar:


    Viel Spass :-)

    --Mike 

    Wednesday Aug 19, 2015

    Invalid Table Data before Upgrade to 12.1.0.2?

    Oracle Database Upgrade 12c

    You plan to upgrade your database(s) to Oracle Database 12.1.0.2,?

    You did run the preupgrd.sql including the preupgrade package in your current database already?

    But in the preupgrade.log you'll see the following ERROR:
    .
    .

    ERROR: --> Invalid Oracle supplied table data found in your database.

         Invalid data can be seen prior to the database upgrade
         or during PDB plug in.  This table data must be made
         valid BEFORE upgrade or plug in.

       - To fix the data, load the Preupgrade package and execute
         the fixup routine.
         For plug in, execute the fix up routine in the PDB.

        @?/rdbms/admin/utluppkg.sql
        SET SERVEROUTPUT ON;
        exec dbms_preup.run_fixup_and_report('INVALID_SYS_TABLEDATA')
        SET SERVEROUTPUT OFF;

    Where does it come from?

    First of all it's important to know that you can't upgrade your database without resolving this error condition before. If you'd ignore it you'll see the magic universal ORA-1722: invalid number error indicating that one of the mandatory checks in the upgrade scripts had failed

    For more information on type evolution check the Oracle Database 12c Object-Relational Developer's Guide

    What does this warning mean? 

    The error results from a failed check for table data in columns of evolved types. Those must be upgraded before the database can be upgraded, otherwise they will be considered as "invalid" data. The same thing can happen when you try to plugin a stand-alone (non-CDB) database making it a pluggable database. The sanity script noncdb_to_pdb.sql will also check for this condition.  

    And how do you solve the ERROR

    • For oracle-supplied data, the conversion would be done by:
      SET SERVEROUTPUT ON;
      exec dbms_preup.run_fixup_and_report('INVALID_SYS_TABLEDATA');
      SET SERVEROUTPUT OFF;

      .
    • For user data, the conversion would be done by:
      SET SERVEROUTPUT ON;
      exec dbms_preup.run_fixup_and_report('INVALID_USR_TABLEDATA');
      SET SERVEROUTPUT OFF;

    In both cases the preupgrade package @?/rdbms/admin/utluppkg.sql from either your 12.1.0.2 $ORACLE_HOME or from the download via MOS Note: 884522.1 must be loaded into your database - it has been loaded already if you'd execute the preupgrd.sql

    You shouldn't run the fixups on a live production system during normal operation but only right before upgrade as the fixups run ALTER TABLE DDL commands. Column metadata and data related to the object columns/tables that contains data of older version types will be updated. 

    The below query will check how many of the tables/columns (oracle-supplied and user data) are affected

    SQL> SELECT COUNT(*) FROM SYS.OBJ$ o, SYS.COL$ c, SYS.COLTYPE$ t WHERE o.OBJ# = t.OBJ# AND c.OBJ# = t.OBJ# AND c.COL# = t.COL# AND t.INTCOL# = c.INTCOL# AND BITAND(t.FLAGS, 256) = 256; 

    Further Information?

    MOS Note: 2009405.1
    ORA-01722: invalid number SELECT TO_NUMBER(‘INVALID_TABLEDATA’) while upgrading to 12c

    --Mike 

    PS: Credits to my colleagues Cindy and Agrim for providing tech background and the MOS Note 

    About

    Mike Dietrich - Oracle Mike Dietrich
    Master Product Manager - Database Upgrade & Migrations - Oracle

    Based in Germany. Interlink between customers/partners and the Upgrade Development. Running workshops between Arctic and Antartica. Assisting customers in their reference projects onsite and remotely. Connect via:

    - -

    Search

    Archives
    « July 2016
    SunMonTueWedThuFriSat
         
    1
    2
    3
    6
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
          
    Today
    Slides Download Center
    Visitors since 17-OCT-2011
    White Paper and Docs
    Workshops
    Viewlets and Videos
    Workshop Map
    x Oracle related Tech Blogs
    This week on my Rega & Pono
    Upgrade Reference Papers