Очистка таблицы redirect_links

При создании резервной копии одного из сайтов, работающего на Joomla 3.4, случайно заметил, что файл дампа базы данных резко вырос с привычного 1 Мб до 7 Мб. Это особенно странно, так как сайт не большой, хотя и с хорошей посещаемостью. Оказалось, распухла таблица redirect_links.

Как выяснилось на практике, в русскоязычном сегмента интернета все только и спрашивают "Подскажите, для чего таблица redirect_links?", "Можно ли почистить таблицу redirect_links?" или "Можно ли восстановить эту таблицу как пустую?"... ответа так и не нашёл. Зато в англоязычном сегменте сразу удалось заполучить отличное решение.

Оказывается, достаточно выполнить запрос через phpMyAdmin

DELETE FROM `префикс_redirect_links` WHERE `published` IN (0,2,-2)

Автор запроса: Dmitry Rekun

Конечно же, "префикс" надо поменять на Ваш префикс для конкретного сайта.

В результате выполнения запроса все снятые с публикации, архивные или помещенные в корзину элементы компонента Redirect (то есть com_redirect) будут сброшены из таблицы redirect_links, а все опубликованные элементы останутся нетронутыми.

В чем причина? Оказывается таблица забивается тысячами запросов, даже если они не верные. Особенно активно проходит засорение, если сайт сканируют роботы, стараясь взломать сайт и получить к нему доступ. Даже если этого им не удается достичь, они оставляют массу нелепых вопросов в базе данных. Толку от этого никакого, только база данных забивается и работа сайта замедляется.

Общие рекомендации: если не пользуетесь компонентом com_redirect, есть смысл его отключить. А если пользуетесь, то стоит время от времени выполнять указанный волшебный запрос для очистки таблицы.

Заодно рекомендую посмотреть на содержимое и объем finder_links_terms - не слишком ли она раздулась? Можно отключить плагин 'Умного поиска', а потом выполнить очистку в компоненте умного поиска, для чего заходим в админку и выбираем Компоненты -> Умный поиск -> Очистка.

Да и вообще, не плохо зайти в Расширения -> Менеджер плагинов, строке поиска набрать "Умный" и отключить всё, что только попадает в поле зрения. Кстати, с детства не люблю названия программных продуктов или плагинов, которые содержат прилагательное "Умный"!

Ну а раз мы взялись за уборку, не пора ли почистить jos_session? Периодически я выполняю запрос TRUNCATE TABLE имя_таблицы. Сбрасывается информация о сессиях.

6 комментарии

Авторизуйтесь, чтобы получить возможность оставлять комментарии
Go to top