MySQL5 CPU USAGE

aubergine
RSAC
Posts: 475
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

MySQL5 CPU USAGE

Post by aubergine »

Hi,

ich habe ein Quad Xeon System auf dem MySQL und einige andere Anwendungen laufen. Nun nutzt MySQL in manchen Minuten fast alle CPU Cores voll aus. Kennt jemand eine Möglichkeit MySQL zu sagen, dass es nur max. 1 CPU Core voll ausnutzen kann?
Top

freddy36
RSAC
Posts: 277
Joined: 2008-03-20 17:31

Re: MySQL5 CPU USAGE

Post by freddy36 »

man taskset
Damit kann man Prozesse an einen bestimmten Prozessor (core) binden.
Ich habs selbst noch nie gebraucht, ich tippe mal drauf das man es für jeden geforkten Prozess neu setzen muss.
Top

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: MySQL5 CPU USAGE

Post by Roger Wilco »

matzewe01 wrote:Dann muss mysql m.E. nicht mutlithreaded gebaut werden.

MySQL ist doch in jedem Fall multithreaded (Single Process, Multiple Threads), oder habe ich da etwas falsch verstanden?
Top

User avatar
isotopp
RSAC
Posts: 482
Joined: 2003-08-21 10:21
Location: Berlin

Re: MySQL5 CPU USAGE

Post by isotopp »

Der MySQL Server ist immer multithreaded. Auf zeitgemäßen Linuxen (also allen mit NPTL) wird es dann auch je nach bedarf alle Cores verwenden, wenn man nicht mit "taskset" dazwischen haut.

Eine Connection in MySQL hat serverseitig immer einen Thread. Ein einzelner Thread kann also nie mehr als einen Core nutzen.

Die Clientbiliothek libmysqlclient.so kann multithread-sicher oder single threaded gebaut werden. Sie verwendet gar keine Threads - es ist die Aufgabe des Clientprogrammes sie aufzurufen und es liegt beim Clientprogramm, Threads zu erzeugen und zu verwalten.
Top