in reply to
Benchmarking A DB-Intensive Script
Using Devel::Dprof and dprofpp,
which are part of recent Perl distributions,
you should find out where your code is slow.
Regarding the database issues, DBI::Profile can
find which methods are taking too long (you can look
at Speeding up the DBI for suitable examples and tips).