Не восстанавливаются курсы в moodle 3.0

Не восстанавливаются курсы в moodle 3.0

от Подин Максим -
Количество ответов: 13
Добрый день! Обновились до версии moodle 3.0. Не восстанавливаются курсы из moodle 1.9.13 + в 3.0. Хотя из 1.9.13 в 2.9.3 всё норм было. Конвертировали базу данных с Antelope на Barracuda. Не помогло. Решили попробовать перенести курс по частям, оказалось, что лекции, ресурсы и задания он восстанавливает нормально. А как только в курс включаешь тесты. Он виснет при восстановлении. В чём может быть ошибка. Заранее спасибо
В ответ на Подин Максим

Re: Не восстанавливаются курсы в moodle 3.0

от Vadim Tabunshchik -
Изображение пользователя Developers

Скиньте небольшой архив с курсом, будем посмотреть. С 1.9.19 восстанавливается нормально, с тестами тоже.

В ответ на Vadim Tabunshchik

Re: Не восстанавливаются курсы в moodle 3.0

от Подин Максим -
Вот архив. Мы даже попробовали, перенести только один тест в курсе без лекций, заданий и ресурсов, всё равно при восстановлении виснет.
В ответ на Подин Максим

Re: Не восстанавливаются курсы в moodle 3.0

от Vadim Tabunshchik -
Изображение пользователя Developers

Спасибо. Курс восстановился без проблем. Смотреть тут: Финансовая математика

Если нужны права преподавателя (поэкспериментировать с другими бэкапами), регистрируйтесь и запрашивайте курс или права преподавателя в этом курсе.

Нас воем сайте перед восстановлением включайте отладку на "Разработчик", чтобы знать, какая таблица дает сбой.

Для всех: перед обновлением на другую версию всегда проверяйте структуру (схему) базы данных. Используйте встроенную возможность moodle - Редактор XMLDB - для проверки индексов/умолчаний таблиц БД.

В ответ на Vadim Tabunshchik

Re: Не восстанавливаются курсы в moodle 3.0

от Подин Максим -
Спасибо, Вадим! В режиме отладки уже проверяли. Никаких ошибок не выдает! Будем копаться в базе данных.
В ответ на Vadim Tabunshchik

Re: Не восстанавливаются курсы в moodle 3.0

от Валерий Слободин -

Я выяснил, почему не восстанавливались курсы в 3.0!

Если в настройках резервного копирования снять флажки с пунктов "Включить блоки" и "Включить фильтры", восстановление проходит без ошибок!!!

В ответ на Валерий Слободин

Re: Не восстанавливаются курсы в moodle 3.0

от Подин Максим -
Нам не помогло! фильтры у нас и так были выключены, Если блоки выключить то курс переносится пустым, только названия тем в курсе сохраняются.
В ответ на Подин Максим

Re: Не восстанавливаются курсы в moodle 3.0

от Валерий Слободин -
Блоки - это дополнительные функции в курсе (сайте). Какое отношение они имеют к содержанию курса!?

У меня курсы перенеслись абсолютно точно.

В ответ на Валерий Слободин

Re: Не восстанавливаются курсы в moodle 3.0

от Vadim Tabunshchik -
Изображение пользователя Developers
Если в настройках резервного копирования снять флажки с пунктов "Включить блоки" и "Включить фильтры", восстановление проходит без ошибок!!!

Значит, какой-то "левый" блок или фильтр вызывают сбой. "Колитесь", чего такого нестандартного установили на сайт? улыбаюсь

В ответ на Vadim Tabunshchik

Re: Не восстанавливаются курсы в moodle 3.0

от Валерий Слободин -

Фильтров вообще никаких не ставил.

А вот блоков много. Например, случайные задания. Но важно то, что этот блок установлен на 3.0 и работает/

Остальные блоки и модуле посмотрите на рис.

Приложение Дополнения.jpg
В ответ на Vadim Tabunshchik

Re: Не восстанавливаются курсы в moodle 3.0

от Подин Максим -
Вадим, при переключении на режим отладки "Разработчик" никаких ошибок не отображается, в логах MySQL так же не нашли никаких ошибок.
В редакторе XMLDB при проверке индексов и умолчаний проблем не обнаружили. Но при проверке внешних ключей обнаружились некоторые проблемы, которые прилагаю в качестве скрина. Может ли наша проблема возникнуть из-за данных ошибок? Как их исправить? Попробовали выполнить в phpmyadmin "SELECT * FROM {question} t1 LEFT JOIN {question_categories} t2 ON t1.category = t2.id WHERE t1.category <> ? AND t2.id IS NULL;" - он ругается на синтаксис.
Приложение 1.gif
В ответ на Подин Максим

Re: Не восстанавливаются курсы в moodle 3.0

от Vadim Tabunshchik -
Изображение пользователя Developers
В редакторе XMLDB при проверке индексов и умолчаний проблем не обнаружили.

Это хорошо. А схему БД проверили? https://docs.moodle.org/30/en/Verify_Database_Schema

Может ли наша проблема возникнуть из-за данных ошибок? Как их исправить?

Нет, эти сообщения особо не влияют на работу moodle. Их можно не удалять, чтобы чего плохого не наделать по незнанию улыбаюсь

Они просто показывают разработчику, какие "ненужные" записи остаются в таблицах БД при различных действиях пользователя. Например (первый запрос со скрина), категорию вопросов удалили (t2.id IS NULL), а к ней остались приписаны какие-то вопросы.

ругается на синтаксис

Ругается, потому как фигурные скобки нужно убрать и писать префикс таблицы: т. е., не SELECT * FROM {question}, а SELECT * FROM mdl_question

И знак вопроса в запросе кавычить: t1.category <> '?'

ЗЫ: При включенной отладке "Разработчик" и ошибке восстановления курса обязательно должно быть сообщение. Если у вас просто белая страница, сервер зависает, то это не хватает ресурсов сервера для восстановления курса - времени выполнения скрипта, памяти, и т. п.