MySQL сервер ушел Ошибка №: 2006 - PullRequest
0 голосов
/ 21 января 2020

Мне нужна ваша помощь, друзья. Я использую Open Cart 3, и когда я проверяю свои журналы, я вижу эту ошибку:

[11-Jan-2020 04:12:05 UTC] PHP Fatal error:  Uncaught Exception: Error: MySQL server has gone away<br />Error No: 2006<br />SELECT * FROM oc_currency in /home/nnhmetwhlxad/public_html/system/library/db/mysqli.php:40
Stack trace:
#0 /home/nnhmetwhlxad/public_html/system/library/db.php(45): DB\MySQLi->query('SELECT * FROM o...')
#1 /home/nnhmetwhlxad/public_html/system/library/cart/currency.php(10): DB->query('SELECT * FROM o...')
#2 /home/nnhmetwhlxad/public_html/catalog/controller/startup/startup.php(160): Cart\Currency->__construct(Object(Registry))
#3 /home/nnhmetwhlxad/storage2/modification/system/engine/action.php(79): ControllerStartupStartup->index()
#4 /home/nnhmetwhlxad/public_html/system/engine/router.php(67): Action->execute(Object(Registry))
#5 /home/nnhmetwhlxad/public_html/system/engine/router.php(46): Router->execute(Object(Action))
#6 /home/nnhmetwhlxad/public_html/system/framework.php(165): Router->dispatch(Object(Action), Object(Action))
#7 /home/nnhmetwhlxad/public_html/system/startup.php(104): require_once('/home/nnhmetwhl...')
#8 /ho in /home/nnhmetwhlxad/public_html/system/library/db/mysqli.php on line 40

Ответы [ 2 ]

0 голосов
/ 22 января 2020

Сервер MySQL ушел (ошибка 2006) имеет две основные причины и решения:

  • Сервер отключил тайм-аут и закрыл соединение. Чтобы исправить это, убедитесь, что переменная wait_timeout mysql в вашем файле конфигурации my.cnf достаточно велика.
  • Вам также может потребоваться увеличить переменную innodb_log_file_size mysql в конфигурации my.cnf, например, до 128 МБ или выше.
  • Сервер отбросил неверный или слишком большой пакет. Если mysqld получает слишком большой или неправильный пакет, он предполагает, что с клиентом что-то не так, и закрывает соединение. Чтобы исправить это, вы можете увеличить максимальный размер пакета max_allowed_packet в файле my.cnf, например. установите max_allowed_packet = 128M, затем перезапустите сервер MySQL: sudo /etc/init.d/mysql restart
0 голосов
/ 22 января 2020

РЕШЕНИЕ, которое Я НАШЕЛ:

Mysqli контролируется вашим хостом, а не самой opencart.

Возможно, это временная проблема, поскольку хостинговые компании перезагружают серверы в разное время.

Это также может быть проблемой тайм-аута, когда сервер никогда не получает результат от вызова MySQLI, поскольку процесс имеет застопорился.

Последнее может произойти, потому что автоматическое c обновление валюты в бэкэнде администратора,

Отключение автоматическое c обновление валюты на System > Settings > Local > Auto Update Currency и попробуйте еще раз.

ПРИМЕЧАНИЕ: Refre sh ваша панель и ошибки устранены. Надеюсь, это поможет!

...