#Что означает сообщение
SQL ERROR
Включите отладку, посмотрите текст SQL-ошибки, проверьте версию PHP и базы, права и место.
#Причины и признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Нет места | Проверьте свободное место именно на целевом и временном дисках операции, включая папку для промежуточных файлов. | Освободите подтверждённо заполненный том, не удаляя системные каталоги и единственные копии данных. |
| Повреждена таблица | Отдельно проверьте фактор «Повреждена таблица» в момент, когда возникает описанная неисправность; сравните с работой исправного устройства или настройки. | Если проверка подтверждает «Повреждена таблица», исправьте только относящийся к нему элемент, сохранив прежнее значение и возможность возврата. |
| Версия PHP | Сверьте версию установленного компонента с требованиями программы и временем появления ошибки, особенно после последнего обновления. | Устанавливайте подтверждённо совместимое обновление из официального источника; перед заменой сохраняйте настройки и вариант возврата. |
| Неверные данные | Отдельно проверьте фактор «Неверные данные» в момент, когда возникает описанная неисправность; сравните с работой исправного устройства или настройки. | Если проверка подтверждает «Неверные данные», исправьте только относящийся к нему элемент, сохранив прежнее значение и возможность возврата. |
#Пошаговое решение
- Проверьте исходные условияВ сообщении phpBB
General Error / SQL ERROR [ mysqli ]найдите текст внутри квадратных скобок, код SQL и название операции. Скопируйте сообщение без паролей, персональных данных и полного пути к закрытым файлам. Отдельно зафиксируйте, после какой операции ошибка возникает — вход, поиск, публикация, установка расширения. - Включите отладкуВ панели хостинга или через SSH проверьте состояние сервера MySQL/MariaDB и его журнал на то же время. Ошибка
2002/2003обычно связана с соединением,1045с доступом,1146с отсутствующей таблицей, а1205с ожиданием блокировки — нельзя лечить их одной командой. - Проверьте другую возможную причинуЕсли сбой начался после обновления расширения phpBB, сохраните базу и файлы, затем проверьте совместимость расширения с вашей версией phpBB/PHP. Отключайте лишь подтверждённо проблемное расширение штатным способом; не удаляйте его таблицы и не запускайте
REPAIR TABLEдля InnoDB наугад. - Проверьте итогПосле устранения конкретной причины очистите кэш через панель phpBB, затем воспроизведите исходное действие и проверьте отсутствие ошибок в журналах. Если повреждение базы подтверждено, используйте проверенную резервную копию и процедуру восстановления, подходящую именно для вашей СУБД и типа таблиц.
#На что обратить внимание
Не запускайте массовый REPAIR/ALTER без понимания типа таблицы и резервной копии. На публичном форуме отключите показ подробных SQL-ошибок посетителям.