форум общения русскоязычных пользователей CMS Текстпаттерн
Вы не зашли.
Страниц: 1
Прежде чем вы отправите меня в поиск или в эти темы (http://textpattern.ru/forum/viewtopic.p … 4111#p4111 и http://textpattern.ru/forum/viewtopic.php?id=208) хочу сказать - я прочитал на форуме все что мог найти на тему сабжа. Однако или я тупица, или просто плохо искал, но я так и не нашел пошаговую инструкцию по переносу проекта с локального компьютера на хостинг
Поэтому не бейте меня больно, но позвольте помучать вас на эту тему.
Как я понимаю, основная проблема переноса, это кодировки и разные версии mysql на локальном компе и на хостинге.
В моем случае имеется следующее.
Локально:
MySQL: 4.1.8-max
Charset (default/config): latin1/utf8
character_set_client: utf8
character_set_connection: utf8
character_set_database: cp1251
character_set_results: utf8
character_set_server: cp1251
character_set_system: utf8
Это данные выданные текстпаттерном при диагностике. Сам текстпаттерн бегает под денвером (но не последней и кажется даже не предпоследней версии. Точно не помню, кажется какая-то версия либо от 2005 года, либо от начала 2006).
На моем хостинге стоит MySQL: 3.23.59 с cp1251.
На текущем сайте используется самописный движок, + форум. Провайдером выдается одна база (дополнительные за доплату). Поэтому мне надо чтобы и база форума осталась, и заполненная на локальном компе база текстпаттерна туда благополучно встала.
Как я планировал делать переход.
Залить папку текстпаттерна на сайт. Дамп локальной базы залить в существующую на хостинге. Подправить config.php, удалить старый index.php от моего движка и залить на его место текстпаттерновский.
Но почитав форум я понял, что могут возникнуть проблемы с экспортом БД. Как я вижу люди здесь как правило сталкиваются с проблемой перехода с старой версии мускула на новую. У меня же ситуация иная, и мне надо с новой версии перенести все на старую.
Как это все правильно сделать? Можно ли переносить сайт так, как я задумал или же это надо делать как-то по другому?
Вначале я хотел просто установить с нуля текстпаттерн на сайт, а потом уже залить свой дизайн и базу... но дело в том, что сайт все время в работе, и люди там постоянно заходят. Очень не хотелось бы, чтобы кто-то из них ну скажем так совершенно случайно, успел раньше меня сделать сетап текстпаттерна со своими админскими данными Или я зря беспокоюсь?
В общем - помогите люди добрые кто чем может
P.S. Да и еще. У меня на хостинге нет phpmyadmin, и для импорта/экспорта базы я под виндой пользую программу MSQLFront. Так что если кто-то вдруг будет столь добр что расскажет, где какие галочки надо нажать в пхпмайадмине чтобы нормально перенести базу, то лучше наверное просто сказать, что надо сделать, а я уже там погляжу в настройках как это называется в программе которой пользуюсь я
Неактивен
Чем могу:
http://textpattern.ru/forum/viewtopic.php?id=899
Вообще, я бы на вашем месте просто попробовал бы, и посмотрел, что получится. ТП нормально живет, даже если в базе глобально стоит виндовая кодировка, а случайный юзер если что и просетапит, то вы с доступом на хостинг, все в два счета пересетапите обратно.
Неактивен
glebotr написал:
Чем могу:
http://textpattern.ru/forum/viewtopic.php?id=899
Вообще, я бы на вашем месте просто попробовал бы, и посмотрел, что получится. ТП нормально живет, даже если в базе глобально стоит виндовая кодировка, а случайный юзер если что и просетапит, то вы с доступом на хостинг, все в два счета пересетапите обратно.
За ссылку спасибо, правда там ситуация попроще, с хостинга поставить на локаль. А на локале можно играться как угодно. А вот эксперементировать на живом сайте в сети как-то неохота.
Насчет попробовать.... Попробовать поставить ТхР с нуля на хостинге, просетапить, а потом залить свою базу и дизайн? Гм... но в таком случае все равно может возникнуть проблема с кодировками и downgrade mysql Или нет?
Кстати, а что и где после экспорта своей базы в базу хостера, надо будет править в настройках TxP? Или при экспорте базы ничего првить не надо?
Отредактированно Unseen (14-11-2006 14:29:09)
Неактивен
Люди, выручайте, никак не получается перекинуть базу Все время ошибки (( Мне надо с старшей версии базы в utf-8, перенести данные в младшую и в cp1251. Неужели никто не знает, как это сделать?
Неактивен
Pho-No написал:
Опиши подробно что делаешь и какие ошибки
Описываю.
Итак. Установил phpmyadmin (2.6.1) на том локалхосте где установлен ТхР (это все локально). Подключился. Выбрал базу, пошел в экспорт. Отметил все таблицы, и почитав этот форум выставил галочки в местах про которые тут не раз упоминалось. А именно:
Убрать галочку с "Обратные кавычки в названиях таблиц и полей"
Все остальное там по умолчанию.
SQL export compatibility было выставлено в none.
Сжатие: Нет.
В результате при попытке залить дамп через SQLyog ругается на SET NAMES UTF-8
В конце каждого CREATE TABLE видно ENGINE=MyISAM DEFAULT CHARSET UTF-8.
Окей, пробуем выставить SQL export compatibility в MYSQL323 - в итоге почти полностью закачав дамп, он ругнулся на какое-то несоответствие типов полей в какой-то таблице... надо будет еще раз попробовать и скопировать сюда ту часть лога где это точно пишется.
Когда я пытаюсь залить какой-либо из дампов через phpmyadmin установленный на моем сайте на хостинге, то он с этой задачей не справляется и в центральном фрейме спустя некоторое время работы выдается белый экран. Поэтому приходится прибегать к услугам SQLyog
Расскажи, какие подробности написать, и я напишу, а то даже не знаю, что важно, а что нет
Неактивен
Если на хостинге есть какая-то техподдержка, это -
пытаюсь залить какой-либо из дампов через phpmyadmin установленный на моем сайте на хостинге, то он с этой задачей не справляется и в центральном фрейме спустя некоторое время работы выдается белый экран
хороший повод перекинуть проблему на них. Обычно помогают, если вежливо попросить и толково описать проблему).
SQL export compatibility таки нужно ставить в твоем случае.
Здесь об этом написано http://dev.mysql.com/doc/refman/4.1/en/ … o-4-0.html . С поправкой на mysql 3.23 и phpmyadmin.
...какое-то несоответствие типов полей в какой-то таблице... надо будет еще раз попробовать и скопировать сюда ту часть лога где это точно пишется.
Угу, ошибку сюда и в гугл, возможно кто-то уже сталкивался и решил эту проблему.
Неактивен
хороший повод перекинуть проблему на них. Обычно помогают, если вежливо попросить и толково описать проблему).
Вот только что ответ от хостера пришел: "Нужно сделать дамп в кодировке win1251ukr или сконвертировать
существующий дамп в указанную кодировку."
Вот код ошибки:
Query:
CREATE TABLE txp_priv (
id int(8) NOT NULL auto_increment,
priv varchar(128) NOT NULL default '',
1 tinyint(1) NOT NULL default '0',
2 tinyint(1) NOT NULL default '0',
3 tinyint(1) NOT NULL default '0',
4 tinyint(1) NOT NULL default '0',
5 tinyint(1) NOT NULL default '0',
6 tinyint(1) NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM AUTO_INCREMENT=33
Error occured at:2006-11-15 19:08:30
Line no.:1493
Error Code: 1064 - syntax error near '1 tinyint(1) NOT NULL default '0',
2 tinyint(1) NOT NULL default '0',
3 tinyint(' at line 4
При этом я заливал дам с конвертированными таблицами (при помощи ALTER TABLE) в cp1251. Заглянул потом туда, а там вместо русских буквы такая вот байда
Дневник киберпанка
т.е. опять таки utf-8
Данные по системам.
локально:
Версия MySQL-клиента: 3.23.49
Версия сервера: 4.1.8-max
у хостера:
Версия MySQL-клиента: 4.0.13
Версия сервера: 3.23.59-nightly-20050301-log
Отредактированно Unseen (15-11-2006 20:50:35)
Неактивен
Попробуй этот скрипт
http://sypex.net/products/dumper
6. В: Можно ли переносить данные с MySQL 4.1 и выше на более старые версии (MySQL 3.23.x и 4.0.x)?
О: Да. Если и бекап, и восстановление базы делать с помощью дампера. В этом случае он сам позаботится о совместимости бекапов.
Возможность перекодировки дампа там тоже есть -
http://sypex.net/encoding/
Перед тем, как использовать скрипт, обязательно сделай бэкап существующих таблиц на хостинге.
Неактивен
В общем так. Дамп я таки залил, предварительно конвертнув все что можно было в cp1251 (collation в cp1251_ukranian_ci)
Теперь такая проблема - заходишь броузером в админку или на сайт - а там все в кракозябрах. Чтобы прочитать, приходится для каждой страничке в броузере принудительно выставлять кодировку utf-8.
Как это починить?
Да и еще. Вот кусок результата диагностики (высокой):
Charset (default/config): win1251ukr/utf8
character_set: win1251ukr
character_sets: win1251ukr big5 cp1251 cp1257 croat czech danish dec8 dos estonia euc_kr gb2312 gbk german1 greek hebrew hp8 hungarian koi8_ru koi8_ukr latin1 latin2 latin5 swe7 usa7 win1250 win1251 ujis sjis tis620
Этот utf8 там так и должен быть?
И еще оттуда же:
"path_to_site недоступен"
Почему это может быть? Абсолютный путь к сайту указан верно (в конце пути ведь слэш ставить не надо?).
Отредактированно Unseen (15-11-2006 23:45:58)
Неактивен
Pho-No написал:
заходишь броузером в админку или на сайт - а там все в кракозябрах.
Теоретически, добавление AddDefaultCharset UTF-8 в .htaccess может помочь)
Я добавил в htaccess
CharsetDisable On
AddHandler default-handler html
CharsetDefault utf-8
Неактивен
Pho-No написал:
заходишь броузером в админку или на сайт - а там все в кракозябрах.
Теоретически, добавление AddDefaultCharset UTF-8 в .htaccess может помочь)
Каким образом? Там нет HTML Все ж в базе.
Неактивен
glebotr написал:
Каким образом? Там нет HTML
Я не специалист в механизмах, происходящих на сервере, но предполагаю, что когда идет запрос к пхп, формируется ХТМЛ страница и подсовывается апачу, который "выплевывает" ее посетителю. Apaч считает, что это обычный ХТМЛ.
Если мои представления о процессах неверны - с благодарностью приму поправки с описанием, что там реально происходит.
Так как многие вебмастера пренебрегают указанием charset в теле страниц, то многие русские хостеры принудительно делают установки в апаче, чтобы он считал, что все страницы сделан в windows-1251, во избежание лишних вопросов и в общем-то, хостеры правы. Именно в windows-1251 и создаются большинство страниц в Рунете.
То есть, когда устанавливаем AddDefaultCharset utf-8 - мы как бы говорим Апачу, что не все в этом мире зациклены на win-1251.
Учитываем, что необходимость в таком указании есть не у всех хостеров.
Неактивен
НАиболее типичная проблема с Апачем в том, что он вообще игнорирует charset ;-)
Неактивен
От кракозябликов избавлялся с помощью добавления в .htaccess
CharsetSourceEnc utf-8
У разных хостеров по-разному сервак настроен, поэтому разные функции применяются)
Вообще дело в том, что кроме страницы браузеру отдается еще ХТТП заголовок, а в нем может содержаться кодировка сервера (у меня был koi8-r например) и не все браузеры потом учитывают то, что у тебя на странице написано (в смысле кодировки)
С помощью этой функции меняется как раз хттп заголовок)
Отредактированно Cwer (19-11-2006 17:50:29)
Неактивен
Вот-вот, во втором апаче сей заголовок по умолчанию не отдается.
Неактивен
Страниц: 1