Remote Cloning of PDBs and Non-CDBs (12.1.0.2)

I mentioned in a previous post that I would be revisiting some of my existing multitenant articles to include some of the features introduced in the 12.1.0.2 patch. Here’s one of them.

Not only have Oracle fixed the bug in 12.1.0.1 that prevented the remote cloning, but they’ve also added the ability to clone directly from non-CDB style instances, giving you another option for migrating from non-CDBs to PDBs. Pretty darn cool if you ask me! 🙂

Some more stuff will be amended over the coming days. If the changes result in some major rewrites I’ll probably blog about them. If not, I’ll just slip them into the articles and make a reference to the fact the specific feature was introduced in 12.1.0.2…

Cheers

Tim…

Oracle Licensing : It’s Your Responsibility to Comply

This little moan was inspired by some posts by Kevin Closson.

Kevin is awesome (I love you Kevin!), but I don’t happen to agree with him in this specific case*. Having said that, I do understand where he is coming from.

Earlier in the year my current employer had an Oracle license audit, which I wrote about here. I must admit I was quite nervous going into it. Oracle licensing is a tricky business and Oracle tend to ship a lot of functionality out-of-the-box, so it is easy for people to use things “by accident”. Having said that, Oracle do provide tools (DBMS_FEATURE_USAGE_STATISTICS) and documentation (Feature Availability by Edition) to help you keep track of things. You can also speak to Oracle License Management Services.

So now to the point of this moan and the title of this post. In my opinion, a DBA should have a basic awareness of licensing. I’m not talking about a profound knowledge of the licensing manual. I just mean a rough idea about database editions and options and how to find out what options you are using.

I think there are two distinct issues here:

  1. Some database options have an on/off switch and are turned off by default (like the In-Memory Column Store). If your DBA turns one of these on “by accident”, they should be fired. They are an idiot. Simple as that!
  2. Other database options are turned on by default, or even mandatory, but you are not breaking your licensing unless you use them. It’s very easy for a DBA or developer to copy something from a website or a MOS note and accidentally breach the license agreement. I have a lot of sympathy for people who fall into this trap. Anyone who was around in the early 10g days, when AWR, ADDM and ASH were first introduced, will remember the massive stink that caused. Click on the wrong page in EM or query the wrong DBA view and you’re in trouble. This was just plain wrong!

Anyway, enough of this moaning. I would be interested to know other people’s opinions though!

Cheers

Tim…

* So it turns out Kevin was correct in so far as the feature does get tracked as being used, but this is down to a bug. Presumably when that bug gets patched it will flush this usage and everything will be back to normal.

In-Memory Column Store and More

It was inevitable that I would have to have a play with the In-Memory Column Store.

It’s just a functional look. I have no idea about performance at the moment, although I should be starting a proof of concept in the next couple of weeks for one of our internal systems, so it will be interesting to see how it holds up. 🙂

Another thing that has come out of this release is the Full Database Cache Mode. That’s nothing to do with the In-Memory Column Store, but I can definitely see us using this on some of our stuff!

Finally, I’ve done a quick write up of the Smart Flash Cache stuff for my OCP exam notes.

It’s been out since 11.2.0.2, so I’m not sure why it is considered worthy of inclusion in the 12c DBA exam.

There have been a lot of changes to the multitenant option, so I’m probably going to spend some time amending/rewriting those articles to take on board the new stuff. From what I can see so far, the stuff they’ve added has certainly plugged a lot of “holes” in that option. Looks good so far!

Cheers

Tim…

Oracle Linux 7 Released

With all the excitement around the release of Oracle Database 12.1.02, it’s easy to forget that there is other stuff going on as well.

I’ve just noticed that Oracle have announced the release of Oracle Linux 7. You can download it now from eDelivery.

Just remember, it takes quite a while to get products certified on this stuff, so although I’ve already tried installations on the beta versions, I would not install any Oracle products on this stuff “for real” until the official certification is announced for each product.

Cheers

Tim…

Oracle Database 12c Release 1 (12.1.0.2) Patch Released

I just read this post by Dirk Nachbar, saying that 12.1.0.2 is now available from edelivery.oracle.com. I’ve downloaded it, so the rest of the world is now allowed to start their downloads. 🙂

I assume it will be available from MOS also at some point.

Cheers

Tim…

PS. It will allegedly be made available on OTN at some point in the future.

Oracle Midlands : Event #4 – Summary

What a cracking Oracle Midlands event!

The evening started with a session on “Designing Efficient SQL” by Jonathan Lewis. The first few slides prompted this tweet.

jl

When someone asks me a question about SQL tuning my heart sinks. It’s part of my job and I can do it, but I find it really hard to communicate what I’m doing. Jonathan’s explanation during this session was probably the best one I’ve ever heard. Rather than trying to explain a million and one optimizer features, it’s very much focussed on a “What are you actually trying to achieve?” approach. It should be mandatory viewing for all Oracle folks.

After the break, where I stuffed myself with samosas, it was on to the lightning talks (10 mins each).

  • Breaking Exadata – Jonathan Lewis, JL Computer Consultancy : This focused on a couple of situations where the horsepower of Exadata doesn’t come to the rescue, like large hash joins that flood to disk and decompressions in the storage cells being abandoned and the compressed blocks being sent back to the compute nodes to be decompressed. If I ever get to use an Exadata…
  • How to rename a 500gb schema in 10 minutes – Richard Harrison, EON : Why can’t we have a rename user/schema command? Richard showed a quick way to use transportable tablespaces to rename a schema. Neat!
  • Oracle Big Data Appliance – What’s in the box? – Salih Oztop, Business AnalytiX : The title says it all really. I thought it was a really good introduction to the BDA. I’ve been to 1 hour talks on this subject that didn’t convey as much information as he managed to fit into 10 minutes. Also, a hint at a cool new feature about to be announced…
  • Installing RAC: Things to sort out with your systems and network admins – Patrick Hurley, Scale Abilities : Patrick is a cool guy and he upped his cool rating further by brandishing a light sabre as a pointer during his talk! His session was a list of gotchas he’s encountered while installing RAC. Some of them I’ve encountered myself. Some not. Good stuff.
  • Is the optimiser too smart now? – Martin Widlake, ORA600 : I could hear a voice, but I couldn’t see anyone over the podium. 🙂 The question was, has it got to a point where it is too complicated for normal folks and beginners to stand a chance at understanding it, or should we now be treating it like a black box? My own feeling is that 12c might be the turning point where I really have to say I don’t understand it any more. It feels a bit sad, but maybe it is inevitable…

I though the lightning talks worked really well. It felt like a whole conference packed into one hour. 🙂

The event was free, thanks to the sponsorship by those kind people at Red Gate. The Oracle Press teddy bears made another appearance, but I didn’t win one. 🙁

Big thanks to Mike for organising it and to all the speakers for doing a great job. The next event will be up on the website soon. Please show your support! These things live or die based on your participation…

Cheers

Tim…

Invoker Rights in Oracle Database 12c : Some more articles

I wrote about the Code Based Access Control (CBAC) stuff in Oracle Database 12c a while back.

I’ve recently “completed the set” by looking at the INHERIT PRIVILEGES and BEQUEATH CURRENT_USER stuff for PL/SQL code and views respectively.

It’s pretty cool, but I’m not sure how much of it I will see in the wild as it will require developers to do a bit more thinking, rather than doing what they’ve always done… 🙂

Cheers

Tim…

Oracle Linux and MySQL : Progress

A few months ago I wrote about some MySQL on Oracle Linux migrations we were working through. It’s been a long time coming, but last weekend was the go-live for this batch of migrations. So far so good! 🙂

Most of the elapsed time since my last post on this subject has been spent with the developers and users testing the migrations.

The process has taken a bit longer than some people would have liked. Rather than doing a quick and dirty upgrade, I’ve been pushing to get things done properly. Since I was the person who set up the infrastructure, I’ve been extremely anal about levels of privilege I’m granting. This has caused some minor rewrites of applications, which were essentially relying on admin privileges to perform some actions. Not any more! 🙂

I’m no MySQL guru, but I think what we have now is pretty darn decent, especially compared to where we started. I guess time will tell how bold a statement that is. 🙂

Onwards and upwards…

Cheers

Tim…

Enterprise Manager Cloud Control 12cR4 Production Upgrade

I’ve already written about the 12cR3 to 12cR4 upgrade here. I did a few run through’s at home to practice it and it all seemed good.

Setting The Scene

Just to set the scene, for our production environment we run Cloud Control in a VMware virtual machine, using Oracle Linux 6.5 as the guest OS. With that setup, we can use a simple installation (DB and OMS on the same VM) and use VMware to provide our failover, rather than having to worry about multiple OMS installations and any DB failover technology etc. If there’s one thing I’ve learned about Cloud Control, it’s Keep It Simple Stupid (KISS)! As far as our managed servers go, most of our databases and all our middle tier stuff runs on VMware and Oracle Linux too. We have a handful of things still hanging around on HP-UX and Solaris, which will hopefully be migrated soon…

Upgrade Attempt 1 : Non-Starter

Yesterday I started the upgrade of our production system. Pretty much straight out of the blocks I hit a road block. It didn’t like the agents running on our HP-UX servers. The upgrades of the HP-UX agents are so painful. Every time so far I’ve had to reinstall them. As a result, I didn’t bother to upgrade them last time and kept running with the previous version of the agents. The upgrade wouldn’t have anything to do with that, so I forgot about the Cloud Control upgrade and I spent yesterday attempting to upgrade the HP-UX agents to 12cR3, before I could attempt the 12cR4 Cloud Control upgrade.

As usual, the upgrade of the agents on HP-UX involved me uninstalling, removing all the targets, installing, discovering all the targets and setting up the backups etc. Not all of it is scripted yet, so it is an annoying and painful process. I’m not sure if other HP-UX users suffer this, but it seems pretty consistently bad for us. The sooner we get rid of these straggling HP-UX servers the better!

So this wasn’t so much a failure of the upgrade. It was really down to me being lazy and not bothering to upgrade some agents.

Fast forward to this morning and I was actually ready to start the upgrade. 🙂

Upgrade Attempt 2 : Success

With the 12cR3 agents in place on HP-UX, the upgrade ran past that step with no problems and on to the main body of the installation. The install and upgrade were textbook.

I’ve upgraded the agent on the cloud control server, but I’m not going to upgrade any of the other agents until I know things are working fine.

Happy days!

Cheers

Tim…