in reply to 17 Perl.exe processes

Here's the right answer (I think).

First off, in my most Clintonian voice I must bite my lip and say, "I feel your pain".

Having said that, I am going to guess that you are using Oracle 8.1.5... which is a crap release, I know because I have it too and I have experienced the same problem.

Now, do this:

1. Check all code to be sure that you are closing all cursors when you are done with them and that you are disconnecting your session when you are through.
2. Undef your statement handles when you are done.
3. Even if you have done all this, there are some garbage collection issues which sometimes prevent cursors from closing. The acid test is to select sql_text from v$open_cursor. My guess is that you will see open cursors. Kill the offending httpd process and you will see one less open cursor. You need to either rewrite the offending statements and/or write a script to detect when your httpd processes are hanging on to open cursors and kill the processes.

For now, I am just restarting httpd every 2 hours but I should do something a little smarter.