Isso provavelmente se deve a uma diferença nas configurações de codificação de caracteres. Isso pode estar em vigor em alguns lugares. Eu aconselho você a fazer login nos dois servidores e fazer:
mysql> show variables like '%character%';
+--------------------------+-----------------------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | D:\Servers\MySQL\MySQL_5_1_36\share\charsets\ |
+--------------------------+-----------------------------------------------+
8 rows in set (0.00 sec)
Veja se você vê alguma diferença aí. Por exemplo, se o conjunto de caracteres de conexão padrão for diferente para o novo servidor, você poderá obter esses resultados.
Você também deve garantir as configurações de codificação de caracteres para as colunas:faça um
SHOW CREATE TABLE <table-name>
e verifique se os conjuntos de caracteres ainda são os mesmos no nível da colunamysql> EDITComo alternativa, como Martin apontou nos comentários, você pode estar lidando com um dump SQL codificado em uma codificação que você não previu. Aqui estão mais algumas informações sobre isso:http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html#option_mysqldump_default-character-set . Nesse caso, você pode tentar recodificar o arquivo de despejo usando uma ferramenta como iconv (http://www.gnu.org/software/libiconv/documentation/libiconv/iconv.1.html )