What architecture are you using for your production Oracle databases? (Poll Results Discussed)

I was having an email discussion with the folks from DBmarlin, and the question came up about the adoption of the multitenant architecture. Were people using the multitenant architecture, or sticking with the non-CDB architecture for now?

Followers of the blog know I threw my hat in with the multitenant architecture from Oracle 12.1.0.2 onward. We use Oracle 19c for everything of value now (there are a couple of dead projects still on 11.2) and all but one of those projects use PDBs. Suspecting I was not the norm here, I asked some questions on Twitter.

As usual I’m going to start with some caveats. The sample size is small. People who interact about tech on social media my not be a diverse sample. I’m going to act like these results are representative of the wider scene, but they may not be.

Here is the first question.

What architecture are you using for your production Oracle databases?

The fact that only 33% were on non-CDB only was a positive sign in my view. The introduction of the multitenant architecture made a lot of people nervous, and it was not without its problems in the early days. Even so, the combined total of only non-CDB and mostly non-CDB is still 50% of respondents. When you consider Oracle 21c makes the multitenant architecture mandatory, and the next long term release is 23c, there is a lot of work for people to do when they make the switch to 23c. The conversion is simple enough. It’s the testing resource that could hurt people.

Having 50% of people using mostly PDBs or all PDBs is a really good sign, and will make life much easier for them when they come to upgrade to the next long term release.

To dig a little deeper I asked this question.

Are you provisioning new production Oracle databases as PDBs?

So just over 65% of people said they are provisioning new Oracle databases as PDBs. That’s very positive, and makes a lot of sense going forward. Why would 35% of people stick with the non-CDB architecture for new databases? Some things I can think of include.

  • They are using an older versions of the database, and don’t have the option of using the multitenant architecture.
  • They want a one-size-fits-all approach to the database, and will convert everything when they are forced to.
  • Vendors don’t support the multitenant architecture. I have one project where I suspect the vendor doesn’t even know the multitenant architecture exists, let alone supports it.
  • Internal development teams haven’t caught up with the database version. From my experience, the only thing that was really affected by our move to PBDs was CRON jobs using OS authentication. We switched to using secure external password stores and everything was fine. I wrote an article on possible solutions to the OS authentication issue here.

If I was not working at my company, I don’t believe they would have been running on 19c with PDBs. I’ve been pushing for many years to improve the attitudes to upgrades and patching. The easy path is to do nothing…

Finally I wondered how many people were purchasing the multitenant option. Remember, from 19c onward you can run up to 3 user-defined PDBs without having to buy the multitenant option.

For those people using PDBs for production Oracle databases, have you bought the Multitenant Option?

At 35%, I’m actually surprised how many people have purchased the multitenant option. I expected it to be a lot lower. Don’t get me wrong, I think the multitenant architecture is fine. I’ve been advocating for people to switch to it and use lone-pdb since it was introduced on Oracle 12.1. I would like to use more than 3 PDBs per 19c instance, but I can’t justify the cost for a feature that I could argue should be free in all editions.

So there you have it. A quick snapshot of what my followers are saying.

Remember, the multitenant architecture is mandatory from Oracle 21c onward, with Oracle 23c being the next long term support release, so you are going to have to get comfortable with this stuff if you want to remain in support long term.

If you want any help getting to grips with the multitenant architecture I have a load of articles and videos.

Cheers

Tim…

Video : Multitenant : Running Scripts Against Multiple Pluggable Databases Using catcon.pl

In today’s video we give a quick demonstration of using catcon.pl to run scripts against multiple pluggable databases (PDBs) in a container database (CDB).

The video is based on one section of this article.

You can find loads of information about living with CDBs and PDBs in the following articles and the YouTube playlist linked below.

The star of today’s video is my long suffering wife Debra Lilley. Clearly suffering because of her social isolation, which of course means not seeing me. 🙂

Cheers

Tim…

Multitenant : Massive Changes in 19c and 20c

Is it safe to talk about this now? The announcement has happened and Mike Dietrich has posted about it, so I think so…

A couple of massive things have happened regarding the multitenant architecture in Oracle 19c and 20c.

19c

Prior to 19c, you were only allowed to have a single user-defined pluggable database (plus a root container and a proxy) without having to license the full multitenant option. I’ve been a big proponent of single-tennant or lone-PDB, but I can understand the reluctance of people to go that way, as it’s harder to realise the benefits, even though they do exist.

Oracle have now announced from 19c onward you can have 3 user-defined PDBs, without having the multitenant option. This is similar to what we got with 18c XE. As Mike points out, the documentation has already been changed to reflect this.

“For all offerings, if you are not licensed for Oracle Multitenant, then you may have up to 3 PDBs in a given container database at any time.”

Database Licensing Information User Manual

I think this is will be a massive boost for the uptake of the multitenant architecture. I’ve got some 19c stuff that will probably make use of this within days of me getting back to work!

!!!!!Amazing!!!!!

20c

Are you one of those people that have been saying, “Screw that multitenant stuff. I’m sticking with non-CDB architecture!” Good luck with that. In 20c the non-CDB architecture will be desupported.

You probably know the non-CDB architecture was deprecated since 12.1.0.2, but in 20c non-CDB is no longer an option, unless you are happy about running without support I guess.

This means your 20c upgrade will also include a migration to the multitenant architecture. What I would suggest is you start down that road today by moving to multitenant in 19c, then when you have to move to the next long term support release (2?c), you won’t be getting any surprises. What’s more, the 3 PDBs thing in 19c makes that all the more attractive!

If this announcement has made you panic, don’t worry. I’ve written a bunch of stuff about multitenant over the years, and there’s a YouTube playlist too.

Cheers

Tim…

PS. Smiles smugly to himself that he invested the time into learning multitenant from 12.1 onward…

PPS. I will be going through my existing articles amending any mention of licensing and PDB limits and desupport etc. Those changes won’t happen overnight. 🙂

Video : Multitenant : PDB Snapshot Carousel in Oracle Database 18c Onward

In today’s video we take a look at the PDB Snapshot Carousel feature, introduced in Oracle 18c.

I also have a Multitenant YouTube playlist.

There’s a lot more information about this feature and other multitenant functionality in these articles.

The star of today’s video is Nassyam Basha. 🙂

Cheers

Tim…

Video : Multitenant : Proxy PDB in Oracle Database 12.2 Onward

In today’s video we demonstrate the Proxy PDB feature, introduced in Oracle database 12.2.

I also have a Multitenant YouTube playlist.

There’s a lot more information about this feature and other multitenant functionality in these articles.

The star of this video is Anton Els of Dbvisit fame. I recorded this video last week and picked Anton for the “.com”, then they go and release Dbvisit Standby 9. Coincidence or conspiracy? 🙂

Cheers

Tim…

PS. Mike, I’ve downloaded version 9 and I’m going to give it a run through… 🙂

Video : Multitenant : PDB Refresh in Oracle Database 12.2 Onward

Today’s video demonstrates the PDB refresh functionality introduced in Oracle database 12.2.

If you prefer to read rather than watch, you can get all the information from this video from here.

The star of today’s video is Markus Michalewicz. He’s so serious in this clip it makes me laugh. 🙂

Cheers

Tim…

Video : Multitenant : PDB Archive Files in Oracle Database 12.2 Onward

Today’s video is a run through the PDB Archive File functionality introduced in Oracle 12.2.

If you prefer your content in text form, this video is based on the articles here.

The star of today’s video is Maris Elsins. 🙂

Cheers

Tim…

Video : Multitenant : Hot Clone a Pluggable Database (PDB) in Oracle Database 12.2 Onward

Today’s video is a run through the hot cloning functionality introduced in Oracle 12.2 multitenant.

You might also be interested in this playlist.

If videos aren’t your thing, you can always read the articles, which contain more information.

The star of today’s video is Craig Shallahamer. Craig is a really dynamic presenter, and I think this is the only time you will ever see him standing still! 🙂

Cheers

Tim…

Multitenant Enhancements in Oracle Database 12.2 (Some More Articles)

The Oracle Database 12c Release 2 (12.2) learning process continues. I’m determined to get to the bottom of all this new multitenant stuff. 🙂

Here’s the latest batch of articles.

So the last one is actually for 12.1, but I hadn’t written about it already, so I added it.

I also updated this article to include the “CONTAINERS Hint” feature functionality.

There is a new feature listed in the docs as as “Support for PDBs with Different Character Sets, Time Zone File Versions, and Database Time Zones in a CDB”. I’ve already written about the PDB character set stuff and it is also listed separately as a new feature. The time zone stuff works in 12.1, so it doesn’t appear to be a 12.2 new feature. The different Time Zone File Versions functionality, as far as I can see, relates to OCI client connections to the server and was introduced in 11.2. With all that in mind, I’m really not sure what this listed new feature specifically relates to. If someone can clear that up for me I would be really grateful, as I’m wondering if I’ve just missed the point somewhere. 🙂

I’ve added these to the list of all my multitenant articles here.

Cheers

Tim…

Multitentant (Pluggable Database) Videos

It’s been over 2 years since 12c was released and there still seems to be a lot of confusion about the pluggable database stuff. I think most people know the top-level concept, there’s only so many times you can see the memory stick analogy before it gets burned on your skull, but that doesn’t do much to help with the reality of working with it day-to-day.

I’ve written a whole bunch of articles on pluggable databases (listed here), but even then I think there is quite a bit of text for what in many cases is a feature that consists of a single statement. 🙂

I’ve recently been pushing out some videos on this stuff and I’ve got some more already recorded for release while I’m at OOW. Of course, the articles allow you to copy/paste your way through an example, but I think the videos give a more accurate representation of just how simple some of this stuff is from a functional perspective. If you are interested, all the multitenant stuff will be added to this playlist as it is released.

Cheers

Tim…