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 : Relocate a Pluggable Database (PDB) in Oracle Database 12.2 Onward

Today’s video is a brief run through the PDB relocate functionality, introduced in Oracle 12.2.

As always, this is based on articles with a lot more information, which you can find here.

The star of this video is none other than Martin Bach. 🙂

Cheers

Tim…

Video : Extended Data Types in Oracle Database 12c Onward

Today’s video is a quick run through the Extended Data Types functionality introduced in Oracle Database 12c Release 1. Why such an old subject? Well, it’s a prerequisite for something I was planning to do a video on, so I thought I better do this first. 🙂

For those that don’t like videos, you can find the same information and more here.

The cameo in today’s video if Martin Klier. 🙂

Cheers

Tim…

PS. Subscribe to my YouTube channel here.

Certification : OCP 12c and OCP 12cR2 Updates

Just a couple of certification related updates.

Upgrade to oracle Database 12c (1Z0-060)

About a week ago I finally got round to doing the 12c certification. As followers of the blog/website know I’ve been writing articles about Oracle Database 12c since it was released nearly 4 years ago and for pretty much all of that time I’ve been trying to convince myself to sit the 12c OCP DBA upgrade exam. It’s not that I care about the piece of paper itself (see my certification FAQ), but I’ve had so many people write and thank me for my 12c revision notes, that it felt a little bit odd I hadn’t actually sat the exam myself.

The biggest factor in delaying taking this exam was it was not a conventional 12cR1 new features exam. Instead it was an upgrade from OCP 9i, 10g, 11g to 12cR1. That meant it potentially covered anything introduced from 9iR2 onward.  That means in addition to learning the new features well enough to pass the exam, you also have to cover the old ground, which is quite a burden. Oracle used to provide catch-up exams like this as well as a straight new features exam and I think that was a better option.

Now I’m sure some of you will think, “But you should know that stuff anyway!”, and you are right, but knowing enough to do the job and knowing the type of things you are tested on in an exam are not the same thing. The thought of revising everything from 9iR2 onward was quite daunting and it put me off doing this exam. This seemed to be a common reaction amongst many people I spoke to.

I realise maintaining a catch-up exam and a regular new features exam is extra work for the certification folks, but if you want to keep people on the OCP treadmill, I think you’ve got to do this. I came very close to ditching the whole OCP thing as a result of this 12c upgrade exam, and I’m sure I’m not the only one.

Upgrade Oracle DBA 11g/12c to 12cR2 (1Z1-074)

I mentioned in a recent post there is an exam called “Upgrade Oracle DBA 11g/12c to 12cR2 (1Z1-074)” in beta at the moment. I’ve been writing about Oracle Database 12cR2 since its release on the Oracle Public Cloud, so there are quite a few articles on my website already.

Normally the release 2 articles get lumped together, since they don’t form part of an exam syllabus, but now they do, so I’ve split them up into two sections.

I’ll continue to add new articles to both sections, and at some point I will have a complete set of revision notes for the new exam. 🙂

Once again the new exam is a catch-up exam, but at least it only covers 12cR1 and 12cR2 this time. As before, I think this is a mistake, but that’s just my opinion. 🙂

Part of me wants to cram for this new exam and get it done on the cheap while it is in beta. Part of me thinks I may never take this new exam. Time will tell I guess. You’ll probably see an update post in 4 years when I’ve finally got round to it. 🙂

Cheers

Tim…

OBIEE and ODI 12c Silent Installations : First Steps

The company I work for is in the process of moving some core systems to Oracle Cloud Apps. As part of that process the folks who do the warehousing, BI and reporting stuff are transitioning from a bunch of SAP tools to ODI, OBIEE, OBIA etc. I am not part of either the old or new projects related to this work, but it does seem I am going to have to get involved in some of the infrastructure side of it, namely installations and basic “turn it off and on again” type support. I will never actual use this stuff. 🙂

I don’t like surprises, so I’ve spent some time recently playing with some of this stuff from an infrastructure perspective. I’ve been building, destroying and rebuilding this stuff repeatedly, trying to figure out how some of it hangs together and some of the pain points. That resulted in these articles.

There may be some more to follow, but they could be for older bits of kit, depending on the certification status of the various pieces when used against Oracle Cloud Apps.

I can’t emphasise enough how little I know about this stuff. I understand databases and I know a bit about WebLogic. As a result I can muddle my way through some installations of this OBIEE and ODI stuff. That is about it. 🙂

Cheers

Tim…

PS. If you are wondering about the image, it’s a stupid cow. It represents how clueless I am about this stuff, as well as how amusing I find it that we are transitioning to these tools just as the rest of the world is transitioning away from them. 🙂

Online Table Moves and Partitioning in Oracle Database 12c Release 2 (12.2)

A couple of articles have crept out over the last few days that relate to online operations on Oracle Database 12c Release 2 (12.2). Both of them are pretty small in terms of what you have to do, but are pretty awesome in terms of impact, so I’m giving them the official thumbs-up! 🙂

The first one is about moving tables online.

I wonder if this was a 12.1 feature that got pulled? In 12.1 we got to move partitions and sub-partitions online, but being able to move a table as an online operation is great. Saves you having to mess around with DBMS_REDEFINITION for a bunch of tasks.

The second one is about converting non-partitioned tables to partitioned tables.

This is pretty cool too. For one, you can use a single command to do it now, rather than having to use EXCHANGE PARTITION or DBMS_REDEFINITION to do it. What’s more, it can be done online!

As I’ve said many times before, it’s these convenience new features that usually have a bigger impact on my day-to-day life than the big sexy features.

Cheers

Tim…

Oracle Database 12c Release 2 (12.2) : Default APEX Installation Gone!

I’m a fan of APEX, but I am not a fan of the shared installation used in Oracle Database 12.1. I’m sure it is great for some people, but not for me. I prefer to have APEX installed locally in the PDB, which prompted this article.

Fast forward to Oracle Database 12c Release 2 (12.2) and APEX is no longer installed by default. It’s still shipped with the software, see $ORACLE_HOME/apex (see update), but not installed. I am conflicted about this…

  • On the one hand this is great because I don’t have to worry about removing the shared APEX installation before installing it into the PDB.
  • On the other hand this means people have to make an active choice to install APEX, which not everyone will do. That’s a pity. In addition to the tool itself, there is some useful APIs that come with it, like APEX_WEB_SERVICE and APEX_JSON. You don’t really need the later in 12.2 as you have lots of new JSON support, but it’s good to have for backwards compatibility.

So just remember you have an extra job to do after you’ve installed your database, which to install the latest version of APEX. 🙂

Cheers

Tim…

Update: As per comment from Joel Kallman, always download the latest version and install in the PDB locally, not in the root!

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…

Video : Table Point In Time Recovery (PITR) in Oracle Database 12c

It’s been a while, but here is a the latest video.

If videos aren’t your thing, you can read the articles here.

The star of this video is Uwe Hesse, who I recorded at UKOUG Tech 15. Yes, I did mean “15”. I have a bit of a backlog to work through. 🙂

Cheers

Tim…

PS. Subscribe to my YouTube channel here.

PL/SQL Objects for JSON in Oracle 12cR2

I’ve been playing around with some more of the new JSON features in Oracle Database 12c Release 2 (12.2).

The first thing I tried was the new PL/SQL support for the JSON functions and conditions that were introduced for SQL in 12.1. That was all pretty obvious.

Next I moved on to the new PL/SQL objects for JSON. These are essentially a replacement for APEX_JSON as far as generation and parsing of JSON data are concerned. If I’m honest I was kind-of confused by this stuff at first for a couple of reasons.

  • If you are coming to it with an APEX_JSON mindset it’s easy to miss the point. Once you “empty your cup” it’s pretty straight forward.
  • The documentation is pretty terrible at the moment. There are lots of mistakes. I tweeted about this the other day and some folks from the Oracle documentation team got back to me about it. I gave them some examples of the problems, so hopefully it will get cleaned up soon!

I was originally intending to write a single article covering both these JSON new features, but it got clumsy, so I separated them.

The second one isn’t much more than a glorified links page at the moment, but as I cover the remaining functionality it will either expand or contain more links depending on the nature of the new material. Big stuff will go in a separate article. Small stuff will be included in this one.

I also added a new section to this recent ORDS article, giving an example of handling the JSON payload using the new object types.

I’ve only scratched the surface of this stuff, so I’ll probably revisit the articles several times as I become more confident with it.

Cheers

Tim…

PS. Remember, you can practice a lot of this 12.2 stuff for free at https://livesql.oracle.com .