форум общения русскоязычных пользователей CMS Текстпаттерн
Вы не зашли.
Пару месяцев назад сайт был перенесен на другой сервер.
Все было хорошо, однако заметил такую штуку - при просмотре бэкапа русский текст отображается не по русски Как в таблицах TXP, так и в таблицах форума PunBB (который установлен в этой же базе). На сайте же все отлично выводит кириллицей.
Бэкап делался как с помощью SypexDumper (версии 1.0.8 и 2.0.6b), так и с стандартным экспортом PMA в различных форматах (sql, gzip).
Насколько я понимаю, проблема именно в БД на сервере, а не в TXP.
В кодировках я слабо шарю, поэтому вопрос - как можно ли вернуть кодировку содержимого в базе в нормальный вид (как до переноса с сервера на сервер), при этом не похерив данные?
Некоторая инфа из диагностики TXP 420:
PHP: 5.2.6-1+lenny4
MySQL: 5.0.51a-24+lenny2+spu1
Charset (default/config): latin1/latin1
character_set_client: latin1
character_set_connection: latin1
character_set_database: utf8
character_set_filesystem: binary
character_set_results: latin1
character_set_server: latin1
character_set_system: utf8
character_sets_dir: /usr/share/mysql/charsets/
18 Tables: textpattern is utf8, txp_category is utf8, txp_css is utf8, txp_discuss is utf8, txp_discuss_ipban is utf8, txp_discuss_nonce is utf8, txp_file is utf8, txp_form is utf8, txp_hak_tinymce is utf8, txp_image is utf8, txp_lang is utf8, txp_link is utf8, txp_log is utf8, txp_page is utf8, txp_plugin is utf8, txp_prefs is utf8, txp_section is utf8, txp_users is utf8
Инфа из phpmyadmin:
localhost
* Версия сервера: 5.0.51a-24+lenny2+spu1
* Версия протокола: 10
* Сервер: Localhost via UNIX socket
* Пользователь: root@localhost
* MySQL-кодировка: UTF-8 Unicode (utf8)
* Сопоставление соединения с MySQL: utf8_unicode_ci
Базы данных
information_schema utf8_general_ci
mysql latin1_swedish_ci
*** utf8_unicode_ci
Всего: 3 latin1_swedish_ci
Инфа при бэкапе Сайпексом:
Подключение к БД `***`.
Создание файла с резервной копией БД:
- ***_2010-03-18_14-28.sql.gz
------------------------------------------------------------
Установлена кодировка соединения `utf8`.
Обработка таблицы ...
В дампе во всех таблицах есть строчки типа
ENGINE=MyISAM /*!40101 DEFAULT CHARSET=utf8 */ /*!40101 COLLATE=utf8_unicode_ci */;
ENGINE=MyISAM AUTO_INCREMENT=255 /*!40101 DEFAULT CHARSET=utf8 */ /*!40101 COLLATE=utf8_unicode_ci */;
Неактивен
UP!
Спецы по кодировкам, подскажите плиз!
Неактивен
Очень странно - SypexDumper у меня отработал на отлично во всех сложных случаях.
Попробуйте перед дампом везде где только можно поставить utf8_general_ci - авось поможет...
Неактивен
В связи с несколькими переносами сайта в БД была беда.
Решилось все с использованием Sypex Dumper 2.0.6 следующим путем:
1. экспорт с кодировкой latin1
2. импорт в cp1251 с коррекцией кодировки
3. экспорт в utf8
4. импорт в utf8
В четвертом шаге пробовал импорт с коррекцией, но вылазили ошибки на некоторых таблицах...
Разрабочики SD поправили этот "глючек"
PS - фразу "в БД была беда" можно использовать как скороговорку )
Неактивен
Я всегда знал, что sypex dumper - Вещь!
Неактивен
Поддерживаю!
Главное знать, как этой вещью пользоваться!
Неактивен
есть еще полезная вещь - iconv
когда-то с ее помощью восстанавливал несколько изувеченных дампов, довольно удобно.
хотя у каждого свое понятие "удобно"
есть ее порт под винду, брать тут:
ftp://ftp.zlatkovic.com/libxml
Неактивен