Ошибка с xf_edit_history

Статус
В этой теме нельзя размещать новые ответы.

Garri83

Проверенные
Сообщения
1,043
Реакции
209
Баллы
19,565
Код:
Zend_Db_Statement_Mysqli_Exception: Mysqli prepare error: Table '.xf_edit_history' doesn't exist - library/Zend/Db/Statement/Mysqli.php:77
Сгенерирована пользователем: Garri, 25 мин. назад
Трассировка стэка
#0 clubwp.ru/library/Zend/Db/Statement.php(115): Zend_Db_Statement_Mysqli->_prepare('INSERT INTO `xf...')
#1 clubwp.ru/library/Zend/Db/Adapter/Mysqli.php(381): Zend_Db_Statement->__construct(Object(Zend_Db_Adapter_Mysqli), 'INSERT INTO `xf...')
#2 clubwp.ru/library/Zend/Db/Adapter/Abstract.php(478): Zend_Db_Adapter_Mysqli->prepare('INSERT INTO `xf...')
#3 clubwp.ru/library/Zend/Db/Adapter/Abstract.php(574): Zend_Db_Adapter_Abstract->query('INSERT INTO `xf...', Array)
#4 clubwp.ru/library/XenForo/DataWriter.php(1624): Zend_Db_Adapter_Abstract->insert('xf_edit_history', Array)
#5 clubwp.ru/library/XenForo/DataWriter.php(1613): XenForo_DataWriter->_insert()
#6 clubwp.ru/library/XenForo/DataWriter.php(1405): XenForo_DataWriter->_save()
#7 clubwp.ru/library/XenForo/DataWriter/DiscussionMessage.php(775): XenForo_DataWriter->save()
#8 clubwp.ru/library/XenForo/DataWriter/DiscussionMessage.php(573): XenForo_DataWriter_DiscussionMessage->_insertEditHistory()
#9 clubwp.ru/library/XenForo/DataWriter.php(1409): XenForo_DataWriter_DiscussionMessage->_postSave()
#10 clubwp.ru/library/XenForo/ControllerPublic/Post.php(264): XenForo_DataWriter->save()
#11 clubwp.ru/library/Brivium/ThreadsPostsOwner/ControllerPublic/Post.php(92): XenForo_ControllerPublic_Post->actionSaveInline()
#12 clubwp.ru/library/XenForo/FrontController.php(347): Brivium_ThreadsPostsOwner_ControllerPublic_Post->actionSaveInline()
#13 clubwp.ru/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#14 clubwp.ru/index.php(13): XenForo_FrontController->run()
#15 {main}
Содержимое запроса
array(3) {
  ["url"] => string(39) "http://clubwp.ru/posts/2131/save-inline"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(6) {
    ["message_html"] => string(453) "<p>За флудом будем</p>
"
    ["_xfRelativeResolver"] => string(82) "http://clubwp.ru/threads/polzovatel-mesjaca-poluchi-dostup-v-zakrytye-razdely.463/"
    ["_xfToken"] => string(8) "********"
    ["_xfRequestUri"] => string(66) "/threads/polzovatel-mesjaca-poluchi-dostup-v-zakrytye-razdely.463/"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}

Что-то случилось с базой. С сайтом ничего не делал. Но таблицы xf_edit_history в базе вообще нет.
Как можно исправить?
 
Выполните такой запрос в Бд.
Код:
    CREATE TABLE xf_edit_history (
        edit_history_id int(10) unsigned NOT NULL auto_increment,
        content_type VARBINARY(25) NOT NULL,
        content_id int(10) unsigned NOT NULL,
        edit_user_id int(10) unsigned NOT NULL,
        edit_date int(10) unsigned NOT NULL,
        old_text mediumtext NOT NULL,
        PRIMARY KEY  (edit_history_id),
        KEY content_type (content_type,content_id,edit_date),
        KEY edit_date (edit_date),
        KEY edit_user_id (edit_user_id)
    ) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci

Да и таблицы просто так из Бд, не исчезают, всему есть причины, а тут ещё дополнение от Бривиума.
Да и про установленное дополнение, которое может быть причиной.
 
  • Мне нравится
Реакции: Hope
Понятно что не существует, но запрос то на создание, только что проверил на тестовом, всё создаётся.
Отключите дополнение совсем, и попробуйте заново запрос.

И можно ещё добавить в конфиг.
Код:
$config['enableListeners'] = false;
 
  • Мне нравится
Реакции: Hope
На хостнге оказывается из-за этого даже резервные копии не делались.
Вот ответил тех.поддержка хостинга
Резервная копия не могла осуществится из-за того, что база данных была повреждена:
mysqldump: Got error: 1146: Table '.xf_edit_history' doesn't exist when using LOCK TABLES

PS Доступ дать не могу.
 
Раз такое дело, то решайте с хостером, что случилось, похоже что проблема с Бд, возможно с их стороны.

Или запустите проверку и исправление таблиц в Бд.
 
  • Мне нравится
Реакции: Nayn
:( от хостира ничего разумного не услышал. База слетела, мы ничего не можем. А можем восстановить из старых и в итоге и старые базы тоже не сохранились. Одним словам, Ах тунг.

Пробовал оптимизировать бд и проверить её. Как можно исправить таблицу, которой нет в БД?
 
Как можно исправить таблицу, которой нет в БД?
Выполните такой запрос в Бд.
Код:
    CREATE TABLE xf_edit_history (
        edit_history_id int(10) unsigned NOT NULL auto_increment,
        content_type VARBINARY(25) NOT NULL,
        content_id int(10) unsigned NOT NULL,
        edit_user_id int(10) unsigned NOT NULL,
        edit_date int(10) unsigned NOT NULL,
        old_text mediumtext NOT NULL,
        PRIMARY KEY  (edit_history_id),
        KEY content_type (content_type,content_id,edit_date),
        KEY edit_date (edit_date),
        KEY edit_user_id (edit_user_id)
    ) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci
 
У него она может есть, ему наверно дропнуть ее нужно, потом создать.
DROP TABLE xf_edit_history;
потом
и выполнить вариант от Mirovinger, CREATE TABLE xf_edit_history ...
 
Последнее редактирование:
Хостер пока ничего
У него она может есть, ему наверно дропнуть ее нужно, потом создать.
DROP TABLE xf_edit_history;
потом
и выполнить вариант от Mirovinger, CREATE TABLE xf_edit_history ...
Помогло именно это. Хотя xf_edit_history в списке не было. А от хостинга так вразумительного ничего не услышал. Спасибо за помощь.

А ещё никто не подскажет из-за чего это могло быть?
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу