Проблема заключается в вашем запросе. Вы должны ограничить набор результатов.
Как уже упоминалось в DavidO, LIMIT - это решение.
my $sth = $dbh->prepare("SELECT whatever FROM wherever LIMIT 50");
$sth->execute;
my $row;
while (my @data = $sth->fetchrow_array) {
print "my $row(@row)";
sleep(1);
}
$sth->finish;
$dbh->disconnect;