Ошибка чтения из базы данных

Ошибка чтения из базы данных

от Людмила Татарникова -
Количество ответов: 6

Здравствуйте, уважаемые коллеги!

Периодически вечером (пока заметила два раза) сайт становится недоступным - при попытке загрузки страницы выводится надпись "Ошибка чтения из базы данных" и всё, зайти на сайт нельзя.

Первый раз (это было в субботу) это продлилось недолго, полчаса или час. Второй раз (вчера) вечером я так и не смогла достучаться до сайта, утром сайт уже был доступен, правда, со "сломанными" стилями (стилевой файл не загружался). Заменила папку с темой - всё восстановилось.

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

Искала по названию ошибки, пишут, что надо включить режим отладки, но как его включить, если зайти на сайт нельзя?

Подскажите, пожалуйста, что можно сделать. 

С уважением, Людмила

В ответ на Людмила Татарникова

Re: Ошибка чтения из базы данных

от Vadim Tabunshchik -
Изображение пользователя Developers
  1. Посмотрите логи РНР, должно быть сообщение об ошибке, если сайт не доступен.
  2. Включить режим отладки можно разными способами: в базе данных поставить значение поля debug в таблице _config равным 32767 и debugdisplay = 1 или в config.php добавить строки (см. config-dist.php или тут):
    @error_reporting(E_ALL | E_STRICT);
    @ini_set('display_errors', '1');
    $CFG->debug = (E_ALL | E_STRICT);   // === DEBUG_DEVELOPER
    $CFG->debugdisplay = 1;
В ответ на Vadim Tabunshchik

Re: Ошибка чтения из базы данных

от Людмила Татарникова -

Вадим, большое спасибо за ответ.

  1. Посмотрите логи РНР, должно быть сообщение об ошибке, если сайт не доступен.

Нашла папку /var/log/apache2, в ней файлы и архивы error.log и access.log. Первые - это и есть логи РНР?

Записей во время недоступности сайта нет вообще (смотрела оба дня), последние записи перед сбоем такого типа:

[Mon Jun 20 18:02:59.790147 2016] [:error] [pid 8083] [client ***.***.***.**:*****] Database transaction aborted automatically in /var/www/sdo2/mod/quiz/processattempt.php, referer: http://****.ru/mod/quiz/summary.php?attempt=2***4
[Mon Jun 20 18:04:56.989107 2016] [log_config:warn] [pid 8086] (28)No space left on device: [client ***.***.***.**:*****] AH00646: Error writing to /var/log/apache2/access.log, referer: http://*****.ru/mod/quiz/attempt.php?attempt=2***9

и дальше очень много строк, подобной последней, только время разное. Я правильно понимаю, что на диске нет места? Это может быть причиной недоступности базы данных?

Включить режим отладки в config.php попробую сегодня вечером, если опять будут проблемы (сейчас чищу папку с бэкапами, надеюсь, поможет).

С уважением, Людмила

В ответ на Людмила Татарникова

Re: Ошибка чтения из базы данных

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

Хостинг? В админке - информация о РНР в error_log написано no value?

Значит, если включены логи в панели управления хостинга для сайта, то РНР пишет логи в логи Апача, где вы и смотрели (/var/log/apache2/error.log).

Error writing - ошибка записи в файл и вполне может быть при нехватке места. Да, это же может быть и причиной недоступности базы данных. Места нет - куда писáть? улыбаюсь

В ответ на Vadim Tabunshchik

Re: Ошибка чтения из базы данных

от Людмила Татарникова -

Хостинг? В админке - информация о РНР в error_log написано no value?

Да-да-да! Всё так и есть )

Место вчера освободила - и вечер прошёл без сбоев. Буду следить за свободным местом и "пробивать" расширение его на хостинге.

Спасибо за помощь!

С уважением, Людмила

В ответ на Людмила Татарникова

Re: Ошибка чтения из базы данных

от Kris KIm -

Здравствуйте!

последнее время часто стала появляться ошибка чтения базы данных

Если одновременно открыть 4 - 5 страниц сразу появляется данная ошибка

Ошибка чтения из базы данных
Debug info: MySQL server has gone away
SELECT id, sid, state, userid, lastip, timecreated, timemodified FROM mdl_sessions WHERE sid = ?
[array (
0 => 'ba5sua4n7qq96hgdq6covk9eh3',
)]
Error code: dmlreadexception
Stack trace:
  • line 474 of /lib/dml/moodle_database.php: dml_read_exception thrown
  • line 1088 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()
  • line 1527 of /lib/dml/moodle_database.php: call to mysqli_native_moodle_database->get_records_sql()
  • line 1499 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()
  • line 1478 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select()
  • line 287 of /lib/classes/session/manager.php: call to moodle_database->get_record()
  • line 82 of /lib/classes/session/manager.php: call to core\session\manager::initialise_user_session()
  • line 782 of /lib/setup.php: call to core\session\manager::start()
  • line 26 of /config.php: call to require_once()
  • line 26 of /mod/page/view.php: call to require()

место на сервере есть\подскажите в чем может быть дело?


В ответ на Kris KIm

Re: Ошибка чтения из базы данных

от Дмитрий Парфёнов -

Всем добрый день! Столкнулся с такой же ошибкой при переносе ресурса на новый сервер. Свободного места на диске достаточно. Не получается выявить проблему.