Помощник
|
MySQL ошибка (Errcode: 17), ПОМОГИТЕ! |
Axel
|
Сообщение
#1
|
||
|
|
||
|
|||
webpavilion |
21.12.2010, 23:50;
Ответить: webpavilion
Сообщение
#2
|
|
SELECT * FROM dle_post WHERE approve='1' AND lenta='1' ORDER BY RAND() откуда у людей такая тяга к ORDER BY RAND()? медленнее придумать сложно.вариантов откуда взялась ошибка всего три либо tempdir настроена криво или место на разделе с tempdir кончилось. третий вариант более прозаичен хостер клал на вас большого и толстого установив лимиты. то что отвечает хостер бред полнейших потому что ошибка в mysql и логика скрипта (несмотря на всю кривожопость dle) не причем! -------------------- Не ведитесь, cамопис это почти всегда плохо! Делаю сайты на Drupal 7.x (очень дорого) |
|
|
Axel
|
Сообщение
#3
|
|
откуда у людей такая тяга к ORDER BY RAND()? медленнее придумать сложно. вариантов откуда взялась ошибка всего три либо tempdir настроена криво или место на разделе с tempdir кончилось. третий вариант более прозаичен хостер клал на вас большого и толстого установив лимиты. то что отвечает хостер бред полнейших потому что ошибка в mysql и логика скрипта (несмотря на всю кривожопость dle) не причем! показал хостеру сообщение. Его ответ был таков: 1. /tmp настроена правильно. Все права установлены корректно. 2. На разделе с /tmp места достаточно. 3. Никаких лимитов мы не устанавливали. Есть лимит только на оперативную память, и дисковая квота. Есть мысли у вас. как решить проблему? Сейчас попробую вырубить модуль на день, посмотрим, каков результат будет. сли дело в нем, то буду долбать разработчика. |
|
|
webpavilion |
22.12.2010, 0:33;
Ответить: webpavilion
Сообщение
#4
|
|
Есть мысли у вас. как решить проблему? как вы думаете зачем мне решать чужие проблемы?
-------------------- Не ведитесь, cамопис это почти всегда плохо! Делаю сайты на Drupal 7.x (очень дорого) |
|
|
Axel
|
Сообщение
#5
|
|
|
|
|
jurgen |
22.12.2010, 0:42;
Ответить: jurgen
Сообщение
#6
|
|
портал большой? сколько людей ходит в сутки? Как насчет переехать?
-------------------- |
|
|
webpavilion |
22.12.2010, 0:53;
Ответить: webpavilion
Сообщение
#7
|
|
Понял... Лично я, если бы имел достаточно знаний в этом деле, помог бы человеку... помочь советом и сделать чью то работу, согласитесь, это разные вещи. я вам уже помог обозначив три самые вероятные причины они покрывают 80% случаев возникновения этой ошибки. если вы уверены в своем хостере... (я лично очень сомневаюсь) то проблема не имеет тривиального решения и отнимет много времени. -------------------- Не ведитесь, cамопис это почти всегда плохо! Делаю сайты на Drupal 7.x (очень дорого) |
|
|
Axel
|
Сообщение
#8
|
|
портал большой? сколько людей ходит в сутки? Как насчет переехать? На одном 7к стабильно, на другом (тот что глючит) 2,5-3к в сутки. Так постоянно было, но почему-то глючить начало только недавно и глючит только тот сайт, который меньше. Хотя в воскресенье я заметил очень большое количество посетителей. Могло ли это создать небольшую нагрузку на сервак, в следствии которой нарушилась таблица и началась ошибка, создающая вообще большую нагрузку...? Может быть такое? Сообщение отредактировал Axel - 22.12.2010, 10:36 |
|
|
Maxim-KL |
22.12.2010, 10:42;
Ответить: Maxim-KL
Сообщение
#9
|
|
Если не секрет что за хостер ? Возможно у него эта ошибка часто бывает и кто то с ней уже там сталкивался.
-------------------- |
|
|
G_Market |
22.12.2010, 16:18;
Ответить: G_Market
Сообщение
#10
|
|
SELECT * FROM dle_post WHERE approve='1' AND lenta='1' ORDER BY RAND() Использование ORDER BY RAND не только медленно, но и сильно грузит сервер Похоже что по этому запросу MySQL выбирает все строки из таблицы dle_post, записывает их во временную таблицу с дополнительным полем, в которое сохранаются результаты работы функции RAND (для каждой строки таблицы вычисляется случайное значение вида 0.00433708355234664), сортирует временную таблицу по добавленному полю и только после этого выбирает из временной таблицы строки, удовлетворяющие условию "WHERE approve='1' AND lenta='1'". Это не очень долго, если в таблице десятки или сотни записей, а если там сотни тысяч или миллионы записей ? Допустим что такой запрос выполняется 5 секунд (при достаточном объеме таблицы), тогда даже не нужно DDOS атаки, достаточно одного робота-индексатора. Если он будет присылать 5 запросов в секунду, то уже к моменту завершения формирования ответа на первый запрос во временном каталоге будет 25 временных таблиц, по объему превышающих ту, к которой выполняется SQL-запрос. Это же так нагрузит сервер, что запрос уже не будет выполняться даже и за те 5 секунд, что нужны для еденичного запроса, что еще больше усугубит ситуацию и просто повесит сервер. Axel, может у Вас действительно большая таблица dle_post ? Или в момент проблем была не DDOS атака, а просто что-то похожее на частые запросы одной и той же страницы, на которой вызывается этот SQL-запрос (посмотрите в логах). Я встечал такое у себя в логах: с одного IP в течении десятков минут запрашивается одна страница с периодичностью 5-10 раз в секунду (тогда я посчитал это просто глюком в браузере посетителя). -------------------- |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery Разработка сайтов и сервисов под-ключ |
0 | alexey | 1239 | 24.11.2023, 14:46 автор: alexey |
|
Web программирование на С/С++/PHP/MySQL/SQL, высоконагруженные проекты Есть наработки в области бирж трафика, топов, тизеров, видео cj-тубов |
4 | DFService | 3347 | 8.4.2020, 18:02 автор: DFService |
|
Верстка, php + mysql, недорого | 3 | devprojectlab | 2654 | 28.10.2019, 18:53 автор: Mukis |
|
Нужен человек, который хорошо понимает php+mysql Нужен человек, который хорошо понимает php+mysql |
0 | dsugar | 2498 | 7.9.2018, 10:37 автор: dsugar |
|
Нуждаюсь в услугах вебмастера, знающего html, css, php, mysql | 1 | Bizota | 2971 | 21.8.2018, 1:33 автор: kalm |
Текстовая версия | Сейчас: 18.4.2024, 8:15 |