Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Зависает сервер
 
 автор: ronin80   (13.11.2008 в 11:25)   письмо автору
30.9 Кб
 
 

Со вчерашнего дня начал зависать сервер, зависает при попытке выплнить процедуру в которой происходит вставка данных из одной таблицы в другую (примерно 200 строк)

После попытки выполнить процедуру программа зависает, тут же смотрю загрузка процесса в системе mysqld-nt.exe составляет 40-60%

И вообще сервер стал работать очень медленно, не понимаю что происходит, пробовал увеличить размер кэша, памяти для сервера (настройки my.ini), в общем всё что связано с памятью, не помогает

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

После того как пытаюсь выполнить процедуру сервер виснет и остановить его удаётся только убивая процесс в диспетчере

Нужные файлы прикреплю

  Ответить  
 
 автор: ronin80   (13.11.2008 в 11:26)   письмо автору
 
   для: ronin80   (13.11.2008 в 11:25)
 

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

Очень прошу помочь, первый раз столкнулся с такой ерундой, уже перепробовал всё что знаю

  Ответить  
 
 автор: cheops   (13.11.2008 в 12:21)   письмо автору
 
   для: ronin80   (13.11.2008 в 11:26)
 

А что за действия выполняются - может от них лучше отталкиваться, по мотивам лог-файла у меня что-то никаких идей не возникло...

PS У вас версия MySQL-сервера 5.0.67 как я понял?

  Ответить  
 
 автор: ronin80   (13.11.2008 в 12:35)   письмо автору
 
   для: cheops   (13.11.2008 в 12:21)
 

версия такая

в процедуре происходит открытие курсора и вставка данных из одной таблицы (курсор) в другую

пробовал даже с одной строкой выполнить процедуру всё равно виснет

  Ответить  
 
 автор: ronin80   (13.11.2008 в 12:39)   письмо автору
 
   для: ronin80   (13.11.2008 в 12:35)
 

щас взял переустановил сервер с настройками по умолчанию, залил дамп, запустил программу, создал приёмный акт в программе с одной позицией, попытался выполнить процедуру проведения акта (копирование данных) сервер завис, в диспетчере показывает опять нагрузку на ЦП процесса mysqld-nt 50% и сервер не отвечает

причём после останова и запуска сервера заново он вообще не отвечает и нагрузка та же что и перед остановкой сервера, что за бред?

  Ответить  
 
 автор: ronin80   (13.11.2008 в 13:18)   письмо автору
 
   для: ronin80   (13.11.2008 в 12:39)
 

очистил базу (оборотные таблицы, было примерно 70000 строк) запустил программу, создал опять же акт с одной позицией, т.е. в процедуре будет копирование одной строки, всё равно виснет, как такое может быть? вчера всё работало, сегодня непонятно что происходит (

ещё заметил такую фигню, переустановил сервер, пересоздал процедуры, но в процедуре проведения акта закомментировал открытие курсора и копирование строк акта, процедура не зависла при выполнении, как только раскомментировал курсор и копирование, опять виснет

я не понимаю чё она на пустой то базе виснет, была задумка что это из-за количества данных, но тут-то пустая БД

  Ответить  
 
 автор: ronin80   (13.11.2008 в 13:29)   письмо автору
 
   для: ronin80   (13.11.2008 в 13:18)
 

всё понял, виснет на окрытии курсора, после зависания сервер какое-то время загружен, потом отмирает и опять работает (таблицы пустые!), закомментировал открытие курсора, попытался выполнить, опять завис сервер

в чём может быть проблема с курсором?

PS вставка строки происходит нормально, проверил

  Ответить  
 
 автор: ronin80   (13.11.2008 в 14:50)   письмо автору
 
   для: ronin80   (13.11.2008 в 13:29)
 

только не бейте меня сильно, разобрался в чём проблема, в процедуре было зацикливание, вот сервак и вис, не знаю когда я из процедуры удалил проверку на окончание курсора :)

  Ответить  
 
 автор: cheops   (14.11.2008 в 12:25)   письмо автору
 
   для: ronin80   (13.11.2008 в 14:50)
 

Страшная штука... Из этого же разряда - бесконечные циклы в PHP в которых имеется SQL-запрос, так как основное время затрачивается на ожидание окончания обработки запроса в MySQL - 30 секунд отводимых на выполнение скрипта могут часами длиться.

  Ответить  
 
 автор: ronin80   (14.11.2008 в 20:56)   письмо автору
 
   для: cheops   (14.11.2008 в 12:25)
 

самое интересное что после перезапуска сервера загрузка продолжается какое-то время, после чего работа сервака восстанавливается, но добавления строк так и не происходит

  Ответить  
 
 автор: Trianon   (14.11.2008 в 21:16)   письмо автору
 
   для: cheops   (14.11.2008 в 12:25)
 

Страшная штука - это циклы, в которых имеется SQL-запрос.

  Ответить  
 
 автор: ronin80   (14.11.2008 в 21:37)   письмо автору
 
   для: Trianon   (14.11.2008 в 21:16)
 

самое страшное что это на рабочей то базе, меня чуть инфаркт не хватил :)

  Ответить  
 
 автор: Trianon   (14.11.2008 в 21:54)   письмо автору
 
   для: ronin80   (14.11.2008 в 21:37)
 

бэкапиться нужно...

  Ответить  
 
 автор: ronin80   (14.11.2008 в 22:35)   письмо автору
 
   для: Trianon   (14.11.2008 в 21:54)
 

так бэкап то делается ночью, а журналирование пока не включал

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования