Search

Top 60 Oracle Blogs

Recent comments

November 2015

AIOUG Sangam15 : Day 1

I was up at about 04:00 on Saturday and waiting for breakfast to open at 06:30. Pretty much as soon as I ate something I felt really tired again. That after a day of sleeping… :)

I headed on down to the conference and instantly saw a bunch of friendly faces, including lots of people I had met on the OTN Yathra 2014 Tour.

After the keynotes, I got to have a quick chat about User Groups with Mary Lou Dopart from Oracle, then it was off to my first session about database consolidation.

The power of combining API's (1+1 > 2)

Integrating plsql with different web applications, is extending the functionality of the database beyond just data management. But it is when we combine these API integrations, that we can really see the benefit of them. In this entry I will show how integrating just two different API's, we can create an easy monitoring solution, that can rival more expensive traditional choices.

What I will do, is I will combine the Airbrake API and the Pagerduty API, to not only track errors, but also implement a monitoring solution that can alert my DBA that something is wrong. I will show how we can use those API's to setup team based alerting and reporting on errors, and hint on how you could further imporve or extend the usage of this.

Docker Data Containers

10921784526_e02cfdd9ab_z

photo by  www.GlynLowe.com

CLOBS, from 11g to 12c

If you are a regular user of LOB’s in the database, take care when you switch from 11g to 12c.  Notice the subtle difference:

In 11g, you are permitted to, and recommended to, use SECUREFILE lobs, but they are not the default


SQL> select name, value
  2  from v$parameter
  3  where  name = 'db_securefile';

NAME                                     VALUE
---------------------------------------- ---------------
db_securefile                            PERMITTED

In12c, SECUREFILE lobs will be the default.

AIOUG Sangam15 : The Journey Begins

The day started pretty early. I was packing at 00:00 and the alarm went off at 05:00. Nothing like last minute packing to focus the mind. :)

The taxi to the airport was good. The driver was interesting, speaking to me about his visits to India and Pakistan. It certainly helps pass the time when the driver is chatty.

howto: github – talks branch

A couple of months ago I did a presentation and decided to put the files up in github (https://github.com/karlarao/conference_eco2015) just because I wanted to move away from dropbox for my scripts and resources. Well, that was very convenient because the audience can just download the master zip file and that’s it! But then I figured I don’t want to have the next presentation on another repo and it would look pretty messy on my git account. Ultimately I’d like all the presentations to be on one repo and only separated by folders but then by default if you just put it that way then the “download zip” will download all of the conference folders.

Lightweight application performance monitoring

Monitoring application performance, is always difficult. Sometimes you want to monitor every aspect (with a minor latency impact) and sometimes you just want to monitor the basics. Like counting how many times a specific business process was called, or measuring how long it took. You also want it to be lightweight, and you want it to be really simple. As in really really simple.

OOUG RAC day presentation files and scripts

Thanks for coming to my presentations in RAC day at Dublin, Ohio. Please find the presentation files below. Hopefully, I will get video files and upload that here too.

OOUG presentation files and scripts

md5 checksum of the zip file is:

$md5sum ooug_2015_pdf.zip
df8bdcbc02926e5bbd721514b473bf16  ooug_2015_pdf.zip

Oracle Midlands : Event #12

Just a quick reminder, Oracle Midlands Event #12 is just around the corner.

Update: The first talk is now “Why use PL/SQL?” by Bryn Llewellyn.

This is the day after I get back from India, right after my first day back at work. It’s going to be really hard to drag myself there, but I know it will be worth it!

Cheers

Tim…

 

 

 

You dont need that sequence number

I’ve lost track of the number of times I see this sequence (no pun intended) of actions in code:


SELECT my_sequence.nextval INTO :some_variable FROM dual;
 
INSERT INTO my_table VALUES (:some_variable, ....);

My question is always “Why?” What was it that made you so desperate in need of that sequence value that you needed it before you inserted it ? It is simply, easier, and more efficient just to get it back from the insert statement itself.


INSERT INTO MY_TABLE (seq_col, ...)
VALUES (my_sequence.nextval, ...)
RETURNING seq_col INTO :some_variable;

And with 12c, sequences can now be nominated as part of the DEFAULT value for a column, so you don’t need to refer to it at all…and you STILL can have the number