Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

problema de codificação de banco de dados? Aspas duplas e simples sendo exibidas com pontos de interrogação


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 )