Video : Real-Time Materialized Views

Today’s video is a quick demo of Real-Time Materialized Views,
introduced in Oracle Database 12c Release 2 (12.2).

This is based on information from the following articles.

The cameo for today’s video is Maria Colgan. 🙂

Cheers

Tim…

Video : Collation and Case-Insensitive Queries in Oracle Database

Today’s video is a run through the Collation functionality introduced in Oracle Database 12c Release 2 (12.2).

If videos aren’t your thing, you can find a lot more information about this subject in my article here.

The cameo in today’s video is Kim Berg Hansen. 🙂

Cheers

Tim…

PS. Subscribe to my YouTube channel here.

OBUG Tech Days Belgium 2019 : Day 1

The day started at my normal wake-up time. My flight wasn’t until 10:50, but I decided the leave for the airport really early to avoid traffic. It makes no difference to me if I’m at home on my laptop, in the airport on my laptop, or at work… 🙂

The only thing of note from the airport was me trying to scan through boarding security with my conference ticket, which of course failed, but they let me through anyway. Interesting…

The flight was scheduled for 75 minutes, but it took about 55 minutes, so we clawed some time back. Once landed and through security I headed off to get a train to Antwerp. The train took about 45 minutes, then it was a 2K walk to the venue, arriving fashionably late for the first day!

I arrived in time to see Frits Hoogland presenting “All about Linux memory usage by the Oracle database”. I’ve seen him present this session before, but I’m so rubbish at the subject, it still felt new. 🙂

From there it was Mike Dietrich presenting “Upgrade your Oracle databases fully unattended with AutoUpgrade”. I had a number of questions for Mike, both in the session and afterwards. From what I can see this features looks like it will be really useful.

Finally I watched Jonathan Lewis with “Why Oracle statistics aren’t enough”, where he showed a number of scenarios where statistics are ignored, leading to “interesting” decisions by the optimizer.

When the talks were done there was a social event with drinks and nibbles. We then went out to get some food, walked half way round the city by mistake, then went back to the hotel to crash!

Cheers

Tim…

OBUG Tech Days Belgium 2019

The BOUG Tech Days 2019 conference is happening on the 7th-8th February, which is Thursday and Friday this week. I see from the Twitter-verse that some people are already there and checking out the city.

I’ll be flying out on Thursday morning, and flying back Friday night, so it’s an overnight stay for me.

The list of speakers is pretty impressive, so it looks like it’s going to be a good one.

See you there!

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.

VirtualBox 6.0.4

VirtualBox 6.0.4 has been released. Hot on the heels of version 6.0.2, we got this new release last night (UK time).

The downloads and changelog are in the usual places.

I’ve installed it on my Windows 10 laptop at work. I’ll do my personal Windows 10 laptop, old MBP and OL7 server when I get home, and post an update here to say how I got on.

Cheers

Tim…

Update: Everything went fine with the installation on my Windows 10 laptop, MBP running macOS Mojave and server running Oracle Linux 7.

Oracle REST Data Services (ORDS) 18.4

It’s hardly news, as Oracle REST Data Services (ORDS) 18.4 has been out for a while, but I thought I would mention a couple of things related to it.

First off, we’ve upgraded (almost) all of our ORDS installations to 18.4 at work. I say almost because we’ve got a couple of 11.2 databases that don’t work consistently with anything newer that ORDS 3.0.12, so they aren’t being touched until we’ve upgraded the databases. This is how I typically do the upgrades.

Regarding my GitHub stuff.

  • Vagrant : My 18c, APEX, ORDS and Tomcat installation uses ORDS 18.4 and Java 11.0.2.
  • Docker : My ORDS build has been upgraded to 18.4 and Java 11.0.2.

We’ve not had any drama related to this. 🙂

Cheers

Tim…

Oracle Documentation : It’s getting better, but…

Over the years I’ve written a lot about the state of the Oracle documentation. This post is based on some Tweets by Bruno Borges related to the Java documentation, which I totally agree with.

Let’s start by saying, we’ve come a long way! Back when I wrote this post in 2015 we were in a really bad place. If you look at things now *for the database*, it is a lot more similar to what I was suggesting back then, at least as far as the new documentation is concerned. For example with this manual, all you have to do is alter the version number to switch between versions. Sensible!

What Next?

What I would like to see is this URL also, which always takes you to the latest version of the manual!

  • https://docs.oracle.com/en/database/oracle/oracle-database/latest/admin/index.html

What’s more, the canonical tag on all documentation should point to the latest link. In the case of this page, on all versions we would have this.

<link rel=”canonical” href=”https://docs.oracle.com/en/database/oracle/oracle-database/latest/admin/index.html” />

Why? We have a problem when searching for stuff. For example, Google for “DBMS_APPLICATION_INFO” and you get the 10g page. You have to actively Google for “DBMS_APPLICATION_INFO 18c” to get the correct page. Using the canonical tag is one way of solving that.

What about old versions?

They are still a mess. I’m not sure it’s worth the effort of fixing them, other than maybe canonical tags.

What about the content?

Every version of the database documentation gets better. There are still mistakes and “example code” that couldn’t possibly run, but it is a lot better than the old days. The introduction of the “2 Day …” manuals has improved things for beginners, but there still needs to be some work. Things I would like to see include.

  • Proper staged content, from beginner to deep dive. Much of the documentation is still very reference focused. New people don’t stand a chance.
  • Working examples. I would prefer if these were in the docs, rather than a link out to other things.
  • More manageable page sizes. Most pages are massive, and quite daunting.
  • Embedded videos where appropriate.
  • Most importantly, all content needs to be centralised.

Much of this content exists, but it’s spread across different resources, which makes is really hard for people to navigate.

What about other products?

This is where is all gets dodgy. Some of the other products aren’t as consistent as the new database stuff. Bruno was talking specifically about Java, and it is a bit of a mess. There are some good resources, but they are scattered and of varying quality and age. There is an entry point from https://docs.oracle.com/en/, but a few clicks down and you soon jump across to completely different sites. I hope the intention is to gradually bring all of this under the central location, with the appropriate redirects to make sure everyone finds the central location.

Is there an example of this?

Yes. I was discussing Bruno’s comments with a colleague and he pointed out what Microsoft are doing here. You can read about the project here.

I hope Oracle have similar plans for their documentation site. The popularity of other sites, including my own, suggest there is still some work to do before the documentation is consumable by normal people. 🙂

Cheers

Tim…

Oracle 19c Released : How does that make you feel?

Back in 2017 I wrote a post about the move to the yearly release cycle for Oracle software. It’s over 18 months since that post and we’ve had 18c and now 19c released (on LiveSQL), so I thought I would reflect on some of the pros and cons I mentioned in that original post. If you want to know what I originally said about these points, go back to the original post.

Pros

  • Quicker release of features : It’s becoming clear to me that some of the 18c features were actually 12cR2 features that didn’t make it into the documentation, even though they were present in the product. I’m not sure if these were present in the initial release of 12.2.0.1, or got introduced in the proactive bundle patches later. I have no problem with this, but it feels like the documentation is not keeping up with the new features added in the release updates. Where 18c is concerned we’ve had 18.1, 18.2, 18.3, 18.4 and now 18.5, but I don’t see a change in the documentation. Now a drop of the documentation once a year that includes the latest changes is better than the once every 4 years, but it still feels odd that we’re getting new functionality added, but no way to see that except for scouring MOS notes. I wonder if this situation will continue in 19c release.
  • Predictable release cycles : Yes. Nice.
  • Stability : This was originally one of my cons, but I’m going to move it to the pros section. I was worried the quicker release cycle might lead to a lack of stability, rather than the improved stability. I don’t know how other people feel, but 12.2 and 18c have been pretty good for me. I try and apply the proactive bundle patches (BP), now Release Updates (RUs), so I’m going all-in and things have been good. We are a “middle of the bell curve” company, so I probably won’t experience some of the edge cases you might, but that’s what I feel about it. I hope 19c continues this trend, as I see it.

Cons

  • Upgrade/Patch burnout : I’m currently upgrading some databases to 18c, but part of me is thinking, “What’s the point?” Let’s say the on-prem 19c drops in April, and we will wait for the first RU after that which might be July. I’m potentially only 6 months from having a viable 19c upgrade path, which is after all the Long Term Support (LTS) release. Should I bother with 18c now? I can understand if some people say no. I’m still going to move forward, as this solves some other issues for me, including the conversion to Multitenant of some 11.2 instances, which will make future upgrades easier. Having said that, mentally it is a downer and I can feel an element of this burnout I predicted.
  • Product Support/Certification : Yep. As predicted, many companies don’t seem to recognise that 18c even exists, let alone support their products on it. If I were charitable I would say they are waiting for 19c as it’s a LTS release, but in reality they are still struggling to check that 12.2 PDBs work for their products. I hope vendors get their act together to provide support for these new versions more quickly. That includes Oracle too.

Unsure

  • Learning : This still concerns me. I got access to 18c straight away on Oracle Cloud and LiveSQL, so really I’ve had nearly a year of 18c. For those people that first experienced it after the on-prem release, they’ve had about 6 months experience and the 19c hype train has started. Now it will still be a year from one on-prem release to the next, but it just kind-of feels like it’s only a 6 month release, if you know what I mean. I’m currently still writing about 18c features, but part of me is thinking, “What’s the point?” My mind is looking forward to 19c. As we move forward I realise each release will be smaller, so working through the new features will not be so heavy, but I’m still worried people (and I really mean me) will disconnect.
  • Certification : I just checked today and they are still pushing the 12cR2 certification. Now this is still relevant, as 18c and 19c are effectively 12.2.0.2 and 12.2.0.3 respectively, but it just sounds bad. Hey, 19c has just been released and I’m working for the 12cR2 certification? I get the distinct feeling certification is dead to me now. Let’s see what Oracle Education do with this. Maybe I’ll change my mind.

Of course, it’s still early days so we will see how the cookie crumbles over the coming releases. I suspect I may be forced to cherry-pick a little.

Cheers

Tim…

PS. A Twitter comment from Frits Hoogland made me feel I should add something. If you are happy with what you have and don’t feel the need to upgrade often, that’s cool. Constantly chasing an upgrade can be problematic because of the instabilities it can cause. The new release cycle is allegedly meant to reduce that by drip-feeding change in smaller, manageable chunks…

Although a DBA may like some of the new features, they affect comparatively few people in the company. I feel development new features are a bigger draw for getting people to buy into the upgrade cycle. Just this week a project started on an existing 11.2 instance, but involved a bunch of JSON functionality, so it was moved across to an 18c instance. The developers only know this functionality is in 12.2 and 18c because I’ve actively promoted it. If I had not done this, they would have stuck with 11.2 and wasted a bunch of time manually coding stuff.

I’m a fan of keeping up with the latest versions, both personally and in the companies I work. In my experience avoiding upgrades and patches tends to cause more problems than keeping relatively up to date. Just my opinion though…

VirtualBox 6.0.2

VirtualBox 6.0.2 has been released.

The downloads and changelog are in the usual places.

I’ve installed it on my Windows 10 laptop at work, which I use with Vagrant for testing of Oracle, WebLogic, Tomcat server builds, as well as Docker builds. I’ll do my personal Windows 10 laptop, old MBP and OL7 server when I get home.

Update: I’ve done an install on my Windows 10 laptop, MackBook Pro running macOS Mojave and a server running Oracle Linux 7. The installations of VirtualBox 6.0.2 on all hosts worked fine. I rebuilt a bunch of VMs using Vagrant 2.2.3 and everything looks good.

Cheers

Tim…