mokys 0 Опубликовано: В четверг в 15:52 Рассказать Опубликовано: В четверг в 15:52 Всем привет. Переехал на новый сервер, добавляю новость и выдает такую ошибку. Как побороть? Скорее всего беда в базе, но не пойму в чем именно. Строчка 1362 из указанного файла $db->query( "SELECT id, date, short_story, xfields, title, category, alt_name, MATCH (title, short_story, full_story, xfields) AGAINST ('{$body}') as score FROM " . PREFIX . "_post {$join_category}WHERE {$where_category}{$allowed_cats}{$not_allowed_cats}MATCH (title, short_story, full_story, xfields) AGAINST ('{$body}') AND id != " . $row['id'] . " AND approve=1" . $where_date . " ORDER BY score DESC LIMIT " . $config['related_number'] ); MySQL Error! MySQL error in file: /engine/modules/show.full.php at line 1362 Error Number: 1191 The Error returned was: Can't find FULLTEXT index matching the column list SQL query: SELECT id, date, short_story, xfields, title, category, alt_name, MATCH (title, short_story, full_story, xfields) AGAINST ('fgdhgfhgfh ghgfgfh') as score FROM dle_post WHERE MATCH (title, short_story, full_story, xfields) AGAINST ('fgdhgfhgfh ghgfgfh') AND id != 53731 AND approve=1 ORDER BY score DESC LIMIT 5 Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 140 Опубликовано: В четверг в 17:45 Рассказать Опубликовано: В четверг в 17:45 1 час назад, mokys сказал: Скорее всего беда в базе, но не пойму в чем именно. Не скорее всего. А точно. При переносе базы данных не перенесли индексы. Рекомендуется делать бекап через админпанель DLE и восстанавливать через админпанель DLE. Тогда ничего не забудется. Нужно на старом сервере теперь делать повторно корректный бекап и потом его восстанавливать. Цитата Ссылка на сообщение Поделиться на других сайтах
mokys 0 Опубликовано: 18 часов назад Рассказать Опубликовано: 18 часов назад Автор 20 часов назад, celsoft сказал: Не скорее всего. А точно. При переносе базы данных не перенесли индексы. Рекомендуется делать бекап через админпанель DLE и восстанавливать через админпанель DLE. Тогда ничего не забудется. Нужно на старом сервере теперь делать повторно корректный бекап и потом его восстанавливать. Из плохой истории, старый сервер уже удален. Есть бэкап от 2024 года сделанный средствами DLE, но из за обновления версии движка до 18, пишет что - версия базы не соответствует версии движка. При чем старые новости читабельны, ошибка что выше, возникает только при добавлении новых новостей. Статические странички создаются без проблем. Беда только с новостями((( Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 140 Опубликовано: 18 часов назад Рассказать Опубликовано: 18 часов назад Первый вариант. Ставите версию DLE от которой у вас бекап как чистую, проверяете работу, что все в порядке, потом по инструкции обновляетесь до актуальной. Второй вариант. Открываете файл install.php из дистрибутива актуальной версии, и для каждой таблице вручную сравниваете ключи которые заданы в этом файле для таблиц, со своей таблицей на сервере. Имена, составные части и т.д. И в PHP MyAdmin исправляете и прописываете все ключи вручную. Этот варинат требует хороших знаний MySQL Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.