Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 01.03.2012, 12:29   #1
Андрей Аксенов
Senior Member
 
Регистрация: 12.04.2008
Адрес: Россия, Москва
Сообщений: 706
Отправить сообщение для Андрей Аксенов с помощью ICQ Отправить сообщение для Андрей Аксенов с помощью Skype™
По умолчанию

Цитата:
Сообщение от -=UncleByte=- Посмотреть сообщение
@Андрей, дело в том что конвертировать можно и средствами самого mysql прямо в том же phpMyAdmin, но надо хотя бы представлять что там на самом деле лежит, а то бывали случаи когда записи хранились в utf-8 вроде бы, но были в cp1251.
Это понятно, способов много... Для этого и нужно сначала создать резервную копию базы данных. Для меня проще всего так.
Хотя можно установить и на TYPO3 phpMyAdmin и глянуть, что там...
Установить в нем же нужное сопоставление для всей базы данных - utf8_general_ci, оно понадобиться и для вновь создаваемых таблиц и т. д.
Затем переконвертить поля/таблицы в неправильной кодировке...
Кстати, сталкивался с тем, что иногда связанные поля не могут быть сконвертированы поодиночке - нужно выделить оба связанных поля и одновременно их сконвертировать... тут и упомянутое мной расширение sfdbutf8 не помогает - все ручками...
Ну и обязательно, как уже говорил, проверку БД в install tool, заодно подгружаем заново все статические таблицы.
Тут уже недостающие таблицы пересоздаются самой TYPO3 в уже нужной кодировке... Что касается статических таблиц, то они тоже пересоздаются в нужной кодировке, бывали случаи, когда при регистрации в форме, при выборе страны (на родном языке) появлялись кракозябры... Пересоздание статических таблиц (статик инфо тейбл в данном случае) помогло...
Далее все зависит от конкретного случая... Возможно придется вмешаться и ручками подкорректировать записи содержимого в базе данных. Но это уже другая история...
Андрей Аксенов вне форума   Ответить с цитированием
Старый 01.03.2012, 12:37   #2
-=UncleByte=-
Senior Member
 
Регистрация: 14.04.2006
Сообщений: 1,159
Отправить сообщение для -=UncleByte=- с помощью ICQ Отправить сообщение для -=UncleByte=- с помощью Skype™
По умолчанию

@Андрей, в том и дело что там половина таблиц в cp1251 и половина в utf8 - неважно чем делать дамп, в нем все будет ровно так же и для решения этого вопроса нужно либо дамп делить на куски и конвертировать кусками, либо руками в текстовом редакторе, который позволяет менять на лету кодировку в части файла.
-=UncleByte=- вне форума   Ответить с цитированием
Старый 01.03.2012, 12:44   #3
Андрей Аксенов
Senior Member
 
Регистрация: 12.04.2008
Адрес: Россия, Москва
Сообщений: 706
Отправить сообщение для Андрей Аксенов с помощью ICQ Отправить сообщение для Андрей Аксенов с помощью Skype™
По умолчанию

Ну дамп - в любом случае текстовый файл... А уж чем с ним работать...
Проще отметить таблицы с кодировкой в cp1251 и еще раз отдельно их выгрузить, а уж в том же нотапде++ кодировку поменять нет проблем... Ну и загрузить их обратно...
Кстати, может в том же Sypex Dumper можно на лету это сделать? Я не пробовал, но как вариант...
Хотя у меня недавно с одним сайтом схожая проблема была... Увидел это по тому, как даже непичатный пробел не распознавался. Ну так вот, описанным мною способом все решилось без танцев с бубном...
Андрей Аксенов вне форума   Ответить с цитированием
Старый 01.03.2012, 12:57   #4
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Кстати еще один нюанс при апгрейде с TYPO3 4.1 - в этой версии и более ранних поля config/setup TS шаблонов (и возможно еще какие-то) были BLOB. А в более позних уже TEXT. В результате при экпорте в .sql BLOB поля выводились как BASE64-encoded строки, кодировка в них соответственно не изменялась при перекодировании дампа в utf8, а при импорте в utf8 таблицу в ней если попадался русский символ или что-то отличное от латиницы - все что шло дальше после такого символа просто отрезалось. Так что важно проверить что бы BLOB поля экспортировались как простой текст.
dmartynenko вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Апгрейд с 4.1 до 4.5 MAXIMUS1988 Установка 0 18.01.2012 23:28
UTF-8 в новой TYPO3 4.5 dmartynenko Общие вопросы 1 14.02.2011 15:55
Глюк 4.1 при выводе дерева в BE. Илья Общие вопросы 15 28.03.2007 17:59
TYPO3 4.1 Beta 1 RSS Bot Новости TYPO3 (на английском) 0 27.11.2006 22:59
TYPO3 4.1 Beta 1 RSS Bot Новости TYPO3 (на английском) 0 25.11.2006 20:09


Часовой пояс GMT +4, время: 17:47.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория