such problems appear because of double conversion
I had the same problem.
in local host i had denver which had a connection to database in windows 1252
so every time I upload sql dump to remote server I first reconvert it from windows1252 to utf-8
in remote server i have collation set to UTF-8
everything works fine
here is the reconversion script
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello!</title>
</head>
<body>
<?php
$input = $_GET['file'];
print_r('working with'.$input.'<br/><br/>');
//$char='z:/charset.txt';
if (file_exists($input)) {$text=file_get_contents($input);
error_reporting(1);
$text=mb_convert_encoding($text,"windows-1252","UTF-8");
file_put_contents($input.'.sql',$text);
}
?>
</body>
</html>
supply it original sql and it will return you converted
move.php?file=z:\modx_2007-07-30_23-21.sql
returns z:\modx_2007-07-30_23-21.sql.sql
first check