旧的WordPress数据库甚至更新的数据库的一个常见问题是,数据库表被设置为latin-1,但内容实际上被编码为UTF-8。如果您尝试导出为UTF-8,MySQL将尝试将(假定)拉丁语-1数据转换为UTF-8,从而产生双编码字符,因为数据已经是UTF-8。
解决方案是将表导出为拉丁语-1。由于MySQL认为它们已经是拉丁语-1,所以它将直接导出。
将字符集从“latin1”更改为“utf8”由于转储的数据在导出过程中没有转换,因此它实际上是UTF-8编码的数据。
将新表创建为UTF-8如果您的Create table命令位于SQL转储文件中,请将字符集从“latin1”更改为“utf8”。
正常导入数据。由于转储文件中有UTF-8编码的数据,转储文件中声明的字符集现在是UTF-8,并且要导入的表是UTF-8,因此一切都会顺利进行。