If you’re not using hugepages, you’re doing it wrong!

Well, there’s been a bit of a delay in with my planned testing of dbVisit Replicate and Oracle GoldenGate for zero-downtime upgrades. So, I’ll be (hopefully) getting back to that within a couple of weeks.

Meanwhile, I recently ran across a discussion on the Oracle OTN Community forums, asking about performance and hugepages configuration, here in the Oracle Database – General Questions Forum.

I think my answer bears repeating, so, here is a slightly modified version:
Continue reading

Referencing LDAP for JDBC thin client connections….

Just a quick note, to mention something that I just recently discovered.  (Yes, this has been available since at least Oracle 10.1, but I wasn’t aware of it!)

When composing a JDBC thin client connect URL, we have been using something of the form:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOSTNAME=myhost.my.domain)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=mydb)))

This is fine, but if you have a mix of Oracle OCI clients and JDBC thin clients, and if the OCI clients are all configured to use an LDAP server for Net Service Name resolution, then, whenever you make any kind of reconfiguration, you need to update the LDAP server, and then still need to update the hardcoded connection information in the JDBC Thin URL.
Continue reading

MOUS 2013 Presentations

Just a quick note/announcement, that we had our annual Michigan Oracle Users Summit yesterday at the VisTaTech Center on the campus of Schoolcraft College, in Livonia, MI.  It was a good conference, and I think everyone who made it out, enjoyed their time there and saw some excellent presentations.

I did two presentations, Understanding and Interpreting Deadlocks and All About Indexes.  The presentations will be available at the MOUS website, but I also wanted to make them available here.  (See the links above.)

P.S.  I finally, just today, got my storage for my GoldenGate test boxes, so, I’ll be proceeding with that testing soon.  Stay tuned for my next blog post in that series, in a week or so.

(near)Zero Downtime Upgrades for Oracle 11g/12c — Introduction and Options

So, now that I have completed my series on  OpenLDAP for Oracle Net Service Name resolution, my next little adventure will be exploring the possibilities of zero downtime upgrades for Oracle 11gR2 and 12cR1.  This is an area that I don’t have a lot of experience with, so, I’ll be pretty much starting at ground zero.

Options

Oracle’s suggested solution is GoldenGate.  (Oracle also has a near-zero downtime upgrade ability using Logical Standby, but, my understanding is that there are some datatype limitations with that solution.)  So, my goal last month, in attending Oracle Openworld, was to learn about GoldenGate, and what it can do.  However, I also learned about another product, by a company called dbvisit, that claims to offer the same functionality in replication and (near)zero downtime upgrade abilities.

Continue reading

OpenLDAP – Using phpldapadmin to Maintain your LDAP Server

This is the final part of a multi-part blog post on using OpenLDAP for Net Service Name Resolution.  Part 1 can be found here.

Ok, now that you have installed and configured phpldapadmin, you’ll want to do some customization, that will facilitate using phpldapadmin specifically for maintaining Net Service Names.  Remember, phpldapadmin is a generic tool, that can be used to manage any LDAP server, with virtually any type of content.  At this point, you can use it to manage your LDAP server, but, I’ll provide you two new custom templates, for managing Net Service Names and Net Service Aliases.

Continue reading

OpenLDAP – phpldapadmin – Install and Configure

This is part 5 of a multi-part blog post on using OpenLDAP for Net Service Name Resolution.  Part 1 can be found here.

Day to Day Management

The tns2ldif program is great for converting a large number of Net Service Names into the LDIF format, for subsequent bulk loading into the LDAP server.  But, for day to day operation, where you may want to add or delete individual Net Service Names or modify an existing Net Service Name, hand editing LDIF files is probably not an optimal solution.  So, is there a GUI solution that may help with this type of day to day work?  There are a few free LDAP GUIs available.  The one I have chosen is phpldapadmin.

Continue reading

OpenLDAP – Care and Feeding of Your LDAP Server

This is part 4 of a multi-part blog post on using OpenLDAP for Net Service Name Resolution.  Part 1 can be found here.

Congratulations!

You should now have a correctly installed and fully configured LDAP server, that’s up to the task of doing Net Service Name resolution.  So, now you’ve come this far, you probably have a whole list of Net Service Names that you want to load into your LDAP server.  We’ve reviewed the LDIF format for Net Service Names, but, unless you have a very small number of Net Service Names, converting them from tnsnames.ora format to LDIF format could prove to be a very tedious task, indeed.  In my case, I had approximately 250 Net Service Names, that I needed to load.  So, I wrote a small C program, that I called tns2ldif, for this task.
Continue reading

OpenLDAP – Configuration for Net Service Name Resolution

This is part 3 of a multi-part blog post on using OpenLDAP for Net Service Name Resolution.  Part 1 can be found here.

Configuration for Net Service Name Resolution

Ok, now that you have an OpenLDAP server installed and configured (optionally with master/slave replication configured), it’s time to “teach” it how to handle Oracle Net Service Names.  The first thing you’ll want to do is  create a directory under /etc/openldap, thus:

mkdir /etc/openldap/oidschema

Continue reading

Using OpenLDAP for Net Service Name Resolution

OID is Oracle’s official solution

Several years ago, I was struggling with a solution to managing hundreds of net service names across several dozen database servers and many hundreds of Oracle client machines.  At the time, Oracle had just discontinued ONAMES (which I never had an opportunity to use), and the “official” Oracle solution was the OIM/OID software suite.  Well, after weeks of struggling with OID, I decided it was an unwieldy beast, and was just plain painful to set up.  (I don’t think I ever did get it completely working.)  Just as things were looking down, I spotted a bit of sunlight, through the fog.
Continue reading