Здравствуйте. У меня интернет магазин dom . net . ua на Opencart 1.5.6 при заполнении нового товара или редактирования (когда нажимаю клавишу сохранить) выкидывает из админки на страницу авторизации и пишет вот что: Мне сказали что есть медленные запросы я зашел но не могу понять что за ряды и что за сканирование (IP не наш) Дата Скан. рядов Получено рядов Время Блокировка IP 16.03.2015 10:42:07 6018442 2338 00:00:05 00:00:00 91.206.201.86 Текст запроса - SELECT p.product_id, pd.name, GROUP_CONCAT( DISTIN Что это такое, возможно вирус? Подскажите пожалуйста
Что за сканирование, не знаю, а Ряды - это надмозговый перевод слова Rows, строки. Строки базы данных, которые на что-то проверялись.
Спасибо, мне это уже объяснили, что это строки БД, а вот кто их проверяет и зачем в таком количестве?
Вы же понимаете, что спрашиваете это у людей, которые не имеют доступа к вашему серверу и исходникам?
Да, я просто спрашиваю может ли это быть вирус, либо чтото еще? Возможно у кого то была похожая проблема.
Окей, скажу более понятно - с равной вероятностью это может быть чем угодно. Или чем угодно, маскирующимся под что угодно.
SELECT p.product_id, pd.name, GROUP_CONCAT( DISTINCT CAST(pc.category_id AS CHAR(11)) SEPARATOR \",\" ) AS categories, p.sku, p.upc, p.ean, p.jan, p.isbn, p.mpn, p.location, p.quantity, p.model, m.name AS manufacturer, p.image AS image_name, p.shipping, p.price, p.points, p.date_added, p.date_modified, p.date_available, p.weight, wc.unit, p.length, p.width, p.height, p.status, p.tax_class_id, p.viewed, p.sort_order, pd.language_id, ua.keyword, pd.description, pd.meta_description, pd.meta_keyword, pd.tag, pd.seo_title, pd.seo_h1, p.stock_status_id, mc.unit AS length_unit, p.subtract, p.minimum, GROUP_CONCAT( DISTINCT CAST(pr.related_id AS CHAR(11)) SEPARATOR \",\" ) AS related FROM `oc_product` p LEFT JOIN `oc_product_description` pd ON p.product_id=pd.product_id AND pd.language_id=1 LEFT JOIN `oc_product_to_category` pc ON p.product_id=pc.product_id LEFT JOIN `oc_url_alias` ua ON ua.query=CONCAT('product_id=',p.product_id) LEFT JOIN `oc_manufacturer` m ON m.manufacturer_id = p.manufacturer_id LEFT JOIN `oc_weight_class_description` wc ON wc.weight_class_id = p.weight_class_id AND wc.language_id=1 LEFT JOIN `oc_length_class_description` mc ON mc.length_class_id=p.length_class_id AND mc.language_id=1 LEFT JOIN `oc_product_related` pr ON pr.product_id=p.product_id GROUP BY p.product_id ORDER BY p.product_id, pc.category_id Я не понимаю в запросах БД помогите пожалуйста понять что значит этот запрос. Добавлено спустя 30 секунд: Спасобо что тратите свое время на меня.
Пробежал по диагонали. Запрашивает список продуктов/товаров с их свойствами и ссылками на них. Ничего сверхъестественного не вижу.
1) У вас резкий наплыв посетителей; 2) Вас DDOSят конкуренты; 3) Вас усиленно парсят; Выбирайте любой.
Сомневаюс, что это из-за слабого хостинга. Больше похоже как раз на DDOS-атаку. Добавлено спустя 39 секунд: Автор, а еще у тебя что-то сломалось:
А можете сказать что могло сломаться, хотя бы приблизительно? Добавлено спустя 1 минуту 7 секунд: но я же делал откат на 2 дня сразу как возникла проблема, поломка этим не могла исправиться?
Переведите текст ошибок на русский, поймете "приблизительно" что сломалось и, более того, в каком файле и в какой строке.
ты правда поверил в эти цифры? у движка просто на страницу делается 20-100 запросов. это без малого 6 миллионов. Добавлено спустя 5 минут 7 секунд: проблема может быть, например, в том, что кеш не работает. или автор подключил много красивеньких но тупых плагинов. поэтому запросов овер-дохера.
То есть у него минимум 10.000 посетителей в секунду? Тогда это подпадает в пункт "наплыв посетителей".
программисты! 6млн это то же самое, что 9000. просто "слишком много". Добавлено спустя 29 секунд: автор, ты конкретно тот долгий запрос уже искал, зачем он и где? Добавлено спустя 5 минут 8 секунд: и еще, не стоит на статус 404 выдавать здоровенную хуету со всеми эпическими подменю, шапками и подвалами, которые стопудово тоже просят по 100 sql-query. представим: обычная страничка по недосмотру обращается к паре дохлых ресурсов. сама страничка делает кучу запросов и каждый четырестачетвертый еще столько же. итого: много-много запросов.
Добавлено спустя 5 минут 7 секунд: Я поставил только 4 плагина которые не шли в базовой комплектиации OcShop 1.5.6, это новости, фильтр (CoolFilter by ocshop.info) и плагин выкачки БД и табы, и все это работало 2 месяца нормально, было 70/80 тысяч, эти 6 млн появились только 12, 13 и 16 марта 2015. Добавлено спустя 2 минуты 2 секунды: У меня 100 посетителей за день всего Добавлено спустя 1 минуту 54 секунды: Я зашел в панель хост админки, там есть такое MySQL - Медленные запросы и там таблица запросов по днях, вот там и нашел эти 6 милионов Добавлено спустя 4 минуты 54 секунды: Спасибо, я дал задание верстальщику порезать 404 страницу. Добавлено спустя 1 минуту 13 секунд: Да, как я писал выше, это панель хост админки, там есть такое "MySQL - Медленные запросы" и там таблица запросов по днях, вот там и нашел эти 6 милионов.
6 млн __(чего)___ за ___(срок)___ ? сервера просто не способны принимать столько запросов за секунды. вангую: «за время измерений в slow-log накоплено порядка 6млн записей. запрос, который процитирован, выполняся 5сек.» так? Добавлено спустя 9 минут 2 секунды: запрос этот с group_concat() конечно чудовищный. надеюсь он не из самого движка, а сбоку припеку. потому что он 1. неверный, нельзя так группировать, и 2. жрет ресурсы мама не горюй найти источник и вырезать!
Фел, поциент плачет над майсиквельным слоу-логом. не бывает миллионов медленных запросов за секунды! потому что они медленные. Добавлено спустя 1 минуту 10 секунд: Чтобы решить задачу надо сначала нормально ее сформулировать. Поэтому я здесь занудствую )
SELECT p.product_id, pd.name, GROUP_CONCAT( DISTINCT CAST(pc.category_id AS CHAR(11)) SEPARATOR \",\" ) AS categories, p.sku, p.upc, p.ean, p.jan, p.isbn, p.mpn, p.location, p.quantity, p.model, m.name AS manufacturer, p.image AS image_name, p.shipping, p.price, p.points, p.date_added, p.date_modified, p.date_available, p.weight, wc.unit, p.length, p.width, p.height, p.status, p.tax_class_id, p.viewed, p.sort_order, pd.language_id, ua.keyword, pd.description, pd.meta_description, pd.meta_keyword, pd.tag, pd.seo_title, pd.seo_h1, p.stock_status_id, mc.unit AS length_unit, p.subtract, p.minimum, GROUP_CONCAT( DISTINCT CAST(pr.related_id AS CHAR(11)) SEPARATOR \",\" ) AS related FROM `oc_product` p LEFT JOIN `oc_product_description` pd ON p.product_id=pd.product_id AND pd.language_id=1 LEFT JOIN `oc_product_to_category` pc ON p.product_id=pc.product_id LEFT JOIN `oc_url_alias` ua ON ua.query=CONCAT('product_id=',p.product_id) LEFT JOIN `oc_manufacturer` m ON m.manufacturer_id = p.manufacturer_id LEFT JOIN `oc_weight_class_description` wc ON wc.weight_class_id = p.weight_class_id AND wc.language_id=1 LEFT JOIN `oc_length_class_description` mc ON mc.length_class_id=p.length_class_id AND mc.language_id=1 LEFT JOIN `oc_product_related` pr ON pr.product_id=p.product_id GROUP BY p.product_id ORDER BY p.product_id, pc.category_id Вот таких запросов 6 млн, выполнялись 5 сек, 1 раз в день 16,03,2015