Restore MySQL DB with Unicode characters (Arabic and Kurdish) in .gz format

本小妞迷上赌 提交于 2019-12-28 19:18:23

问题


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 : بÙâزاÙÙÛÛâ


回答1:


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.



回答2:


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...



来源:https://stackoverflow.com/questions/17756002/restore-mysql-db-with-unicode-characters-arabic-and-kurdish-in-gz-format

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!