in reply to How do I determine if my script is already running?

When you say cron, I assume you are running on UNIX. If you want to keep this process running, you may want to look into using init(8). You can add an entry to /etc/inittab that looks something like:

u1:1235:respawn:/path/to/script.pl

This will cause the process to restart automagically should it not be running. You'll have to define the proper behavior for the case where the database is unreachable. Using 'respawn' will start up a new process if the original dies.

Hope that helps...