Конвертация базы из phpBB 3.0 в phpBBex 1.x

Список разделов phpBBex 1.x (поддерживается) Мастерская 1.x

Описание: Только готовые решения! Статьи, заметки, моды и другие полезности для phpBBex 1.x и phpBB 3.0.x.
Модератор: Поддержка

Сообщение #1 VEG » 18.04.2012, 21:11

На данный момент доступен только скрипт конвертации phpBB 3.0.x в phpBBex. Для того, чтобы конвертировать любой другой форум в phpBBex, сперва необходимо конвертировать его в phpBB 3.0.x, после чего уже приступать к конвертации в phpBBex.

Общая схема действий такова:
  1. Перед началом работы обязательно делаем копию всех данных!
  2. Если у вас установлены стили, отличные от prosilver, удаляем их через админку и устанавливаем у всех пользователей стиль prosilver по умолчанию. Для этого зайдите в Админка » Стили, и там на страницах «Стили», «Шаблоны», «Темы» и «Наборы рисунков» удалите всё, что отличается от prosilver. Если этого не сделать, после копирования файлов phpBBex вы получите ошибку, поскольку в комплекте с ним идёт только стиль prosilver.
  3. Если у вас есть хоть одно важное (глобальное) объявление — обязательно сделайте их обычными перед конвертацией (после конвертации вы сможете сделать их обратно глобальными).
  4. Удаляем файлы phpBB 3 кроме config.php, файлов аватар в каталоге ./images/avatars/ и файлов вложений в каталоге ./files/), вместо них записываем файлы phpBBex (config.php не перезаписываем). Учтите, что в каталоге загруженных аватар ./images/avatars/upload/ обязательно необходимо удалить файл .htaccess.
  5. Выполняем в базе скрипт /install/phpbbex.sql (вручную, при помощи PhpMyAdmin на вашем хостинге или другого подобного инструмента). Если у вас префикс таблиц отличается от «phpbb_», не забудьте перед выполнением изменить подстроку «phpbb_» (со знаком подчёркивания!) на ваш префикс в любом текстовом редакторе, кроме значения phpbb_captcha_nogd, его нужно оставить без изменений. Если у вас были установлены модификации, могут возникнуть ошибки (что-то вроде «колонка такая-то уже существует»), но большинство из них легко разрешается (спрашивайте, поможем).
  6. Запускаем в браузере скрипт обновления базы phpBB /install/database_update.php (на случай, если у вас до этого стояла не последняя версия phpBB).
  7. Авторизуемся, очищаем кэш (на главной в админке), заходим в Админка » Стили, где обязательно обновляем наборы изображений, темы и шаблоны для prosilver (без этого стиль будет отображаться некорректно из-за старых данных из phpBB 3).
  8. Админка » Система » Управление модулями » Администраторский раздел » Система » Автоматизация. Необходимо удалить модуль ACP_VERSION_CHECK.
  9. Админка » Система » Управление модулями » Администраторский раздел. Необходимо добавить модули «Быстрый ответ», «Верхние ссылки», «Управление вложениями», «Настройки отображения» и «Лог регистраций» в подходящие вам разделы. Не забудьте включить эти модули после добавления.
  10. Админка » Система » Управление модулями » Модераторский раздел. Необходимо добавить модуль «Редактировать предупреждение» в категорию «Предупреждения».
  11. Для отображения аватар необходимо их синхронизировать: Зайдите в STK (каталог ./stk/, например, http://вашфорум/stk/), Admin Tools, Resynchronise avatars, нажмите Yes и подождите, пока не появится надпись «Avatars successfully resynchronised!» (это может занять несколько минут!).
  12. Для установки новых пакетов смайликов: Зайдите в Админку, Сообщения, Смайлики, Установить пакет смайликов, выберите phpbbex.pak или phpbb3.pak (в зависимости от того, какой пакет смайликов вы хотите), выберите радиокнопку «Удалить все» и нажмите «Установить пакет смайликов».
  13. Не забудьте установить зарегистрированным пользователям право оценивать сообщения.
  14. После обновления базы зайдите в Админку » Сообщения » Вложения » Группы расширений, и удалите там группу QUICKTIME_MEDIA. Там же вы можете увидеть новые группы «HTML5 аудио» и «HTML5 видео» — эти группы вы можете назначать на следующие расширения для отображения их в виде плеера: ogg, ogv, opus, webm, wav, mp3, mp4, m4a, m4v.

Если у вас был установлен мод «Thanks for posts», вы можете импортировать благодарности во встроенную в phpBBex систему оценки сообщений.

Внимание! В этой теме обсуждаем проблемы конвертации. Решение проблем с уже установленным форумом в этом форуме.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев


Сообщение #141 automan » 27.04.2013, 20:08

VEG, спасибо исправил похоже оно

теперь еще проблемы,
через раз форум тормозит и такие ошибки:
Код: Выделить всё
SQL ERROR [ mysqli ]

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) [2002]

BACKTRACE

Код: Выделить всё
SQL ERROR [ mysqli ]

Lost connection to MySQL server during query [2013]

SQL

SELECT * FROM phpbb3_styles_template_data WHERE template_id = 1 AND (template_filename = 'overall_header.html' OR template_included LIKE '%overall\\_header.html:%')

BACKTRACE
Код: Выделить всё
SQL ERROR [ mysqli ]

Lost connection to MySQL server during query [2013]

SQL

SELECT u.*, s.* FROM phpbb3_sessions s, phpbb3_users u WHERE s.session_id = '36dd624d0bbf9d9eb92be26731cb4b40' AND u.user_id = s.session_user_id

BACKTRACE
это выскакивает при попытке заити в тему
потом заходит нормально
Последний раз редактировалось automan 27.04.2013, 20:31, всего редактировалось 1 раз.
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #142 Бугор59 » 27.04.2013, 20:21

VEG, смотрел базу данных - у всех пользователей стоит user_style 1 (prosilver)
Бугор59 M
Аватара
Откуда: г. Димитровград, Ульяновская обл
Репутация: 0
С нами: 10 лет 11 месяцев

Сообщение #143 automan » 28.04.2013, 09:29

переключил хранение шаблона с базы данных на сервер
решился второй баг (почему так ? на старом форуме такого не было)

все чаже и чаже встречается последнии баг с сессией

что может быть?

Добавлено спустя 5 часов 57 минут:
и еще есть проблемка,
при попытки выдать предупреждение, щелкаю на ! в сообщении,
но нету формы для выбора бан предупреждение или заметка,
а открывается форма как в старом движке без выбора
VEG:Админка » Система » Управление модулями » Модераторский раздел. Необходимо добавить модуль «Редактировать предупреждение» в категорию «Предупреждения».
это делал
кеш обнулял стили шаблоны тоже
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #144 VEG » 28.04.2013, 23:45

automan:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) [2002]
automan:Lost connection to MySQL server during query [2013]
Эти ошибки говорят о нестабильности соединения с MySQL сервером. Если беспокоит вас постоянно — повод задуматься о смене хостинга.
automan:переключил хранение шаблона с базы данных на сервер
Шаблоны в базе не стоит хранить. Это создаёт пустую нагрузку на ваш сервер. Очевидно, из-за уменьшения нагрузки на БД и пропала часть ошибок.
automan:все чаже и чаже встречается последнии баг с сессией
Это не баг phpBBex. Дословно «Lost connection to MySQL server during query» означает «Потеряно соединение с сервером MySQL во время выполнения запроса». То есть по какой-то причине сервер рвёт соединение с MySQL сервером.
automan:при попытки выдать предупреждение, щелкаю на ! в сообщении,
Странно. Может быть не все старые файлы обновились? Например, не было права записи в некоторые файлы, и они остались от phpBB?
Если вы выдаёте предупреждение, оно выдаётся? Сделайте скриншот формы выдачи предупреждения.

Бугор59, не справились ли с ошибкой? При замене файлов phpBB 3 на phpBBex вы предварительно удаляете все файлы phpBB 3, или сразу заменяете на phpBBex? Если заменяете, попробуйте сперва удалить все файлы phpBB 3. После этого обязательно проверьте, удалились ли они (из-за проблем с правами некоторые файлы могут не удалиться). И только после того, как убедитесь, что файлов phpBB 3 не осталось, копируйте файлы phpBBex на их место.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #145 Бугор59 » 29.04.2013, 00:05

VEG, именно так и делал причем несколько раз, хочу попробовать установить ВВех и заменить в базе данных phpbb_users если получится постараюсь таким путем путем восстановить что можно
Бугор59 M
Аватара
Откуда: г. Димитровград, Ульяновская обл
Репутация: 0
С нами: 10 лет 11 месяцев

Сообщение #146 VEG » 29.04.2013, 00:31

Бугор59, а если ставить чистый phpBBex (не конвертировать из phpBB 3), он работает на вашем хостинге? Если работает, то можно будет попробовать перекинуть таблицы пользователей, сообщений, вложений и т.д. из конвертированного phpBBex (после выполнения phpbbex.sql) в свежеустановленный форум. Сам не делал такой операции, но теоретически это возможно. Либо есть (наверное) более простой вариант — скопировать связанные со стилями таблицы из чистого phpBBex в конвертированный из phpBB 3.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #147 Бугор59 » 29.04.2013, 07:41

VEG, да чистый работает отлично, вот и хочу попробовать поменять таблицы, а таблицы стилей я смотрел - там вроде все нормально, вечером попробую поменять
Бугор59 M
Аватара
Откуда: г. Димитровград, Ульяновская обл
Репутация: 0
С нами: 10 лет 11 месяцев

Сообщение #148 automan » 29.04.2013, 07:51

VEG:Это не баг phpBBex. Дословно «Lost connection to MySQL server during query» означает «Потеряно соединение с сервером MySQL во время выполнения запроса». То есть по какой-то причине сервер рвёт соединение с MySQL сервером.
это я понял, на старом двиге такое было но очень редко
а тут прямо через раз
хостера менять что-ли

VEG:Странно. Может быть не все старые файлы обновились? Например, не было права записи в некоторые файлы, и они остались от phpBB?
фаилы точно все залил, я их в отдельную новую папку заливал, не заменял старые

VEG:Если вы выдаёте предупреждение, оно выдаётся? Сделайте скриншот формы выдачи предупреждения.
если выдаю, то выдается, и самое интересное, сеичас заметил, при редактировании выданного предупреждения, у формы появляется нормальный вид,
тоесть можно выбрать бан, предупреждение или замечание
скрин в атаче


еще одна бага, если отмечаю показывать первое сообщение на всех странийцах, форум начинает нереально долго грузиться
и два раза упал на ошибке
на третий открылся через очень долго время, и так все время так нормально не работет
Код: Выделить всё
SQL ERROR [ mysqli ]

Lost connection to MySQL server during query [2013]

SQL

SELECT u.*, z.friend, z.foe, p.* FROM (phpbb3_users u CROSS JOIN phpbb3_posts p) LEFT JOIN phpbb3_zebra z ON (z.user_id = 25 AND z.zebra_id = p.poster_id) WHERE p.post_id IN ('150257', 208214, 208210, 208203, 208199, 208197, 208176, 208175, 208174, 208173, 208163, 208162, 208161, 208159, 208158, 208154, 208151, 208145, 208142, 208139, 208138) AND u.user_id = p.poster_id

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()

FILE: [ROOT]/includes/db/mysqli.php
LINE: 182
CALL: dbal->sql_error()

FILE: [ROOT]/viewtopic.php
LINE: 1076
CALL: dbal_mysqli->sql_query()
Код: Выделить всё
SQL ERROR [ mysqli ]

MySQL server has gone away [2006]

SQL

UPDATE phpbb3_topics SET topic_views = topic_views + 1, topic_last_view_time = 1367210124 WHERE topic_id = 4089

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()

FILE: [ROOT]/includes/db/mysqli.php
LINE: 182
CALL: dbal->sql_error()

FILE: [ROOT]/viewtopic.php
LINE: 1873
CALL: dbal_mysqli->sql_query()
Вложения
Untitled1.png
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #149 dnHyper » 29.04.2013, 09:27

VEG:Сам не делал такой операции, но теоретически это возможно
Имхо — может быть именно этот способ «принять на вооружение» для переноса форума «во избежание»?

Постараюсь в ближайшее время «раскрыть» эту тему :toothless: поелику у самого проблем не возникало.
dnHyper
Репутация: 46
С нами: 11 лет

Сообщение #150 VEG » 29.04.2013, 10:32

dnHyper:Имхо — может быть именно этот способ «принять на вооружение» для переноса форума «во избежание»?
Он сложнее в реализации, и там скорее будет много подводных камней. Не знаю, почему у Бугор59 возникли проблемы, такая ошибка выдаётся в случае неудачи при загрузке стиля.

automan:Lost connection to MySQL server during query
«Потеряно соединение с сервером во время запроса».
automan:MySQL server has gone away
«Сервер уже отключился» (до запроса).

Во всех приведённых вами случаях вы получаете эти ошибки при стандартных запросах phpBB 3 в базу — они в таком же виде работают и в phpBB 3.0.11.

На скриншоте вижу, что у вас включён отладочный режим (выводится подробная статистика по запросам). Рекомендую его выключить и включать только в особых случаях — он предназначен для разработчиков, а не для пользователей.

automan:если выдаю, то выдается, и самое интересное, сеичас заметил, при редактировании выданного предупреждения, у формы появляется нормальный вид,
Так какой тип предупреждения выдаётся? Откройте страницу выдачи предупреждения, затем откройте её HTML код (именно исходный код по Ctrl+U, а не Firebug или что-то подобное!) и поищите там код по строке «warntype_warning». Что находит по этому поводу?

Вообще странно. Для редактирования и выдачи предупреждения используется общий код формы. Подобная проблема может быть при закэшированном где-либо некорректным вариантом шаблона. У вас действительно шаблоны сейчас не хранятся в базе? Проверьте, чиста ли таблица phpbb_styles_template_data, и если там что-то есть — смело удаляйте всё. И следите за тем, чтобы форум не сохранял туда шаблоны — это сильно замедляет его работу и добавляет проблем. Чтобы этого не происходило, нужно установить корректные права на каталог cache. Если шаблоны всё равно появляются в базе — в таблице phpbb_styles_template установите в поле template_storedb значение 0, очистите кэш и таблицу phpbb_styles_template_data (повторно).
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #151 automan » 29.04.2013, 11:40

VEG:Во всех приведённых вами случаях вы получаете эти ошибки при стандартных запросах phpBB 3 в базу — они в таком же виде работают и в phpBB 3.0.11.
тогда странно, что в phpBB 3 такого не было
получается что когда, включаю показ первого сообщения на всех страницах, сильно увеличивается число запросов к БД ?
что делать менять хостера?

VEG:На скриншоте вижу, что у вас включён отладочный режим (выводится подробная статистика по запросам). Рекомендую его выключить и включать только в особых случаях — он предназначен для разработчиков, а не для пользователей.
ok спасиб
VEG:Так какой тип предупреждения выдаётся? Откройте страницу выдачи предупреждения, затем откройте её HTML код (именно исходный код по Ctrl+U, а не Firebug или что-то подобное!) и поищите там код по строке «warntype_warning». Что находит по этому поводу?
Код: Выделить всё
<label for="warntype_warning">Тип:</label>


VEG:Вообще странно. Для редактирования и выдачи предупреждения используется общий код формы. Подобная проблема может быть при закэшированном где-либо некорректным вариантом шаблона. У вас действительно шаблоны сейчас не хранятся в базе? Проверьте, чиста ли таблица phpbb_styles_template_data, и если там что-то есть — смело удаляйте всё. И следите за тем, чтобы форум не сохранял туда шаблоны — это сильно замедляет его работу и добавляет проблем. Чтобы этого не происходило, нужно установить корректные права на каталог cache. Если шаблоны всё равно появляются в базе — в таблице phpbb_styles_template установите в поле template_storedb значение 0, очистите кэш и таблицу phpbb_styles_template_data (повторно).
на самом деле, я как то просмотрел, чмод на папке был не правильный, исправил
в phpbb_styles_template_data были записи, стёр всё
в phpbb_styles_template все по нулям

кеш потёр, шаблоны оновил
форма предупреждения такя-же
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #152 VEG » 30.04.2013, 02:55

automan:получается что когда, включаю показ первого сообщения на всех страницах, сильно увеличивается число запросов к БД ?
Это может показаться странным, но количество запросов не увеличивается, все отображаемые сообщения запрашиваются за один раз. В режиме отладки вы можете посмотреть какие запросы выполняются и сколько времени они занимают. Может быть при нажатии на Explain что-то интересное заметите?
automan:тогда странно, что в phpBB 3 такого не было
phpBBex генерирует в среднем на пару запросов больше для каждой страницы. Для нормального хостинга это не нагрузка. Возможно, у вас phpBB 3 уже работал на пределе, а сейчас совсем плохо стало.
automan:что делать менять хостера?
Для начала поинтересуйтесь у хостера, почему MySQL сервер постоянно сбрасывает соединения. Скорее всего это связано с его неправильной настройкой. Вдруг подкрутят что и заработает как положено.
automan:<label for="warntype_warning">Тип:</label>
Значит шаблон тот. А какой тип предупреждения выдаётся? При открытии формы выдачи предупреждения в консоли ошибок JS появляются какие-нибудь записи?
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #153 automan » 30.04.2013, 10:48

VEG:В режиме отладки вы можете посмотреть какие запросы выполняются и сколько времени они занимают. Может быть при нажатии на Explain что-то интересное заметите?
на то что по быстрому обратил внимание:
Код: Выделить всё
SELECT post_id, topic_id, forum_id
FROM phpbb3_posts
WHERE topic_id = 3696
AND (post_time > 1367304774 OR post_merged > 1367304774)
AND forum_id = 5
ORDER BY post_time ASC
LIMIT 1
1   SIMPLE   phpbb3_posts   index_merge   forum_id,topic_id,tid_post_time   topic_id,forum_id   3,3       3195   Using intersect(topic_id,forum_id); Using where; Using filesort

Before: 0.09153s | After: 3.95162s | Elapsed: 3.86009s
Код: Выделить всё
SELECT post_id, topic_id, forum_id
FROM phpbb3_posts
WHERE topic_id = 3051
AND (post_time > 1367305045 OR post_merged > 1367305045)
AND forum_id = 6
ORDER BY post_time ASC
LIMIT 1
Id   Select Type   Table   Type   Possible Keys   Key   Key Len   Ref   Rows   Extra
1   SIMPLE   phpbb3_posts   index_merge   forum_id,topic_id,tid_post_time   topic_id,forum_id   3,3       242   Using intersect(topic_id,forum_id); Using where; Using filesort

Before: 0.10657s | After: 5.56393s | Elapsed: 5.45736s

но этот запрос не всегда долго отображается

VEG:Для начала поинтересуйтесь у хостера, почему MySQL сервер постоянно сбрасывает соединения. Скорее всего это связано с его неправильной настройкой. Вдруг подкрутят что и заработает как положено.
ответ хостера, мажордомо (если нельзя указывать имя сотрите плиз)
Код: Выделить всё
Здравствуйте.
Настройки сервера mysql стандартные, скорректировать их Вы можете самостоятельно подключившись к серверу по ssh. Согласно логам работы операционной системы периодически на сервере заканчивается свободная память, вследствие  операционная система  "убивает" процессы, чтобы освободить память для корректной работы.
Рекомендуем :
1)Скорректировать настройки программного окружение, что потребление памяти не превышала доступную.
2)Увеличить память VPS.
сейчас у нас:
(CPU),500 МГц
RAM, 256 Мб
если это мало на сколько надо увеличить для нормальной работы?
VEG:Значит шаблон тот. А какой тип предупреждения выдаётся? При открытии формы выдачи предупреждения в консоли ошибок JS появляются какие-нибудь записи?
не очень понял про тип предупреждения, обычное, с желтой кароточкой
в консоле ошибок JS пусто
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #154 VEG » 30.04.2013, 11:11

automan, какая посещаемость на ресурсе? Сколько уников в сутки и сколько просмотров они генерируют? У меня на nic.ru всегда меньше 256 мегабайт расходуется, это на несколько форумов с общей посещаемостью около 2000-2500 уников в сутки. Вообще это уже глубокий оффтопик и по поводу нагрузки следовало бы создать отдельную тему в поддержке.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #155 automan » 30.04.2013, 11:36

VEG:Вообще это уже глубокий оффтопик и по поводу нагрузки следовало бы создать отдельную тему в поддержке.
ок /viewtopic.php?t=527

VEG, а что делать с предупреждениями?
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #156 VEG » 30.04.2013, 12:42

automan:VEG, а что делать с предупреждениями?
Тоже отдельный топик создайте. Будем перебирать варианты.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #157 automan » 02.05.2013, 09:31

VEG:./images/avatars/upload/ обязательно необходимо удалить файл .htaccess.
.htaccess надо удалять только на время синхронизации аватар
или он вообще не должен быть там в phpbbex ?
automan
Репутация: 2
С нами: 11 лет 1 месяц

Сообщение #158 VEG » 02.05.2013, 10:03

automan:или он вообще не должен быть там в phpbbex ?
Именно, там не должно быть этого файла.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #159 pisikot » 02.05.2013, 19:54

Как сделать чтоб в ответах в темах исчезло Re: ?
pisikot M
Аватара
Откуда: Тюмень, Россия
Репутация: 43
С нами: 11 лет 6 месяцев

Сообщение #160 VEG » 02.05.2013, 20:21

Сделайте полный бэкап базы, затем выполните один из запросов ниже.

Код: Выделить всё
UPDATE phpbb_posts SET post_subject = "" WHERE post_subject LIKE "Re: %";
Этот отработает быстро, но если у вас есть темы, у которых в первом сообщении в самом начале написано Re:, то эти темы будут заменены на пустые.

Код: Выделить всё
UPDATE phpbb_posts p LEFT JOIN phpbb_topics t ON t.topic_first_post_id = p.post_id SET p.post_subject = "" WHERE p.post_subject LIKE "Re: %" AND t.topic_first_post_id IS NULL;
Этот запрос значительно медленнее, но проблема с темами учтена.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Пред.След.

Вернуться в Мастерская 1.x



cron