Can you simply switch from SE2 to EE with Oracle Multitenant

Oracle MultitenantThis question is coming up from time to time – and currently not covered in the official Oracle documentation as far as I know: “Can you simply switch from SE2 to EE with Oracle Multitenant?”

Yes, you can!

First of all, the switch is possible and tested. But you’ll have to satisfy a few requirements:

  • Both database versions must be the same
  • Both databases must have the same character set (in Oracle Database 12.1)

That’s it. Simply unplug your Standard Edition 2 PDB and plug it into your Enterprise Edition CDB.

In addition you may have to run several component scripts in your PDB to have functionality there which is provided by the CDB already in Oracle Enterprise Edition.

Does unplug from EE and plugin into SE2 work as well?

Yes, it does. But now you’ll have to make sure that the CDB you are plugging in does not have any options which are not present in SE2. See MOS Note: 2001512.1 – Creating A Container Database (CDB) With A Subset Of Options for further details. And this makes it (quite) a bit harder. So technically the path “EE => SE2” is working fine when you’ll have the same database versions and in Oracle 12.1 the same character sets.

Create Container Databases (CDB) with less options – it’s now supported in Oracle

The devil is in the detail:
If your EE PDB has now more options than the target’s CDB (which has to have no options being present in SE2) you’ll have to remove them. And this is not trivial (please see the “REMOVE AND CLEANUP” series on this blog covering Oracle Multitenant as well). Therefore I’d highly recommend the traditional (and supported) approach of using Data Pump to export and import your data.


8 thoughts on “Can you simply switch from SE2 to EE with Oracle Multitenant

  1. Hi Mike,

    I made a new SE2 empty CDB, and moved an EE non-CDB into it as a new PDB.
    I did that move to se2, a few months ago, and today, I noticed, that the AWR is still running snapshots each hour, etc.
    I thought all the AWR would be gone, after on SE2.

    I did see your post on the missing snapshots reappearing, but that was for 12.1, and EE I assume.

    Does oracle still need awr even on se2 for some internal purposes (that will not violate my se2 license) ?


  2. Hi Mike,
    Thanks for the quick reply!
    I should have included in the first post, that the parameter was already set to none before, and still is CONTROL_MANAGEMENT_PACK_ACCESS=none .

    • Now it gets interesting.
      So in CDB$ROOT the parameter is set to NONE – but in the PDB you still get snapshots???
      And in the CDB$ROOT as well?

      Can you run awrinfo.sql in both, the root and the pdb?


  3. Yes, I was able to run that in cdb and pdb.
    It has a lot of info in it, not just a bunch of “no rows selected” returns.
    How can get the files to you?


    • Nathan,

      I received your files and see what you mean.

      The CDB has:

      Report generated at
      11:07:31 on Dec 12, 2018 ( Wednesday ) in Timezone -06:00

      Warning: Non Default AWR Setting!
      Snapshot interval is 60 minutes and Retention is 8 days

      And I see the snapshots as well.

      The PDB has no snapshots – which seems to be ok.

      The database hasn’t been restarted since 23 Nov – can you please double check that CONTROL_MANAGEMENT_PACK_ACCESS is NONE – and once this persists after a restart, you must open an SR. I can’t cure or fix this. But I’m with you, AWR is part of Diag Pack which is an EE-only pack. Thus, there shouldn’t be snapshots in an SE2 CDB happening.


Leave a Reply

Your email address will not be published. Required fields are marked *

* Checkbox to comply with GDPR is required


I agree

This site uses Akismet to reduce spam. Learn how your comment data is processed.