PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MySQL verursacht 99% CPU Auslastung--HILFE



qayyse
21-09-2006, 15:32
Hallo,

habe da ein großes Problem, habe einen Rootserver P4 mit 3GHZ und 2GB RAM und suse 9.2
Darauf ist installiert nur Plesk. Er dient als reiner Webserver und es laufen 2 Große Seiten. Nun habe ich das Problem das er ständig unter vollast fährt.

Auszug:

top - 16:08:24 up 31 min, 1 user, load average: 1.49, 2.89, 5.47
Tasks: 113 total, 4 running, 109 sleeping, 0 stopped, 0 zombie
Cpu(s): 87.8% us, 7.3% sy, 0.0% ni, 4.7% id, 0.0% wa, 0.0% hi, 0.2% si
Mem: 2049348k total, 587592k used, 1461756k free, 46624k buffers
Swap: 1076312k total, 0k used, 1076312k free, 237956k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6379 mysql 15 0 140m 37m 4672 S 99.9 1.9 38:07.30 mysqld
9921 wwwrun 17 0 114m 18m 6984 R 7.6 0.9 0:00.66 httpd2-prefork
9970 wwwrun 16 0 114m 18m 6928 S 4.7 0.9 0:00.31 httpd2-prefork
9967 wwwrun 16 0 114m 18m 6972 R 3.7 0.9 0:00.36 httpd2-prefork
165 root 15 0 0 0 0 S 0.3 0.0 0:01.27 pdflush
9981 root 16 0 4284 1176 864 R 0.3 0.1 0:00.01 top
1 root 16 0 724 256 216 S 0.0 0.0 0:00.40 init
2 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
4 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/1
5 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/1
6 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 events/0
7 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 events/1
8 root 10 -5 0 0 0 S 0.0 0.0 0:00.01 khelper
13 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 kthread
26 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 kacpid
120 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 kblockd/0



Was verursacht sowas?

Also habe oben vergessen zusagen das nur MySQL dies verursacht, aber das seht Ihr ja selbst.

Für Lösungen würde ich mein Herz geben z.Z

Gruß
Daniel

nul
21-09-2006, 18:38
Also ich hatte mal das problem mit einem fehlerhaften PHP-Skript, das hat dann auch mysql bis zu 100% ausgelastet.
Durch ausbesserung des Skripts ging dann wieder alles den normalen weg.

cplinux
22-09-2006, 21:47
Das sieht sehr nach mysql aus.
Man sollte prüfen, welche mySQL-Abfragen in einer Schleife ausgeführt werden.

Eine andere Sache: ein Join über mehrere Tabellen kann - je nach Datenmenge - schon eine gewisse Zeit in Anspruch nehmen. Treffen mehrere solcher Abfragen auf den Server, ergibt sich eine hohe Last. Hier sollte man sich also die Abfragen auf alle besonders "großen" Tabellen anschauen.

Eine andere Empfehlung wäre das Optimieren der Abfragen, Erstellen von Indexen, etc.

Ich hoffe, ich konnte helfen.

Gruß
cplinux