July 2nd, 2007

Lord Yupa

Posting via jabber

Hrm. I thought I tried this before and it worked, but I appear to be having trouble getting a post to go through from jabber. Every time I try, LJ Bot (Frank) is complaining about an error.

Frog Wizard

Oracle + PostgreSQL + PHP == huge pain

This just boggles the mind. This should absolutely not be this difficult, complicated, or frustrating.

At work, I need a web server (RHEL4) with PHP installed, along with the support libraries for PostgreSQL and Oracle. With the stock RPMs for PHP, adding PostgreSQL support is a piece of cake, you just install the PostgresSQL client libraries and php-pgsql.

So then I go to add Oracle support. I download the Oracle instantclient libraries (we're not running a database on this box, just connecting to an existing one), and figure there's probably a php-oracle or php-oci8 RPM from Oracle to add the PHP glue, right? Wrong. All of the documentation from Oracle describes how to take your RHEL4 box, download Apache, from source, download PHP, from source, and then recompile both.

What the hell? I'm going to have to duplicate this on a dozen machines, and then maintain them. In this day and age of software management, why in the hell am I supposed to recompile major parts of the system from source? And for one little oci8.so? Is this a joke?

So then I find Zend Core, which advertises it's "Universal Database Support", and built-in Oracle module. Wow! Cool! That'll solve this. . . assuming I don't mind using an alternately supplied install of PHP that will no longer be supported with security fixes from my OS vendor, nor do I have any kind of upgrade roadmap for it. But at least I have Oracle and Postgres support, right? Well, erm, no. Actually, the "Universal Database Support" just means that it supports the big guys with money, like Oracle, IBM DB2, and SQL Server. Oh, and MySQL. Wait, what's the obvious exclusion? Where's PostgreSQL? And Zend Core is a binary install, so I can't recompile it to add PostgreSQL support, even if I wanted to?

I went through some crap like this back when I was trying to get Oracle support compiled for Perl a year or two ago, though I'd forgotten how annoying it is. It honestly makes me wonder how in the hell Oracle ever managed to convince anyone to develop against them. This is just asinine.

At this point, I'm really annoyed at Oracle for not offering a php-oci8 RPM from their freakin' "PHP for Oracle" portal page, and at Zend for making it really hard to add any additional extensions that they don't feel you need.