Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Таблица oc_session больше 800 мб


Recommended Posts

Здравствуйте, сегодня зашел в бд и удивился её размеру таблица oc_session 857 мб.  https://prnt.sc/r7i5uo

Использую движок ocStore 3.0.2.0 php 7.2 на сайте пока что посетителей мало, откуда такой размер таблицы?

Я так понимаю это не нормально! Кто с этим сталкивался как почистить и не повлечет ли это проблем.

На данном форуме инфы об этом толком нет

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

 

прошу подсказать может кто сталкивался да и знахарей тут хватает!

Надіслати
Поділитися на інших сайтах


Очистите таблицу через phpmyadmin (не удалить, а именно очистить)

 

4 часа назад, aleksss454 сказал:

не повлечет ли это проблем

 

Слетит авторизация у всех, разве что.

Надіслати
Поділитися на інших сайтах

clean-session-db-oc3.ocmod.xml

Добавте етот модификатор в папка system и обновите модификаторов в админ.

Удаляет все сесии кроме 1 ден.

Не удаляйте и все будет ок.

  • +1 7
Надіслати
Поділитися на інших сайтах

20 минут назад, Agatha65 сказал:

clean-session-db-oc3.ocmod.xml 743 \u0411 · 0 downloads

Добавте етот модификатор в папка system и обновите модификаторов в админ.

Удаляет все сесии кроме 1 ден.

Не удаляйте и все будет ок.

Мне больше нравится решение из 3.1

Надіслати
Поділитися на інших сайтах

17 часов назад, Agatha65 сказал:

clean-session-db-oc3.ocmod.xml 743 \u0411 · 3 downloads

Добавте етот модификатор в папка system и обновите модификаторов в админ.

Удаляет все сесии кроме 1 ден.

Не удаляйте и все будет ок.

Спасибо попробую.

Надіслати
Поділитися на інших сайтах


17 часов назад, chukcha сказал:

Мне больше нравится решение из 3.1

из 3.1  - а можно поподробнее что за решение? И где что заменить?

  • +1 2
Надіслати
Поділитися на інших сайтах


26 минут назад, aleksss454 сказал:

из 3.1  - а можно поподробнее что за решение? И где что заменить?

посмотрите на гите как это сделано

Но мод от @Agatha65 вполне приемлем

 

Надіслати
Поділитися на інших сайтах

  • 11 months later...
  • 3 weeks later...
В 26.02.2020 в 18:01, Agatha65 сказал:

clean-session-db-oc3.ocmod.xml 743 \u0411 · 119 downloads

Добавте етот модификатор в папка system и обновите модификаторов в админ.

Удаляет все сесии кроме 1 ден.

Не удаляйте и все будет ок.

Плюсую! :eek:

Было 600 Мб, стало 23. Еще бы c CartKeeper'ом разобраться - освободилось бы еще 12 Мб.

Надіслати
Поділитися на інших сайтах

4 часа назад, SergeTkach сказал:

Было 600 Мб, стало 23. Еще бы c CartKeeper'ом разобраться - освободилось бы еще 12 Мб

CartKeeper - какое отношение имеет к теме?

и что-то в его покупателях не числитесь, какое отношение он имеет к вам?

Надіслати
Поділитися на інших сайтах

42 минуты назад, AlexDW сказал:

CartKeeper - какое отношение имеет к теме?

Темы касает очень косвенно, но касается. Ведь речь о заполнении базы. И, да, по сравнению с 600 Мб, которые добавили сессии, 12 Мб - это ерунда. Претензий к Вам по этому поводу не высказывал. Просто поворчал. Я люблю ворчать.

 

---

42 минуты назад, AlexDW сказал:

в его покупателях не числитесь, какое отношение он имеет к вам?

Работаю с сайтом metal-mangal.ru. Скопировал себе на локалку. 15 минут ждал, когда бекап базы загрузится. Ворчливое настроение от этого и появилось. Было ж интересно посмотреть все таблицы, которые весят лишнего при 300 товарах-то - откуда 23 Мб осталось после удаления сессий?!

Надіслати
Поділитися на інших сайтах

13 минут назад, SergeTkach сказал:

Работаю с сайтом

ок, теперь понятно

судя по всему, стоит старая версия 1.30 - у нее был баг логики, приводящий к росту

с версии 1.31 это устранено, достаточно обновиться

Надіслати
Поділитися на інших сайтах

1 минуту назад, AlexDW сказал:

ок, теперь понятно

судя по всему, стоит старая версия 1.30 - у нее был баг логики, приводящий к росту

с версии 1.31 это устранено, достаточно обновиться

Да, 1.30. Спасибо! )

Скажу клиенту. У меня архива нету.

Надіслати
Поділитися на інших сайтах

  • 2 months later...

Столкнулся с той же проблемой  - гигантский размер таблицы с сессиями. Модификатор поставил. Но интересна причина.

Скажите, это нормально, что за день таблица растёт на 10000 строк при посещаемости в тыщу человек?

Надіслати
Поділитися на інших сайтах


10 minutes ago, gandhari said:

что за день таблица растёт на 10000 строк при посещаемости в тыщу человек?

это норм. посещения от поисковых роботов так же стартуют сессии - а посещений от них нередко даже больше чем от клиентов.

 

Как вариант, можно давать ботам 10минутную сессию, в отличие от длинной клиентской, что бы в самое ближайшее время она была удалена. Тогда в таблице будут копиться только живые сессии живых посетителей

Надіслати
Поділитися на інших сайтах

3 минуты назад, 100napb сказал:

это норм. посещения от поисковых роботов так же стартуют сессии - а посещений от них нередко даже больше чем от клиентов.

Вот я как раз на роботов и грешу, т.к.:

1) резкий рост таблицы начался после замены старого сайта на этот

2) каждая пятая сессия - из USA

3 минуты назад, 100napb сказал:

Как вариант, можно давать ботам 10минутную сессию, в отличие от длинной клиентской, что бы в самое ближайшее время она была удалена. Тогда в таблице будут копиться только живые сессии живых посетителей

Это сложно реализовать?

И не навредит ли это индексации?

Змінено користувачем gandhari
Надіслати
Поділитися на інших сайтах


18 hours ago, gandhari said:

Это сложно реализовать?

И не навредит ли это индексации?

нет, не сложно.

нет, не навредит, поскольку боты не кладут товары в корзинку и не совершают каких-либо иных длительных взаимодействий с сайтом, которые бы были завязаны на данные, хранимые в сессиях.

Однако конкретных и публичных инструкций давать постесняюсь. Если будет желание - напишите в личку.

 

18 hours ago, gandhari said:

каждая пятая сессия - из USA

следует посмотреть accesss-логи веб-сервера и посмотреть по заголовкам, кому принадлежат эти сессии. С большой долей вероятности это может быть какой-то невежливый или даже бесполезный \ зловредный бот. Если так, то следует просто ограничить доступ к сайту для этого робота. Визиты от всяких SemrushBot, AhrefsBot, MJ12bot и прочих подобных как правило никакой ценности не несут и лишь создают нагрузку.

Змінено користувачем 100napb
  • +1 1
Надіслати
Поділитися на інших сайтах

  • 8 months later...
В 26.02.2020 в 19:01, Agatha65 сказал:

clean-session-db-oc3.ocmod.xml 743 \u0411 · 371 downloads

Добавте етот модификатор в папка system и обновите модификаторов в админ.

Удаляет все сесии кроме 1 ден.

Не удаляйте и все будет ок.

Agatha как всегда молодец. Этот модуль просто незаменим, да еще и бесплатно. Спасибо.

Надіслати
Поділитися на інших сайтах


  • 8 months later...
26.02.2020 в 18:01, Agatha65 сказал:

clean-session-db-oc3.ocmod.xml 743 \u0411 · 504 скачивания

Добавте етот модификатор в папка system и обновите модификаторов в админ.

Удаляет все сесии кроме 1 ден.

Не удаляйте и все будет ок.

Внимание, после этих действий сразу же идет брутфорс на админку сайта!!!!!!

Надіслати
Поділитися на інших сайтах


28.08.2022 в 14:12, TirexStoner сказал:

Внимание, после этих действий сразу же идет брутфорс на админку сайта!!!!!!

не врите
 

<?xml version="1.0" encoding="UTF-8"?>
<modification>
	<name>Clean Database Session Table oc3</name>
	<code>clean-session-table</code>
	<version>1.0</version>
	<author>agatha65.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>

покажите место атаки

Надіслати
Поділитися на інших сайтах

28.08.2022 в 15:17, chukcha сказал:

не врите
 

<?xml version="1.0" encoding="UTF-8"?>
<modification>
	<name>Clean Database Session Table oc3</name>
	<code>clean-session-table</code>
	<version>1.0</version>
	<author>agatha65.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>

покажите место атаки

Привет из ХА_)

я просто констатирую факт что после заливки файла на хост началась атака брутфорсом, так что сайт лег. Админы хоста подтвердили атаку со множества ip
а уже где там сам код для атаки или передачи данных для атаки я не разбирал!

Надіслати
Поділитися на інших сайтах


28.08.2022 в 15:42, SergeTkach сказал:

После не значит вследствие...

ну да, конечно, закинул один файл, обновил модификации и тут сайт лег, а после обнаружили попытку взлома!
причина - следствие на лицо!


хм, интересно, если я закину на другой акк того же хоста и начнется брутфорс, вы тоже скажите что это не из за файла???

Надіслати
Поділитися на інших сайтах


28.08.2022 в 15:34, TirexStoner сказал:

данных для атаки я не разбирал!

я вам показал весь код. Ищите.

 

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.