У меня стандартная проблема с кодировкой импорта MySQL, но я не могу ее решить.
У моего клиента запущена установка WordPress на некоторое время. Я' Вы скопировали базу данных в файл и импортировали ее локально. На полученных страницах разбросано символов.
Я проверил свойства базы данных с обеих сторон: production: show create database wordpress;
CREATE DATABASE `wordpress` /*!40100 DEFAULT CHARACTER SET latin1 */
local: show create database wordpress;
CREATE DATABASE `wordpress` /*!40100 DEFAULT CHARACTER SET latin1 */
production: show create table wp_posts;
CREATE TABLE `wp_posts` (
`ID` bigint(20) unsigned NOT NULL auto_increment,
...
KEY `post_date_gmt` (`post_date_gmt`)
) ENGINE=MyISAM AUTO_INCREMENT=7932 DEFAULT CHARSET=utf8
local: show create table wp_posts;
CREATE TABLE `wp_posts` (
`ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
...
KEY `post_date_gmt` (`post_date_gmt`)
) ENGINE=MyISAM AUTO_INCREMENT=7918 DEFAULT CHARSET=utf8
Я часами читал форумы о том, как раздавить , но я ничего не могу заставить работать. 99% ответов говорят о совпадении набора символов между базами данных. Я думаю, что должно сработать, если следующее:
mysqldump --opt --compress --default-character-set=latin1 -uusername -ppassword wordpress | ssh username@anotherserver.net mysql --default-character-set=latin1 -uusername -ppassword wordpress
Я также сделал это, используя набор символов utf8. По-прежнему с символами
Я попытался изменить дамп SQL напрямую, указав utf8 или latin1 в строке «SET names UTF8». По-прежнему с символами .
Странные симптомы
Я бы ожидал, что эти символы появятся вместо специальных символов в контенте, например ñ или ö , но я' я видел это там, где обычно было бы просто пространство. Я также видел его вместо апострофов (, но не всех апострофов ), двойных кавычек и символов товарных знаков.
Знак встречается довольно редко. Они появляются в среднем от трех до четырех раз на странице.
Я не вижу никаких знаков при просмотре базы данных через Sequel Pro (локально или в реальном времени). Я не вижу никаких символов в SQL при просмотре через Textmate.
Что мне не хватает?
РЕДАКТИРОВАТЬ
Дополнительная информация:
Я попытался определить, что, по мнению живой базы данных, кодировка есть. Я запустил показать статус таблицы
, и мне кажется, что сопоставления представляют собой смесь utf8_general_ci,
utf8_bin и
latin1_swedish_ci`. Чем они отличаются? Имеет ли это значение?
Я также написал: показать такие переменные, как "
Проблема в том, что вы можете быстро сохранить и быстро загрузить, а это означает, что они могут продолжать перезагружать, чтобы повторно рандомизировать, пока они не получат то, что хотят. Есть ли способ получить текущее начальное значение моего объекта
Random
и, возможно, вернуться к той же точке при загрузке, чтобы они не могли злоупотребить рандомизацией?