2009-12-18 1 views
2

У меня возникли проблемы с переносом базы данных utf8 на другой сервер ... Каждая таблица источников и получателей имеет "DEFAULT CHARSET=utf8".Перемещение базы данных MySQL UTF8

Я использую mysqldump для дампа данных и mysql < file.sql для импорта, но когда в исходной таблице есть «España», в пункте назначения я получаю «Espaà ± a».

Я прочитал несколько руководств, я использовал --default-character-set=latin1 для экспорта и импорта, но проблема остается. Я также попробовал --default-character-set=utf8 для импорта, но в результате получилось: «Espa», данные усекаются до первого появления многобайтового символа.

Мне нужна помощь!

Спасибо заранее

ответ

0

Что такое collation каждой таблицы? Мне кажется, что вторая таблица по-прежнему кодируется ISO-8859-1 или аналогичной.

Плюс, какой инструмент вы используете для просмотра данных назначения? Вы уверены, что соединение, которое использует этот инструмент, также является UTF-8?

+0

Вот SHOW CREATE TABLE код: CREATE TABLE 'Country' ( ' id' INT (10) без знака NOT NULL AUTO_INCREMENT, 'country' VARCHAR (255) NOT NULL, PRIMARY KEY (' id') ) ENGINE = MyISAM DEFAULT CHARSET = utf8 Как получить сортировку? – Dario

+0

Я использую --default-character-set = utf8 для импорта данных с использованием mysql <файл – Dario

+0

Попробуйте DESCRIBE. - –

1

попробовать

iconv --from-code=ISO-8859-1 --to-code=UTF-8 ./file >file.utf8 
mysql --default-charset=utf8 < file.utf8 

Если он не работает я советую вам импортировать данные затем преобразовать его

ALTER TABLE tbl_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; 

надеюсь, что это поможет

3

Это очень важно, чтобы убедиться, что клиент установлен в UTF8. Смутно, это не то же самое, что настройка базы данных на UTF8. Откройте /etc/my.cnf и убедитесь, что у вас есть default-character-set = utf8 в [mysql] не только под [mysqld]

Теперь вы должны иметь возможность отправлять дампы UTF8 непосредственно в клиент mysql. Я также рекомендую использовать параметр -hex-blob в команде mysqldump, поскольку mysqldump не идеален.

 Смежные вопросы

  • Нет связанных вопросов^_^