Назад | Перейти на главную страницу

Акценты неправильно указаны в дампе MySQL

Я использую MySQL 5.1.58 в Debian Sqeeze и пытаюсь восстановить дамп базы данных. Как только он восстановлен, я заметил, что все акцентированные символы стали другими символами как cha или è: совершенно разные.

Посмотрев на дамп, я увидел, что проблема не в импорте, а в экспорте, потому что в дампе были странные символы.

Я экспортировал этот дамп из другой установки MySQL (5.5) на ArchLinux. Я также пробовал использовать аргумент --default-character-set = 8tf8 в mysqldump, но это не сработало.

Заранее спасибо.

Это обычная проблема с mysqldump. Вместо того, чтобы использовать utf8 в качестве кодировки по умолчанию используйте latin1. Также вы можете использовать -N (в котором будет указано SET NAMES), так что закодированный текст не будет повторно закодирован mysql. То есть:

mysqldump -u username -p --default-character-set=latin1 -N database > backup.sql
mysql -u username -p --default-character-set=latin1 database < backup.sql

(источник)