Помощь ошибка базы после обновления

Тема в разделе "DLE", создана пользователем paul_rem, 13 фев 2013.

Информация :
Актуальная версия DataLife Engine 11.2
( Final Release v.11.2 | Скачать DataLife Engine | Скачать 11.2 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.1 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Модераторы: killoff
  1. paul_rem

    paul_rem

    Регистр.:
    29 июл 2009
    Сообщения:
    354
    Симпатии:
    22
    Доброго дня. Подскажите, как исправить данную проблему, которая появилась после обновления движка с версии 9.2 до версии 9.7:

    MySQL Error!
    ------------------------

    The Error returned was:
    Unknown column 'flag' in 'field list'

    Error Number:
    1054
    SELECT id, title, date, alt_name, category, flag FROM dle_post WHERE approve='1' AND date >= '2013-02-13 16:08:43' - INTERVAL 1 MONTH AND date < '2013-02-13 16:08:43' ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,10
     
  2. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.111
    Симпатии:
    2.130
    Какой модуль стоит?
     
  3. paul_rem

    paul_rem

    Регистр.:
    29 июл 2009
    Сообщения:
    354
    Симпатии:
    22
    да тут кучка у меня их стоит, как понять куда копать, от какого модуля это. Вот что еще, сам сайт не грузится, но в админку заходит, но при выборе редактирования новостей выдает ошибку, то есть он даже список новостей не выводит
     
  4. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.111
    Симпатии:
    2.130
    Эта ошибка связана с каким-либо модулем, который занимается выводом топа новостей по рейтингу, количестку комментов, просмотрам и датам... Вспоминайте - какой лучше всего подходит...
     
  5. paul_rem

    paul_rem

    Регистр.:
    29 июл 2009
    Сообщения:
    354
    Симпатии:
    22
    в админке вот какую ошибку выдает при попытке вывести новости, может это сократит список поисков

    MySQL Error!
    ------------------------

    The Error returned was:
    Unknown column 'news_read' in 'field list'

    Error Number:
    1054

    SELECT id, date, title, category, autor, alt_name, comm_num, approve, fixed, news_read, votes, flag FROM dle_post ORDER BY fixed desc, approve asc, date desc LIMIT 0,50
     
  6. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.111
    Симпатии:
    2.130
    Нет, эта ошибка не имеет отношение к первой...

    Для Вас вариантов поисков 3:
    Скачать весь сайт и запустить поиск по файлам по ключевому слову flag
    Далее либо удалить это слово из запроса (для соблюдения синтаксиса запроса надо будет удалить запятую), либо добавить через phpMyAdmin поле flag в таблицу dle_post.
    Оба варианта НЕ правильные, но помогут оперативно вернуть работоспособность сайту...

    Правильный способ - найти зачем используется поле flag в модуле и переписать модуль так, чтобы он больше не использовал это поле. Увы, я не помню зачем это поле использовалось в ДЛЕ до 9.7...

    Что касается админки - в ней тоже либо стоит какой-то хак, либо Вы не обновили все файлы сайта. Количество просмотров, начиная с 9.5, если не ошибаюсь, вынесена в другую таблицу.
     
  7. paul_rem

    paul_rem

    Регистр.:
    29 июл 2009
    Сообщения:
    354
    Симпатии:
    22
    я на локале и делаю попытки обновить движок и выкинуть кучу не нужного из модулей, открыл базу через пхпадмин на сервере, вижу что там больше полей в таблице, а при обновлении разве удаляются поля которые созданы самим, всё под стандарт что ли зачищается? на локале сейчас 21 строка в таблице, в инете 32, вот так дела, остальные поля обновление просто удалило что ли?

    всё запустил, пришлось ручками добавлять все строки таблицы , которых не оказалось после обновления, ладно , что хоть есть где смотреть , но меня удивил факт, что обновление удалило поля, которые посчитало не входящим в базовую версию движка
     
  8. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.111
    Симпатии:
    2.130
    ДЛЕ обновляется и развивается... Поле flag более не нужно движку, посему его удалили. Поле news_read удалили, т.к. перенесли в другую таблицу.
    При обновлении удаляются только те поля, которые создавались самим ДЛЕ ранних версий и в новых версиях не используются, либо перенесены в другие места. Поля модулей не удаляются и не меняются, т.к. ДЛЕ не знает о их существовании.

    Тем, что Вы добавили эти поля обратно - вы временно скрыли ошибку, но сама ошибка никуда не делась. В алгоритмах скрипта попрежнему идёт обращение к полям, которых фактически нету. Данные в эти поля больше не заносятся.

    Так что в любом случае надо искать проблемные модули и их исправлять, обновляя под новые версии ДЛЕ.
     
  9. paul_rem

    paul_rem

    Регистр.:
    29 июл 2009
    Сообщения:
    354
    Симпатии:
    22
    Полностью согласен. Это логично и правильно. Дайте мне тогда совет, как мне лучше поступить и как проще и правильнее.
    У меня большой сайт, уже куча материала, модулей штук 10 максимум. Основное из модулей это пока форум ДЛЕ, который хочу заменить на logicboard-2.1
    К тому же купил лицензию на кмс 9.7 , пока сайт на нулледе. После полного обновления на локале, это замена файлов и в админку не пускает конечно же, так как пишет что превышение по бесплатному режиму и нельзя пользоваться. По-этому я решил сперва начать с обновления только базы , а не файлов.
    Мне надо, чтобы стояла:
    1) Новая кмс 9.7 лицензия
    2) Форум logicboard-2.1 (с перенесенными данными из старой версии форума)
    3) Галерея TWSgroup 4.1 (она стоит сейчас )

    как мне поступить проще, чтобы были и файлы нормально обновлены и не было ничего лишнего в папках, так как за годы использования сайта, набралась куча не нужных файлов, которые просто лежат , точно так же и с базой данных дела обстоят. Можно ли мне как то поставить просто чистую версию DLE и перести туда то что мне надо?
     
  10. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.111
    Симпатии:
    2.130
    Вот тут и ошибка... На сайте dle-news.ru Вы получили лицензионный ключ. Он привязывается к версии ДЛЕ и домену, что приводит к ошибкам, если обновить версию или перенести сайт на локаль... Лечится это очень просто - вводите ключ ещё раз и он обновляется до актуальной версии скрипта (Если порядок не изменили ещё).
    Второй вариант - dlekey.cn - генерируете ключ и пользуетесь на локале не рискуя оф. ключём.

    Порядок обновления строгий:
    1) Перезалить файлы
    2) Обновить базу
    3) Установить все модули заново, но не делая запросов в базу.

    Что касается новой ДЛЕ - да, возможно... Вы обновляете базу старой ДЛЕ (а лучше полностью всё обновляете, проверяете работоспособность), делаете дамп, ставите новую ДЛЕ, ставите модули, восстанавливаете дамп базы.

    Конвертор DLE Forum - LogicBoard есть, работает не плохо. Не так давно под заказ обновлял человеку сайт, всё заработало как надо. Проблема была только с репутацией - пришлось доплатить за модуль. Обновление до 3.0 тоже прошло гладко.

    А вот с TWSgroup 4.1 не уверен. Насколько помню, проект умер и не обновляется...
     
    paul_rem нравится это.