#cakephp #cakephp-3.2
#cakephp #cakephp-3.2
Вопрос:
Я работаю над CakePHP 3.2
Мое приложение раньше работало нормально, но за последние несколько дней выдавало ошибку как
Ошибка: SQLSTATE[HY000]: Общая ошибка: 2006 сервер MySQL исчез
SQL-запрос
ВЫБЕРИТЕ Categories.id КАК
Categories__id
, Категории.название КАКCategories__title
, Категории.описание КАКCategories__description
, Категории.значок КАКCategories__icon
, Categories.c_status КАКCategories__c_status
, Categories.создан КАКCategories__created
, Categories.изменен КАКCategories__modified
ИЗ категорий categories, ГДЕ Categories.c_status = 1
и еще одно предложение
If you are using SQL keywords as table column names, you can enable identifier quoting for your database connection in config/app.php.
Я попробовал включить идентификатор в app.php
то же время с той же ошибкой.
Исходный код для сгенерированного запроса
$menu_categories = $this->Categories->find('all', [
'conditions' => [
'Categories.c_status' => 1,
],
'contain' => [
'Subcategories.ProductTypes' => [
'conditions' => [
'ProductTypes.status' => 1,
],
],
'CategoryBanners' => [
'conditions' => [
'CategoryBanners.status' => 1,
],
],
],
]);
$this->set('menu_categories', $menu_categories);
Что может быть причиной ошибки ?
Комментарии:
1. Эта ошибка поступает прямо из MySQL, вы Погуглили ее, чтобы увидеть общие причины и решения?
2. выполнение запроса в phpmyadmin работает нормально
3. Тем не менее, поиск в сообщении об ошибке в Google поможет вам найти некоторые методы диагностики, которые вы можете запустить в MySQL, чтобы помочь сузить причину, а знание причины должно упростить ее устранение. В противном случае все, что вы получите здесь, — это догадки.
Ответ №1:
У меня была эта ошибка, и оказалось, что это проблема с настройкой «max_allowed_packet» для базы данных. Я увеличил свой по умолчанию до 16 МБ, и это решило мою проблему. Что-то, что можно проверить и поэкспериментировать, если у вас или у кого-либо еще возникла эта ошибка.