Я использую приложение rails с базой данных MySQL. Это веб-приложение, имеющее международную аудиторию. После нескольких дней работы я заметил, что все таблицы и сама база данных имеют latin1_sweedish_ci в качестве сортировки. Позже, в текстовых полях, я обнаружил, что mumble jumble вот так:
It’s educational and
Очевидно, это связано с неправильным набором символов. Если бы это был UTF-8, этого бы не случилось. Но как это произошло, можем ли мы восстановить/преобразовать эти поврежденные данные в utf?
Вы можете попробовать mysqldump DB, передать дамп через iconv, а затем перезагрузить.
Вы также можете попытаться преобразовать все столбцы в двоичные, а затем в UTF-8. Для получения дополнительной информации см. mysqlperformanceblog.com и dev.mysql.com.
вы также можете попробовать это... сначала возьмите резервную копию своей базы данных... Затем создайте один script, который будет извлекать записи один за другим и perfom utf8_decode, а затем снова сохраняет его в базе данных... но до этого change charchter установлен в utf8...