Вопрос

I have a MySQL backup file in .gz format that was created by the backup wizard in cPanel. When the restoration is done by the backup wizard, contents with Arabic and Kurdish characters do not show correctly, even though I changed the collation to different UTF-8 encoding in PhpMyadmin.

For example, the real data in DB is : كامپى زانكۆ and the data showed after the restoring become to this : بÙâزاÙÙÛÛâ

Это было полезно?

Решение

This is a fairly common problem caused by inconsistent encoding schemes when creating and exporting the database. Here is the simplest way to solve it:

  1. Import your backup file
  2. Export it again, but using latin1 encoding
  3. Manually edit the exported file, change all occurrences of latin1 to utf8.
  4. Import the edited file.

Другие советы

I added the lines

character-set-server=utf8
collation-server=utf8_general_ci

to the mysqld section of /etc/mysql/my.cnf on my new server, then exported the data using

mysqldump oldDB --default-character-set=latin1 -r dbCopy.sql

and imported it into the new DB using

mysql> SOURCE dbCopy.sql. Worked like a charm...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top