Экспорт базы данных latin1 и импорт как utf8 / преобразование в utf8 - PullRequest
0 голосов
/ 26 сентября 2019

Я работаю на веб-сайте, который использует старую базу данных и работает на внешнем сервере MySQL 4.1 (сервер A).База данных использует параметры сортировки latin1_swedish_ci, как и таблицы и столбцы.Существует новый сервер B, который запускает MySQL 5 для замены сервера A. Кодировка должна быть utf8_unicode_ci.

  1. Я экспортирую БД на сервер A: mysqldump -u root -p --opt --quote-names --skip-set-charset --default-character-set=latin1 db_a -r db_a.sql

  2. Передача db_a.sql через scp с сервера A на сервер B

  3. Заменить latin1 на utf-8 sed -e 's/CHARSET\=latin1/CHARSET\=utf8\ COLLATE\=utf8_general_ci/g' db_a.sql > db_a2.sql

  4. Конвертировать файл в utf-8 iconv -f latin1 -t utf8 db_a2.sql > db_a3.sql

  5. Импорт db_a3.sql

В phpmyadmin все печатается правильно.Но новое клиентское приложение показывает артефакты в текстовых столбцах.

Я безуспешно пробовал разные варианты описанных выше шагов.Включая импорт как latin1 и используя команду преобразования mysql.Кто-нибудь знает решение моей проблемы?

...