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…

Swimming Progress

While I was at BGOUG I went for swim each morning before the conference. That got me to thinking, perhaps I should start swimming again…

It’s been 4 weeks since I got back from the conference and I’ve been swimming very morning. It was a bit of a struggle at first. I think it took me 2-3 days to work up to a mile (1600M – about 9M short of a real mile). Since then I’ve been doing a mile each day and it’s going pretty well.

I’m pretty much an upper body swimmer it the moment. I kick my legs just enough to keep them from sinking, but don’t really generate any forward thrust with them. At this point I’m concentrating on my upper body form. When I think about it, my form is pretty good. When I get distracted, like when I am having to pass people, it breaks down a little. I guess you could say I am in state of “concious competence“. Over the next few weeks this should set in a bit and I can start working on some other stuff. It’s pointless to care too  much about speed at this point because if my form breaks down I end up having a faster arm turnover, but use more effort and actually swim slower. The mantra is form, form, form!

Breathing is surprisingly good. I spent years as a left side breather (every 4th stroke). During my last bout of swimming (2003-2008) I forced myself to switch to bilateral breathing, but still felt the left side was more natural. Having had a 6 year break, I’ve come back and both sides feel about the same. If anything, I would say my right side technique is slightly better than my left. Occasionally I will throw in a length of left-only or right-only (every 4th stroke) breathing for the hell of it, but at the moment every 3rd stroke is about the best option for me. As I get fitter I will start playing with things like every 5th stroke and lengths of no breathing just to add a bit of variety.

Turns are generally going pretty well. Most of the time I’m fine. About 1 in 20 I judge the distance wrong and end up having a really flimsy push off. I’m sure my judgement will improve over time.

At this point I’m taking about 33 minutes to complete a mile. The world record for 1500M short course (25M pool) is 14:10. My first goal is to get my 1600M time down to double the 1500M world record. Taking 5 minutes off my time seems like quite a big challenge, but I’m sure as I bring my legs into play and my technique improves my speed will increase significantly.

As I get more into the swing of things I will probably incorporate a bit of interval training, like a sprint length, followed by 2-3 at a more sedate pace. That should improve my fitness quite a lot and hopefully improve my speed.

For a bit of fun I’ve added a couple of lengths of butterfly after I finish my main swim. I used to be quite good at butterfly, but at the moment I’m guessing the life guards think I’m having a fit. It would be nice to be able to bang out a few lengths of that and not feel like I was dying. 🙂

I don’t do breaststroke any more, as it’s not good for my hips. Doing backstroke in a pool with other people in the lane sucks, so I can’t be bothered with that. Maybe on days when the pool is quieter I will work on it a bit, but for now the main focus is crawl.

Cheers

Tim…

PS. I reserve the right to get bored, give up and eat cake instead at any time… 🙂

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…