Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: tcholakov в Jan 22, 2009, 10:34



Титла: mysqld използва 100% от процесорното време slackware 12
Публикувано от: tcholakov в Jan 22, 2009, 10:34
Здравейте,
Опитах се да намеря тема свързана с бавна работа на mysql под slackware 12 но не видях такава, затова пускам тази тема.

Машинката ми е PIII - 600Mhz, 128 MB RAM.
OS - Slackware 12.
Mysql - 5.2.1

След като минах процедурите с ненамирането на sock файла, накрая всичко тръгна както си му е реда.
Но....
Сложих си сайта на машинката -  отворих си една страничка която ми изкарва около 200 записа от базата данни и... Даниите се показаха но след да кажем 2-3 минути.
Взех да ровя за да разбера какво става, като накрая погледнах процесите и се оказа, че в момента в който пусна заявка към mysql-a, mysqld ми заема 100% от CPU-то докато изпълни заявката.
Идея нямам на къде да продължа.
Благодарен съм за всякаква помощ.

Успех!


Титла: Re: mysqld използва 100% от процесорното време slackware 12
Публикувано от: laskov в Jan 22, 2009, 11:05
Сменяй желязото. Много малко RAM, бавен процесор ...


Титла: Re: mysqld използва 100% от процесорното време slackware 12
Публикувано от: tyuio в Jan 22, 2009, 12:55
да за сериозен сайт рама е малко но несмятам, че е само това има начин да си ограничиш броя на заявките към базата до обтимално приемливия брой който не товари. Самия майескюел не понася много заявки едновременно. Все пак вдигни рама ако можеш.
На моя домашен съсрвър понякога прави така а той е 1.6  и 512 рам


Титла: Re: mysqld използва 100% от процесорното време slackware 12
Публикувано от: zeridon в Jan 22, 2009, 13:08
Ако можеш смени желязото
Ако не можеш пробвай поне с повече рам
Ако и рам не може оправи конфига на mysql да яде по малко рам
Също така си виж и в какво състояние са ти дисковете. Понякога бавните дискове могат да ти раскажат играта като стой та гледай


Титла: Re: mysqld използва 100% от процесорното време slackware 12
Публикувано от: tyuio в Jan 22, 2009, 13:09
ето нещо вероятно

a
Цитат
rifagic:
This is what im getting from WHM
Top Process: %cpu 99.9
/usr/sbin/mysqld...

I had the same problem when I first got a web-server. It was (eventually) discovered to be caused by a default setting in mysql (at least with RH8):

The following was on the `Variables' page of phpmyadmin (the emboldened line is the principal cause):

      wait timeout: 28800
      thread cache size: 0
      open files limit: 0
      Max connections: 100

Putting the following in `my.cnf' fixed the problem:

      # added by Alex 17 Oct 2003
      set-variable = thread_cache_size=10
      set-variable = wait_timeout=30

      (then from shell:)
      /etc/init.d/mysqld stop
      /etc/init.d/mysqld start

cpu usage under top for mysqld dropped from a typical 99.9% to 10% max & more typical 6% on the 5-sec transitory showing. `0' for the thread cache caused 99.9% cpu usage, BTW, because new threads needed to be to be spawned for every connection (30,000 in a 24 hour period before the change).

See http://jeremy.zawodny.com/blog/archives/000173


Титла: Re: mysqld използва 100% от процесорното време slackware 12
Публикувано от: remotex в Jan 22, 2009, 16:05
1. mysql 5.2 - какво е това някаква кандидат версия или алфа/бета? Официалните (разбирай поддържани) са:
GA 5.0.75
GA 5.1.30
като лично аз препоръчвам по-старите т.е. 5.0 даже и 4.1 ако може
2. Поразгледай my.cnf
по принцип линуксите нямат всичките но можеш да свалиш Windows downloads->Without installer (unzip in C:\) версията и от архива да извадиш по избор
my-small.ini
my-medium.ini
my-large.ini
my-innodb-heavy-4G.ini
my-huge.ini
или почети малко кое за какво е
3. Новите версии 5.0 или 5.1. и нагоре имат и един бъг че отварят по една нишка ..нещо свързано с мониторинга и (при инсталиран MySQL Administrator веднага) се проявява в това, че дори и при яки процесори много товари тази нишка ( е за тях и 4-5..10 % е много ) - затова ако ти върши работа и по-стара версия.. - това е известно и може и да са го оправили в GA изданието затова downgrade малко това 5.2.* :-)


Титла: Re: mysqld използва 100% от процесорното време slackware 12
Публикувано от: ivanatora в Jan 22, 2009, 17:56
Неправилно конструирани заявки, в комбинация с големи бази и търсене в неиндексирани полета?