Удаление ботов и ненужных посетителей с сайта

FM
На сайте с 31.10.2011
Offline
113
3951

Приветствую! Столкнулся с проблемой, на данных момент бд сайта весит аж 71 мб, проанализировав стало понятно, что в таблице dle_users 100к пользователей и таблица весит 20 мб.

Помогите избавиться от лишних пользователей, например, как удалить юзеров, посетивших сайт только 1 раз за всё время?

Если есть еще какие способы оптимизации бд DLE - то я буду только благодарен :idea:

sear4er
На сайте с 04.03.2010
Offline
756
#1

Если место принципиально, удалить в небытие, если они были один раз - захотят вновь придти - зарегистрируются ещё раз.

Профессиональный SEO аудит с гарантией результата (форум). ( /ru/forum/824674 ) EVOLUTION SEO - Оптимизация, продвижение сайтов, вывод из под фильтров (личный сайт). ( https://evoseo.ru ) Бесплатные SEO консультации. ( https://evoseo.ru/seo-consultaciya/ )
FM
На сайте с 31.10.2011
Offline
113
#2
sear4er:
Если место принципиально, удалить в небытие, если они были один раз - захотят вновь придти - зарегистрируются ещё раз.

удалить всю таблицу? Есть пользователи, чьи профили ни в коем случае удалять нельзя..

VHS-1980
На сайте с 21.05.2010
Offline
91
#3

Имелось в виду удаление неактивных пользователей, с 0 сообщений и т.п., вообщем всех, кто подпадает под подозрение в виде бота.

Как удалить? Ищите нужный параметр и DELETE FROM dle_users WHERE полеБД [оператор сравнения] значение

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

Вам нужно искать способы защиты от массовых регистраций.

FM
На сайте с 31.10.2011
Offline
113
#4

Хостинг написал, что именно бд нагружает сервер, за счет чего порой на сайте ошибка 502, 504. Хотя при посещаемости 80к проблем не возникало, сейчас на время стало 20к и сайт работает не стабильно и это мягко сказано

VHS-1980
На сайте с 21.05.2010
Offline
91
#5
FC1488SM:
Хостинг написал, что именно бд нагружает сервер, за счет чего порой на сайте ошибка 502, 504. Хотя при посещаемости 80к проблем не возникало, сейчас на время стало 20к и сайт работает не стабильно и это мягко сказано

работа с БД, количество и вес запросов БД и размер БД - несколько разные вещи.

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#6

Все делаем в ПХПМайАдмине:

Для начала


SELECT COUNT(`user_id`) FROM `dle_users` WHERE `lastdate`=`reg_date`

Смотрим сколько юзеров ниразу не входили в свой аккаунт.

Если их много, то следующий шаг


DELETE FROM `dle_users` WHERE `lastdate`=`reg_date`

удаление юзеров, этих самых юзеров

Подпись))
Korew
На сайте с 31.12.2007
Offline
195
#7

Милованов Ю.С, таким образом удалятся и только что зарегистрированные пользователи :)

ТС, есть хак - http://0-web.ru/dle/hack-dle/293-search-single-use-accaunt.html

делает тоже самое, что написал Милованов Ю.С, только не трогает совсем "свежих" пользователей.

Что бы избежать массовых регистраций - используйте систему вопрос-ответ. Берете какой-нибудь простой вопрос по тематике вашего сайта и пишите побольше вариантов ответа на него (разные раскладки, языки, с ошибками и т.д.).

siv1987
На сайте с 02.04.2009
Offline
427
#8

Если не трогать совсем свежих


DELETE FROM `dle_users` WHERE `lastdate`=`reg_date` AND reg_date<UNIX_TIMESTAMP(NOW()-INTERVAL 30 DAY)
FM
На сайте с 31.10.2011
Offline
113
#9

Милованов Ю.С, Korew, siv1987, спасибо! То что нужно, правда работоспособность сайта не изменилась :(

siv1987
На сайте с 02.04.2009
Offline
427
#10

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий