Maybe you could also "poll" the db in some event loop with a simple
query ("select sysdate from dual;"). It is possible that you would need
to fork to do that cleanly (with some synchronization between father/child). Really the DBD should give something.