Topic: Good, Free, Portable Oracle Client?  (Read 9594 times)

0 Members and 1 Guest are viewing this topic.

Offline Bonk

  • Commodore
  • *
  • Posts: 13298
  • You don't have to live like a refugee.
Good, Free, Portable Oracle Client?
« on: February 09, 2010, 03:14:29 pm »
Is there such a thing? (portable being the key feature here)

So far I've gotten MyOra to work (but it was a time limited demo and had some dubious behaviour).

I suppose I could just use the instantclient at the command line? But it requires system environment variables be set... not so portable...

Currently I'm working on setting up DbVisualiser and an Oracle jdbc driver as a solution, but the oracle jdbc drivers are a mess.

So, does anybody know of a good, free and portable Oracle client?

Offline Bonk

  • Commodore
  • *
  • Posts: 13298
  • You don't have to live like a refugee.
Re: Good, Free, Portable Oracle Client?
« Reply #1 on: February 09, 2010, 05:53:59 pm »
I finally got DbVisualizer to run portably. I've yet to test it, but I expect it will suffice.

Here's the tricks (for my portable USB stick setup - portableapps.com style):

Install Java Portable to the USB drive:
http://portableapps.com/apps/utilities/java_portable
rename \PortableApps\CommonFiles\Java -> \PortableApps\CommonFiles\jre (for compatibility with the oracle java clients)

Get the "Windows (zip archive)" download of DbVisualizer:
http://www.dbvis.com/products/dbvis/download/
Unzip and copy to \PortableApps\DbVisualizer on the USB drive.

Download the Oracle jdbc drivers:
http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html
(ojdbc6.jar, orai18n.jar)
Copy them to \PortableApps\DbVisualizer\jdbc\oracle on the USB drive. (create the oracle folder)

And here's the impossible to find part of how to get DbVisualizer (install4j) to use the JVM on the USB drive:
edit \PortableApps\DbVisualizer\dbvis.vmoptions like so:
Code: [Select]
-Dsys.jvmHome=../../PortableApps/CommonFiles/jre
-Xmx256m
-Ddbvis.prefsdir=MySettings

(note the blank last line - must be present)

Also, edit \PortableApps\DbVisualizer\.install4j\pref_jre.cfg (create the file) like so:
Code: [Select]
../../../PortableApps/CommonFiles/jre
(one line - that's it)

Then run \PortableApps\DbVisualizer\dbvis.exe, cancel the connection wizard, allow the drivers to load, then run the connection wizard (tools menu) and specify the "Oracle Thin" driver and enter your connection details.

Once complete your connection url should look like so:
Code: [Select]
jdbc:oracle:thin:@<server>:<port1521>:<sid>
(for the oracle simple sid connection type)

Voila. Easy, right? ;) I shall edit this post to report on its performance once tested.

edit1: I tested the install connecting to my local MySQL server and after a few hiccups it seemed to run fine.  :)
« Last Edit: February 15, 2010, 06:23:46 pm by Bonk »

Offline Bonk

  • Commodore
  • *
  • Posts: 13298
  • You don't have to live like a refugee.
Re: Good, Free, Portable Oracle Client?
« Reply #2 on: February 15, 2010, 06:15:04 pm »
http://www.oracle.com/technology/products/database/sql_developer/index.html

well duh! :smackhead:

I got it to run portably (sort of) by editing the \PortableApps\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf SetJavaHome line like so:
Code: [Select]
SetJavaHome ../../../../PortableApps/CommonFiles...but the jre there must be renamed from "Java" to "jre" or the oracle apps can't find it.

And the "sort of" part comes in where I can't get it to store the user files on the flash drive. I can live with that I think.

I'd still like a nice tidy portable command line oracle client though. I still have not had any luck getting the "instantclient" to work portably  yet.

Offline Bonk

  • Commodore
  • *
  • Posts: 13298
  • You don't have to live like a refugee.
Re: Good, Free, Portable Oracle Client?
« Reply #3 on: February 16, 2010, 03:23:38 pm »
And today I discovered the goodness that is OO4O8)

Which since it is present in the 8i client installed on the machines I'm working from allows me to query oracle dbs from Excel VBA without using ODBC. Sweet.

And I figured out how to do a multi-table crosstab query in Oracle(8i/9i)! I am beginning to see why Oracle fans are like Apple fans. The product is good, but coming from a MySQL background I miss some of its ease of use.

My SQL skills continue to evolve. I just wish that there was a standard. It would be nice to only have to know one "SQL", but MySQL does it different from Oracle who does it different from Postgre who does it different from Sybase who does it different from MS... Arg!

We need a SSQL (Standard Structured Query Language). There probably is and nobody adheres to it in order to add features and lock in users.

Re: DbVisualizer vs Sqldeveloper - I still like Dbvisualizer better for its resultset export capabilities that Sqldeveloper does not seem to have (I can understand the rationale if so), but I have not explored the modeling features of Sqldeveloper yet. Of course Sqldeveloper more naturally browses an oracle db, but DbVisualizer handles the data better.
« Last Edit: February 16, 2010, 04:05:20 pm by Bonk »