Не могу попасть в админку

Ошибки при использовании модулей, установке и использовании опенкарта
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Не могу попасть в админку

Непрочитанное сообщение santur »

Всем привет! Столкнулся с очень странной и непонятной проблемой, а именно - при переходе на стартовую страницу админки появляется ошибка с следующим содержанием:

Warning: Error while sending QUERY packet. PID=78268 in /home/a/alexzh/public_html/system/library/db/mysqli.php on line 18
Fatal error: Uncaught Exception: Error: MySQL server has gone away<br />Error No: 2006<br />SELECT * FROM `oc_extension` WHERE `type` = 'dashboard' ORDER BY `code` in /home/a/alexzh/public_html/system/library/db/mysqli.php:40 Stack trace: #0 /home/a/alexzh/public_html/system/library/db.php(45): DB\MySQLi->query('SELECT * FROM `...') #1 /home/a/alexzh/public_html/admin/model/setting/extension.php(6): DB->query('SELECT * FROM `...') #2 /home/a/alexzh/main_storage/modification/system/engine/loader.php(251): ModelSettingExtension->getInstalled('dashboard') #3 /home/a/alexzh/public_html/system/engine/proxy.php(47): Loader->{closure}(Array, Array) #4 /home/a/alexzh/main_storage/modification/admin/controller/common/dashboard.php(92): Proxy->__call('getInstalled', Array) #5 /home/a/alexzh/main_storage/modification/system/engine/action.php(79): ControllerCommonDashboard->index() #6 /home/a/alexzh/public_html/admin/controller/startup/router.php(26): Action->execute(Object(Registry), Array) #7 /home/a/alexzh/main_storage/modificatio in /home/a/alexzh/public_html/system/library/db/mysqli.php on line 40

Fatal error: Uncaught Exception: Error: MySQL server has gone away<br />Error No: 2006<br />REPLACE INTO `oc_session` SET session_id = 'a0f254ebf90569a11121f0af7e', `data` = '{\"currency\":\"RUB\",\"user_id\":\"1\",\"user_token\":\"eTCoYlou8bY6WSftYj5UemlqSqvJtlWD\",\"prmn.city_manager\":{\"country_id\":\"176\",\"country_name\":\"\\u0420\\u043e\\u0441\\u0441\\u0438\\u044f\",\"country_name_gc\":\"\\u0420\\u043e\\u0441\\u0441\\u0438\\u0438\",\"country_name_pc\":\"\\u0420\\u043e\\u0441\\u0441\\u0438\\u0438\",\"zone_id\":\"4241\",\"zone_name\":\"\\u0421\\u0432\\u0435\\u0440\\u0434\\u043b\\u043e\\u0432\\u0441\\u043a\\u0430\\u044f\",\"zone_name_gc\":\"\\u0421\\u0432\\u0435\\u0440\\u0434\\u043b\\u043e\\u0432\\u0441\\u043a\\u043e\\u0439\",\"zone_name_pc\":\"\\u0421\\u0432\\u0435\\u0440\\u0434\\u043b\\u043e\\u0432\\u0441\\u043a\\u043e\\u0439\",\"prefix_zone_name\":\"\\u043e\\u0431\\u043b.\",\"district_name\":null,\"district_name_gc\":null,\"district_name_pc\":null,\"prefix_district_name\":null,\"city_name\":\"\\u0412\\u0435\\u0440 in /home/a/alexzh/public_html/system/library/db/mysqli.php on line 40

Такая же ошибка происходит при попытке зайти в модуль import/export pro от DevmanExtension. При этом и сайт и все остальные модули работают штатно. 

Помогите, пожалуйста, разобраться и решить проблему
Аватара пользователя
devimirochnik
Разработчик дополнений
Сообщения: 195
Зарегистрирован: 14.04.2022
Откуда: Россия
Мои дополнения: devimirochnik
Поблагодарил: 3 раз
Спасибо: 14 раз

Re: Не могу попасть в админку

Непрочитанное сообщение devimirochnik »

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

Пишите хостеру. Это проблемы с БД.
Мои модули: Оптимизация, SEO, Скидки, Отчёты и прочее

Оказываю услуги поддержки и выполнения различного рода задач для сайтов (допилы) в рамках самозанятости (фриланс). Стоимость и прочее зависит от задач. График ненормированный, но дело делаю.
Аватара пользователя
AlexDW
Разработчик дополнений
Сообщения: 197
Зарегистрирован: 13.03.2022
Откуда: Екатеринбург
Мои дополнения: alexdw
Поблагодарил: 46 раз
Спасибо: 73 раз

Re: Не могу попасть в админку

Непрочитанное сообщение AlexDW »

santur писал(а): 10 ноя 2022, 10:01 Такая же ошибка происходит при попытке зайти в модуль import/export pro от DevmanExtension. При этом и сайт и все остальные модули работают штатно.
еще как вариант - пробуйте отключить модификатор этого модуля, обновить кэши и понаблюдать
если проблема исчезнет - вероятно причина в способе проверки лицензии именно этого модуля, возможно у автора какие-то сложности с сервером возникли
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

AlexDW писал(а): 10 ноя 2022, 14:14 еще как вариант - пробуйте отключить модификатор этого модуля, обновить кэши и понаблюдать
если проблема исчезнет

К сожалению, не помогло(

Разработчик ответил следующее (перевод с английского): Это ошибка с вашего сервера MYSQL, вероятно, будет решена, если вы увеличите директиву "wait_timeout" в настройках вашего сервера, свяжитесь, пожалуйста, со службой поддержки вашего хостинга.

Хостеру написал, но там посоветовали откатить БД, что тоже не помогло
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

devimirochnik писал(а): 10 ноя 2022, 10:26 Пишите хостеру. Это проблемы с БД.

Хостер, кроме отката БД пока ничего не посоветовал. Базу откатил, но это не помогло(
Аватара пользователя
AlexDW
Разработчик дополнений
Сообщения: 197
Зарегистрирован: 13.03.2022
Откуда: Екатеринбург
Мои дополнения: alexdw
Поблагодарил: 46 раз
Спасибо: 73 раз

Re: Не могу попасть в админку

Непрочитанное сообщение AlexDW »

в БД посмотрите размер таблицы `oc_session`
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

AlexDW писал(а): 10 ноя 2022, 20:22 в БД посмотрите размер таблицы `oc_session`

4,5 Гб
Аватара пользователя
AlexDW
Разработчик дополнений
Сообщения: 197
Зарегистрирован: 13.03.2022
Откуда: Екатеринбург
Мои дополнения: alexdw
Поблагодарил: 46 раз
Спасибо: 73 раз

Re: Не могу попасть в админку

Непрочитанное сообщение AlexDW »

santur писал(а): 11 ноя 2022, 07:46 4,5 Гб
:lol:
возможно что в этом и причина
в тройке баг с сессиями, из-за чего таблица с ними непомерно раздувается, что ни к чему хорошему не приводит

решение в виде модификатора здесь
https://github.com/opencart/opencart/is ... -480609923

создайте файл bugfix_session.ocmod.xml скопируйте в него код

Код: Выделить всё

<modification>
	<name>Bugfix: Session</name>
	<version>3.0.x-1.0</version>
	<code>bugfix-session</code>
	<author>mhccorp.com</author>

	<!-- https://github.com/opencart/opencart/issues/7094 -->
	<file path="system/library/session/db.php">
		<operation>
			<search><![CDATA[$this->expire = ini_get('session.gc_maxlifetime');]]></search>
			<add position="after"><![CDATA[
		if ($this->db) {
			// remove entries older than gc_maxlifetime seconds + 1 day
			$sql = "DELETE FROM `".DB_PREFIX."session` WHERE expire < DATE_SUB(NOW(), INTERVAL ".((int)$this->expire+86400)." SECOND);";
			$this->db->query( $sql );
		}
			]]></add>
		</operation>
	</file>
</modification>

потом закиньте в папку system и обновите кеш модификаторов
 
Аватара пользователя
devimirochnik
Разработчик дополнений
Сообщения: 195
Зарегистрирован: 14.04.2022
Откуда: Россия
Мои дополнения: devimirochnik
Поблагодарил: 3 раз
Спасибо: 14 раз

Re: Не могу попасть в админку

Непрочитанное сообщение devimirochnik »

Ну я бы не стал чистить при каждом запросе табличку.

Хотя бы так
 

Код: Выделить всё

if ($this->db) {
			if (rand(1,10) <= 2) {
				$this->db->query("delete from `" . DB_PREFIX . "session` where `expire` < DATE_SUB(NOW(), INTERVAL 30 DAY);");
			}
		}
Ну и плюс в моём примере 30 дней - это как-то более объективно. Ну можно 7 дней поставить. Там просто столько сессий не накопится при небольшой посещаемости сайта, чтобы это было криптично.

Конечно, можно выставлять параметр сессии session.gc_maxlifetime, но многие ли это делают?)
Мои модули: Оптимизация, SEO, Скидки, Отчёты и прочее

Оказываю услуги поддержки и выполнения различного рода задач для сайтов (допилы) в рамках самозанятости (фриланс). Стоимость и прочее зависит от задач. График ненормированный, но дело делаю.
Аватара пользователя
devimirochnik
Разработчик дополнений
Сообщения: 195
Зарегистрирован: 14.04.2022
Откуда: Россия
Мои дополнения: devimirochnik
Поблагодарил: 3 раз
Спасибо: 14 раз

Re: Не могу попасть в админку

Непрочитанное сообщение devimirochnik »

Ну и плюс учитывайте, что первая очистка такой здоровой таблицы это много времени может потребоваться.
Мои модули: Оптимизация, SEO, Скидки, Отчёты и прочее

Оказываю услуги поддержки и выполнения различного рода задач для сайтов (допилы) в рамках самозанятости (фриланс). Стоимость и прочее зависит от задач. График ненормированный, но дело делаю.
Аватара пользователя
nikifalex
Разработчик дополнений
Сообщения: 365
Зарегистрирован: 17.03.2022
Откуда: Россия
Поблагодарил: 8 раз
Спасибо: 45 раз
Контактная информация:

Re: Не могу попасть в админку

Непрочитанное сообщение nikifalex »

индекс бы по expire еще.
а вообще такое бы по крону делать.
Но насчет сессии это все просто одно из предположений, и может не помочь
усовершенствую сайты, чиню всякое.
Аватара пользователя
AlexDW
Разработчик дополнений
Сообщения: 197
Зарегистрирован: 13.03.2022
Откуда: Екатеринбург
Мои дополнения: alexdw
Поблагодарил: 46 раз
Спасибо: 73 раз

Re: Не могу попасть в админку

Непрочитанное сообщение AlexDW »

nikifalex писал(а): 11 ноя 2022, 11:09 Но насчет сессии это все просто одно из предположений, и может не помочь
может это и не решит первоначальную проблему
но точно будет не лишним
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

AlexDW писал(а): 11 ноя 2022, 08:08 возможно что в этом и причина
в тройке баг с сессиями, из-за чего таблица с ними непомерно раздувается, что ни к чему хорошему не приводит

К сожалению, не помогло( Размер таблицы сократился до 1,4 гб, но проблема осталась...
Аватара пользователя
nikifalex
Разработчик дополнений
Сообщения: 365
Зарегистрирован: 17.03.2022
Откуда: Россия
Поблагодарил: 8 раз
Спасибо: 45 раз
Контактная информация:

Re: Не могу попасть в админку

Непрочитанное сообщение nikifalex »

ошибка прямо сразу или спустя несколько секунд?
интересно было бы посмотреть на show full processlist;

 
усовершенствую сайты, чиню всякое.
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

nikifalex писал(а): 14 ноя 2022, 08:28 ошибка прямо сразу или спустя несколько секунд?
интересно было бы посмотреть на show full processlist;

Спустя несколько секунд. Сначала долго грузится, а потом ошибка появляется.
Подскажите, что такое show full processlist?
Аватара пользователя
nikifalex
Разработчик дополнений
Сообщения: 365
Зарегистрирован: 17.03.2022
Откуда: Россия
Поблагодарил: 8 раз
Спасибо: 45 раз
Контактная информация:

Re: Не могу попасть в админку

Непрочитанное сообщение nikifalex »

santur писал(а): 14 ноя 2022, 08:40
nikifalex писал(а): 14 ноя 2022, 08:28 ошибка прямо сразу или спустя несколько секунд?
интересно было бы посмотреть на show full processlist;

Спустя несколько секунд. Сначала долго грузится, а потом ошибка появляется.
Подскажите, что такое show full processlist?

phpmyadmin
этот запрос надо выполнить непосредственно по время этих тормозов, когда тупит но ошибки еще нет.
 
усовершенствую сайты, чиню всякое.
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

nikifalex писал(а): 14 ноя 2022, 08:51
santur писал(а): 14 ноя 2022, 08:40
nikifalex писал(а): 14 ноя 2022, 08:28 ошибка прямо сразу или спустя несколько секунд?
интересно было бы посмотреть на show full processlist;

Спустя несколько секунд. Сначала долго грузится, а потом ошибка появляется.
Подскажите, что такое show full processlist?

phpmyadmin
этот запрос надо выполнить непосредственно по время этих тормозов, когда тупит но ошибки еще нет.
 ИзображениеIdUserHostdbCommandTimeStateInfoRows_sentRows_examined=left =leftИзображение Завершить=left775609738=leftalexzh=leftlocalhost=leftalexzh_main=leftQuery=left0=leftstarting=leftSHOW FULL PROCESSLIST=left0=left0=leftИзображение Завершить=left775609739=leftalexzh=leftlocalhost=leftNULL=leftSleep=left0=left =leftNULL=left324=left324
Аватара пользователя
nikifalex
Разработчик дополнений
Сообщения: 365
Зарегистрирован: 17.03.2022
Откуда: Россия
Поблагодарил: 8 раз
Спасибо: 45 раз
Контактная информация:

Re: Не могу попасть в админку

Непрочитанное сообщение nikifalex »

э.... там должна быть табличка, в табличке запросы. один из запросов ваш, а второй на котором сайт висит.
А у вас какая то тарабарщина. Но направление правильное.
скриншот что-ли сделайте.
Но важно отловить именно нужный момент
усовершенствую сайты, чиню всякое.
santur
Сообщения: 29
Зарегистрирован: 10.03.2022
Поблагодарил: 11 раз

Re: Не могу попасть в админку

Непрочитанное сообщение santur »

nikifalex писал(а): 14 ноя 2022, 09:45 скриншот что-ли сделайте.

Да, я просто скопировал текст таблицы. Не разобрался сначала как скриншот сюда прикреплять.
Собственно, вот скрин: https://prnt.sc/tRv14ygwKqUA
Аватара пользователя
nikifalex
Разработчик дополнений
Сообщения: 365
Зарегистрирован: 17.03.2022
Откуда: Россия
Поблагодарил: 8 раз
Спасибо: 45 раз
Контактная информация:

Re: Не могу попасть в админку

Непрочитанное сообщение nikifalex »

увы, тут пусто. либо проблема не тут, либо не отловили момент.
усовершенствую сайты, чиню всякое.
Ответить