I use perl -C (or sets the shell environment variabel PERL_UNICODE=""), and then you do not need any utf8 specific parameter in the code unless the column (or table) names are non-ascii. If they are, mysql_enable_utf8 => 1 have to be set.
$dbh = DBI->connect($dsn, $username, $password, {mysql_enable_utf8 =>
+1}) || die "Could not connect to $database: $DBI::errstr";
$sth->execute || die "Could not execute statement: ".$sth->errstr."\n"
+;
$sth = $dbh->prepare("select foo from bar where id = '3064'") || die "
+Could not prepare statement: ".$dbh->errstr."\n";
my $string = $sth->fetchrow_array;
print $string . "\n";
Will print utf8 to STDOUT.