1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

Глюк! Пропали разделы!

Тема в разделе "Основные вопросы по XenForo", создана пользователем martini, 05.01.2015.

Загрузка
  1. martini

    martini Местный

    Регистрация:
    10.10.10
    Сообщения:
    249
    Симпатии:
    28
    Странная история приключилась у меня

    Сегодня заметил что с форума тупо пропал раздел с несколькими вложенными подразделами.

    Полез в базу, выяснил, что темы, которым присвоены айди пропавших разделов, в базе есть. Тоесть это не я не ту кнопку нажал в админке, а просто из таблицы NODE пропали странным образом несколько записей! Как и почему это могло произойти?

    И что теперь делать?

    Я попытался сделать фокус, создав разделы наново и в базе подставив им айдишки пропавших разделов. Но не тут то было, фокус не удался. Разделы выводятся на главную страницу, но, во первых, в них нет контента, а во вторых при попытке зайти в такой раздел, пишет что раздел не существует! То же самой в админке в дереве узлов я разделы вижу, но когда кликаю по названию, то пишет что раздел не существует.

    ЧТО ДЕЛАТЬ???

    Откатываться к бекапу уже поздно, пока я заметил пропажу, прошло пару дней, юзеры кучу всего написали :(
     
  2. Exile

    Exile Местный

    Регистрация:
    27.06.11
    Сообщения:
    997
    Симпатии:
    545
    Версия XF:
    1.4.4
    Кеш перестраивать не пробовали? Там есть пункт относительно перестройки положения тем и сообщений. Вот только в каком порядке делать - создавать разделы в базе вручную или еще как, точно не подскажу - делайте бекап и пробуйте сначала просто перестроить, форум или выплюнет эти темы в отдельный раздел или еще как.

    PS. Для чего в базу данных руками в XenForo вообще лазать потребовалось? Сами себе злобные буратины.
     
  3. akinak

    akinak Местный

    Регистрация:
    12.02.13
    Сообщения:
    259
    Симпатии:
    243
    Версия XF:
    1.1.3
    0) отключить форум
    1) сделать текущий бекап бд
    2) из старых бекапов восстановить осторожно таблицы xf_forum и xf_node
    Возможно еще xf_forum_prefix и xf_forum_watch
    Осторожно - єто в смысле посмотреть по строкам, чего не хватает, не затерев при этом возможно ново-созданные узлы.
    3) Убедится что все ок, включить форум.
     
    Mirovinger нравится это.
  4. 7Assassin7

    7Assassin7 Местный

    Регистрация:
    14.12.12
    Сообщения:
    258
    Симпатии:
    51
    Версия XF:
    1.1.5
    верни бекап
     
  5. fly_indiz

    fly_indiz Местный

    Регистрация:
    20.08.11
    Сообщения:
    460
    Симпатии:
    357
    Версия XF:
    1.4.3
    как вариант.
    при отключенном форуме - починить таблицы в БД, если не вернуться - развернуть бекап где есть то что нужно гденибудь отдельно на тестовой площадке. на тестовой площадке поудалять физически ВСЁ, кроме тех разделов которые нужно восстановить, потом на рабочем форуме сделать импорт данных из тестового.
     
  6. martini

    martini Местный

    Регистрация:
    10.10.10
    Сообщения:
    249
    Симпатии:
    28
    Импорт данных каким то импортером или просто в базу?
     
  7. fly_indiz

    fly_indiz Местный

    Регистрация:
    20.08.11
    Сообщения:
    460
    Симпатии:
    357
    Версия XF:
    1.4.3
    импортёром ксена из админки. естественно не на живом форуме пробовать. а на живом предварительно забекапить
     
  8. martini

    martini Местный

    Регистрация:
    10.10.10
    Сообщения:
    249
    Симпатии:
    28
    импортер ксена при нажатии кнопки Import nodes выдает ошибку


    Server Error
    Mysqli statement execute error : Duplicate entry '1' for key 'PRIMARY'

    1. Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 297
    2. Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
    3. Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 574
    4. Zend_Db_Adapter_Abstract->insert() in XenForo/DataWriter.php at line 1624
    5. XenForo_DataWriter->_insert() in XenForo/DataWriter.php at line 1613
    6. XenForo_DataWriter->_save() in XenForo/DataWriter.php at line 1405
    7. XenForo_DataWriter->save() in XenForo/Model/Import.php at line 599
    8. XenForo_Model_Import->_importData() in XfAddOns/Blogs/Override/Model/Import.php at line 28
    9. XfAddOns_Blogs_Override_Model_Import->_importData() in XenForo/Model/Import.php at line 1266
    10. XenForo_Model_Import->importCategory() in XenForo/Importer/XenForo.php at line 1391
    11. XenForo_Importer_XenForo->_importNodeTree() in XenForo/Importer/XenForo.php at line 1271
    12. XenForo_Importer_XenForo->stepNodes() in XenForo/Importer/Abstract.php at line 97
    13. XenForo_Importer_Abstract->runStep() in XenForo/ControllerAdmin/Import.php at line 187
    14. XenForo_ControllerAdmin_Import->_runStep() in XenForo/ControllerAdmin/Import.php at line 239
    15. XenForo_ControllerAdmin_Import->_startStep() in XenForo/ControllerAdmin/Import.php at line 182
    16. XenForo_ControllerAdmin_Import->actionStartStep() in XenForo/FrontController.php at line 347
    17. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
     
  9. martini

    martini Местный

    Регистрация:
    10.10.10
    Сообщения:
    249
    Симпатии:
    28
    поскольку встроенный импортер оказался безсилен, я пошел другим путем

    сделал дамп вот таких таблиц из "обрезанного" форума, на котором были оставлены только пропавшие разделы

    [​IMG]

    и импортировал их в живой форум

    Однако, процедуру пришлось повторять несколько раз. Почему-то на живом форуме почему-то получались не все из этих разделов. То одни есть, других нет, то наоборот. Пришлось удалять и из админки и из базы, ремонтировать таблицы и где-то с четвертой попытки все пропавшие разделы оказались на месте! :thumbsup:

    Спасибо все, кто сочуствовал :)
     
    Mirovinger нравится это.

Поделиться этой страницей