« RandomSupport.com DomainHOWTO: Fix B2Evolution EMail »

Windows Oracle Database Client Annoyances

07/16/07

Permalink 09:53:05 pm by guy, Categories: Software Development, Windows, Oracle

The Oracle database client annoys me. I’ve been waiting a long time to get this out. I’m already feeling a bit better just starting to type this.

When you write an application (for a Windows OS) shouldn’t it be an easy task to install the database libraries? Shouldn’t you just be able to include the libraries with your application install? You certainly shouldn’t have to install a huge separte client install just for the libraries, right?!? Hopefully someone out there will have some constructive ideas and tell me how I am wrong about this. Tell me why the Oracle client shouldn’t annoy me. Here are just 3 of the things that make it annoying and painful to deploy…

Follow up:

Update: it is now 2012 and Oracle has finally produced a good looking solution. It is still beta, but if you try their new Oracle.ManagedDataAccess.dll you can resolve most of my complaints. The dll isn’t tiny, it is around 6meg, but no install is required and you can stop dealing with Architecture (x86, x64) specific builds now. Converting from unmanaged Oracle.DataAccess.dll is almost trivial too! Hopefully a production version will be released soon.

#1 - Oracle Windows Client Deployment
Could they make this any more painful? I’m a developer with some sysadmin responsibilities and deploying an application that requires Oracle database connectivity in the Windows world is such a pain. There seems to be no effort on their part to provide a streamlined client install or, ideally, client libraries that can simply be copied and referenced by your application.

If the client install is indeed required (it is), how about providing an installer geared towards a thin install for application connectivity that provides support ODBC, OleDb, and .Net (Maybe Java too, but not for me) requirements? I can’t be the only one out there that finds their Oracle client install way, way, overkill! If you go to their web site and select downloads for 10gR2 this is what you get:

Download the Complete Files
10203_database_vista.zip (797,305,729 bytes)

Oracle Database 10g Companion CD Release 2 (10.2.0.3)
10203_companion_vista.zip (677,074,714 bytes)

Oracle Database 10g Client Release 2 (10.2.0.3)
10203_client_vista.zip (616,067,114 bytes)

Note that the small client download is 616meg!!!

They also offer the new “Instant Client” download which appears to be for Java, OCI, and ODBC. I don’t see support for OleDB or .Net, but even to get just ODBC is is 2 separate installs. First you install the basic client, and then the ODBC extension.

Then there is the ODAC for Windows. I haven’t tried it yet, but it looks like it is close to what I am looking for if I’m forced to do an install, but the latest version is like 216meg. You should be able to install the whole database in 216meg! Am I being unreasonable? We are talking client libraries only, no applications!

With your typical .Net application you should be able to deploy your entire application by simply copying the libraries into you application’s directory, but not with Oracle, you need the full install. It is deployment unfriendly!

I have the full client (including Enterprise Manager and SQL Plus, but without the database itself) installed on my computer at work. I just checked the properties on the Oracle directory: 463meg, 7,780 files, and 1,258 Folders!

Comparison Library installation:

  • MS Sql Server - 0KB install, included in OS and service packs, incredibly easy to use (not fair since MS owns the OS and DB, I know, but it makes things incredibly simple)
  • Oracle client - 216meg install to get ODBC and .Net libraries
  • MySQL - ODBC is a 2.3meg download and .Net connector is 814kb. I have never used it, but looks simple, like it should be! And open source! I’m pretty sure that the .Net libraries CAN be used by just copying them and referencing them in your applications (i.e. no installation).

By the way, has anyone managed to create an automated silent install of the basic Oracle client library components?

Enough on that one, but that is my primary gripe.

#2 TNS Names Files
Are there people who think these are a nice feature? How about a simple way to connect to an Oracle database without having your connection information needing to be in a text file? Maybe I am a simpleton or I’m weak from my use of MS SQL Server, but why can’t I just specify a host, database, username, and password in my OleDB connection string like other databases? Is Oracle too good for that? Too advanced?

Update: this is not true. You just have to know how. Set the “DataSource” property of your connection string to “servername/instancename". Works perfectly.

#3 SQL Plus Worksheet
This is really trivial and doesn’t really have anything to do with the client install, but I’ve never figured it out why when you run the SQL Plus Worksheet it opens two windows. The main GUI window opens and allows you to query the database and then a second big, empty, non-interactive cmd prompt / DOS box like window. What is up with that!?

Anyway…

These are just 3 of the annoyances I have with Oracle, perhaps I’ll name some more in the future. I know it is a great and Super-Powerful database, I just want simple options to access it through my applications on the client level.

I’m hoping that someone will tell me just how simple things are in the Oracle world and that I just haven’t figured it out. Unfortunately, I don’t think that is the case. If it is then Oracle isn’t doing a good job of getting the word out on how to use their products. If I am right, and these are annoying issues, why in the world doesn’t Oracle make an effort to at least give us options that make it simple to deploy client applications.

October 2017
Sun Mon Tue Wed Thu Fri Sat
 << <   > >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
I'm a generalist, at least if I'm honest. In my job I am primarily a developer, but also a sysadmin, and (as little as possible) technical support. I know a little about a lot of things, a lot about some things, and everything about nothing. Here I will post random learnings...

Search

XML Feeds

User tools

free blog tool