DoS на mysql

U
На сайте с 15.08.2008
Offline
56
545

Прислал хостер

+--------+-------------+-----------+-------------+---------+------+-------+------------------+

| Id | User | Host | db | Command | Time | State | Info |

+--------+-------------+-----------+-------------+---------+------+-------+------------------+

| 804688 | west | localhost | west_liter | Sleep | 2338 | NULL | NULL |

| 804858 | west | localhost | west_liter | Sleep | 4236 | NULL | NULL |

| 804872 | west | localhost | west_liter | Sleep | 4232 | NULL | NULL |

| 804912 | west | localhost | west_liter | Sleep | 510 | NULL | NULL |

| 804922 | west | localhost | west_liter | Sleep | 2361 | NULL | NULL |

| 804930 | west | localhost | west_liter | Sleep | 3335 | NULL | NULL |

| 804962 | west | localhost | west_liter | Sleep | 2128 | NULL | NULL |

| 811043 | west | localhost | west_liter | Sleep | 2157 | NULL | NULL |

| 816130 | root | localhost | NULL | Query | 0 | NULL | show processlist |

+--------+-------------+-----------+-------------+---------+------+-------+------------------+

В итоге база даних сайта не работает.

Хостер ответил что нужно

скорректировать его работу так, чтоб он не оставлял "зависших" соединений с MySQL

Какой код нужно искать и как изменить?

Что делать в таких случаях?

Сайт написан назаказ. Я сам не програмер

N
На сайте с 06.05.2007
Offline
419
#1

Например, поискать в коде вызовы mysql_pconnect и заменить на mysql_connect.

Кнопка вызова админа ()
iBBi
На сайте с 13.02.2007
Offline
323
#2
Сайт написан назаказ. Я сам не програмер

вот и пиши им чтобы нашли проблему, другой вариант это искать нового программиста чтобы уже он латал баги.

U
На сайте с 15.08.2008
Offline
56
#3
netwind:
Например, поискать в коде вызовы mysql_pconnect и заменить на mysql_connect.

Изменил не помогло. В чем еще может быть проблема?

N
На сайте с 06.05.2007
Offline
419
#4

вы так быстро делаете выводы ?

Если ваши соединения "утекли", то пока процессы apache не завершатся, эти соединения не закроются. Можете из phpmyadmin запускать команду show processlist и наблюдать за своими соединениями. И даже по одному удалить : kill NNNN; там в первой колонке идентификатор соединения.

Время подключения не должно быть больше времени обработки странички.

U
На сайте с 15.08.2008
Offline
56
#5
netwind:
вы так быстро делаете выводы ?
Если ваши соединения "утекли", то пока процессы apache не завершатся, эти соединения не закроются. Можете из phpmyadmin запускать команду show processlist и наблюдать за своими соединениями. И даже по одному удалить : kill NNNN; там в первой колонке идентификатор соединения.
Время подключения не должно быть больше времени обработки странички.

На сайте изменили уже с утра програмер. Потому и отвечаю что это не помогло.

И мне кажеться что проблема не в сайте а в форуме.

нашол в файле forum/includes/db/mysql.php

$this->db_connect_id = ($this->persistency) ? @mysql_pconnect($this->server, $this->user, $sqlpassword, $new_link) : @mysql_connect($this->server, $this->user, $sqlpassword, $new_link);

Здесь нужно менять?

unisonew добавил 16.01.2009 в 04:05

Всем спасибо проблема решена

BR
На сайте с 28.06.2008
Offline
75
#6
unisonew:

Хостер ответил что нужно
скорректировать его работу так, чтоб он не оставлял "зависших" соединений с MySQL

- Вы можете сказать хостеру, что он должен настроить MySQL таким образом чтобы подвисшие соединения закрывались автоматически (настройка wait_timeout). Лучше поменяйте хостинг прямо сейчас - у Вас явно какой-то школьный хостинг, проблемы с которым будут продолжаться.

- в порядке рекламы: возьмите у нас тестовый хостинг (1 месяц бесплатно) на любом тарифе с БД и посмотрите возникнет ли описанная Вами проблема (установить сайт поможем)

Не заметил:

unisonew:
Всем спасибо проблема решена
, ну хоть напишите в чем была проблема :)
размещение сайтов (http://www.brim.ru)

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