Submitted by dave on Thu, 06/07/2012 - 12:16
While helping a developer at my company get up and running with some DBI/DBD stuff I came across the Open Source Strawberry Perl distribution for Windows. It is an all-in-one package of Perl interpreter and many common packages required to get productive. Hopefully gone are the days of struggling to find a DBD driver compiled for Windows... From the website:
Submitted by dave on Tue, 03/27/2012 - 23:48
Pointing a private database link at another database without knowing the password...
- SOURCEDBA source database which has a schema that owns a private database link
- TARGETDB1, the original target database for the link
- TARGETDB2, a clone of TARGET1 that was renamed to "TARGETDB2"
I have an application that I support that uses a pair of databases, one holds detail info and one holds summary info.
Submitted by dave on Tue, 03/27/2012 - 11:36
Modern Perl by Chromatic is a freely available Perl eBook. It is a good resource for folks already familiar with programming that want to get up to speed quickly on Perl conventions and syntax.
Previously I used to use a collection of OReilly books to cover this territory but have replaced with 1 copy of Modern Perl (well with the exception of the Cookbooks, you will pry them out of my cold dead hands).
Submitted by dave on Tue, 03/06/2012 - 00:51
If you have a database where querying against v$ Performance views is painful, consider gathering Fixed Object Stats.
Fixed objects are the 700+ X$ tables that feed a lot of these system and performance views.
Fixed Object Stats are _not_ gathered by the default stats gathering procedures. They are not gathered at all unless you run the proc to gather them. In this case Oracle relies heavily on Dynamic Sampling… but that isn’t really a substitute for really gathering stats.
Submitted by dave on Tue, 02/28/2012 - 00:06
Submitted by dave on Thu, 02/16/2012 - 23:57
Yes, the mention of Cartesian Joins usually makes a DBA's heart skip a beat. The cartesian joins caused by missing join conditions are definitely a pain to deal with - these are the types of joins that can "blow up" temp space and cause all types of alarms to go off.
I didn't find anything in Oracle's official 11g documentation on this particular join method but I did find plenty of articles about issues with it in their support DB. I have chased down a few of these in the past couple of weeks and here is what I found.
Submitted by dave on Tue, 02/14/2012 - 12:05
I came across this PL/SQL page today which has pointers to a lot of interesting stuff you can do with PL/SQL.
From the page:
"This library is a collection of various utility packages for PL/SQL, as well as links to useful libraries hosted and maintained elsewhere."
Submitted by dave on Tue, 01/17/2012 - 15:43
...well not yet...
An Infoworld article was released today describing an Oracle vulnerability. The SCN space can be exhausted via bugs or attackers exploiting bugs. Metalink doc: 1376995.1 [Bulletin : Information on the System Change Number (SCN) and how it is used in the Oracle Database] covers a technical description for what SCNs are used for.
You can use this query to find out how close you are to the SCN limit.
Submitted by dave on Tue, 01/10/2012 - 13:48
Here are two runs of the same SQL from different programs. The top is an automated process, the bottom is Toad. (SQL is the same, but SQL_ID is different because of white space issues):
So why is one finished in 7.2 minutes and one still at 4.7 hours and still counting up?
Submitted by dave on Mon, 12/05/2011 - 12:44
I normally get a lot of mileage out of Application Express interactive reports. Unfortunately there are some restrictions on the SELECT statements that can be used with them. Here is a demonstration of a technique I use when I want to add some interactivity to a plain old Apex report.
I will create a Select List dropdown that submits and refreshes the report data automagically. The value in the select list will be applied as a filter to the report when it refreshes.
1) Create the Select List
• Items -> New Item -> Select List
• Choose "Select List with Submit"