URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 40907
[ Назад ]

Исходное сообщение
"MySQL 'съедает' 99% процессорного времени, в чем проблема?"

Отправлено Ешь , 24-Фев-04 11:07 
MySQL "съедает" 99% процессорного времени, в чем проблема?
После рестарта демона, все приходит в норму, через некоторое время, снова начинается подобное.
365 mysql       55   0 35044K 12472K RUN    1  56.9H 99.02% 99.02% mysqld
Кто то может сталкивался с подобным?
Версия Mysql
mysql  Ver 11.18 Distrib 3.23.52, for portbld-freebsd4.7 (i386)
FreeBSD
FreeBSD 4.7-RELEASE #3: Sat Jan 25 19:30:50 MSK 2003

Содержание

Сообщения в этом обсуждении
"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Крис , 24-Фев-04 12:21 
Сталкивался... Вроде вылечил после пересобирания ядра... В чем дело было так и не понял... Но проблемы была, вот уже две недели всё в порядке. (мускул довольно загруженный)

"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Nickolay , 24-Фев-04 12:32 
99% проблема в кривых скриптах.
у меня аналогичная проблема была и есть:
если кто-то криво пишет - то mysqld становится прожорлив

"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Ешь , 26-Фев-04 12:02 
>99% проблема в кривых скриптах.
>у меня аналогичная проблема была и есть:
>если кто-то криво пишет - то mysqld становится прожорлив


А подробнее можно - в чем заключается кривость скриптов приводящая к такой ситуации?


"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Nickolay , 26-Фев-04 17:08 
>А подробнее можно - в чем заключается кривость скриптов приводящая к такой
>ситуации?
на практике: незакрытые дескрипторы или кривые запросы.
у меня так было: нашел скрипт который отжирал проц. закрыл cgi-bin перцам. перезвонил их програмист сказал, что подправил скрипт(как раз дескрипторы).
после этого все ок. скорее проблема в том что не делалась очистка результата запроса в скрипте, после того как он отрабатывал и данные ставали ненужными.
второй раз опять загрузка. потом пришел перец и сказал, что это кривой запрос у него был.
думаю проблема в написании крывых скриптов, а не так как учат в книжках.
вот как добиться, что бы mysqld при этом в задницу не заворачивался я пока не знаю :-(

"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Nickolay , 27-Фев-04 11:10 
Выяснил один вариант отжирания:
кривой скрипт в котором попадается бесконечный цикл.
mysqld просто  не справляется с потоком запросов...

"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено deadmoroz2 , 24-Фев-04 13:27 
>MySQL "съедает" 99% процессорного времени, в чем проблема?
> После рестарта демона, все приходит в норму, через некоторое время,
> снова начинается подобное.

Была похожая проблема, писал в этот форум. Аналогично, после некоторого времени работы mysql (версия 4.0.16 на FreeBSD 4.6.2) начинал брать под себя почти все процессорное время. Проблема решилась в моем случае редактированием конфигурационного файла my.cnf, а конкретно объем памяти, используемой mysql. У меня используются таблицы InnoDB.
Вот кусок кофига:
-------------------------------------
# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /usr/local/mysql/data/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/data/
innodb_log_arch_dir = /usr/local/mysql/data/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 128M
innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 32M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
-------------------------------------


"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Olegas , 25-Фев-04 13:23 
ИМХО это кривизна скриптов или просто ОЧЕНЬ большая выборка.
У меня такое наблюдалось когда мускуль возвращает ОГРОМНЫЕ результаты.
( по 5 минут ждал :) )
можно глянуть чем занят мускуль
..../mysql/bin/mysqladmin processlist
узнаешь какие квери бегают и в какой стадии.

"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Ешь , 26-Фев-04 11:47 
>ИМХО это кривизна скриптов или просто ОЧЕНЬ большая выборка.
>У меня такое наблюдалось когда мускуль возвращает ОГРОМНЫЕ результаты.
>( по 5 минут ждал :) )
>можно глянуть чем занят мускуль
>..../mysql/bin/mysqladmin processlist
>узнаешь какие квери бегают и в какой стадии.

да ничем не занят мускуль, и запросов никакх не делается.
А в чем именно кривизна скриптов заставляет вести себя так мускуль?


"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Olegas , 26-Фев-04 12:46 
ну не то чтобы кривизна, но в моем случае была плохо спроектирована база данных и при довольно частых запросах
1. очень долго производилась непосредственно выборка
2. были большие результаты - тратилось не мело времени на их отправку.

за этим занятием мускуль и проводил цпушное время :)


"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Grid , 27-Фев-04 16:54 
>MySQL "съедает" 99% процессорного времени, в чем проблема?
>После рестарта демона, все приходит в норму, через некоторое время, снова начинается
>подобное.
>365 mysql       55   0
>35044K 12472K RUN    1  56.9H 99.02% 99.02%
>mysqld
>Кто то может сталкивался с подобным?
>Версия Mysql
>mysql  Ver 11.18 Distrib 3.23.52, for portbld-freebsd4.7 (i386)
>FreeBSD
>FreeBSD 4.7-RELEASE #3: Sat Jan 25 19:30:50 MSK 2003

Собрать с linuxthreads ! 99% что проблема именно в этом :)


"MySQL 'съедает' 99% процессорного времени, в чем проблема?"
Отправлено Grid , 27-Фев-04 16:56 
>>MySQL "съедает" 99% процессорного времени, в чем проблема?
>>После рестарта демона, все приходит в норму, через некоторое время, снова начинается
>>подобное.
>>365 mysql       55   0
>>35044K 12472K RUN    1  56.9H 99.02% 99.02%
>>mysqld
>>Кто то может сталкивался с подобным?
>>Версия Mysql
>>mysql  Ver 11.18 Distrib 3.23.52, for portbld-freebsd4.7 (i386)
>>FreeBSD
>>FreeBSD 4.7-RELEASE #3: Sat Jan 25 19:30:50 MSK 2003
>
>Собрать с linuxthreads ! 99% что проблема именно в этом :)

И почитать раздел в документации касающийся работы сабжа на freebsd системах, там много чего полезного написано.