phpbar.de logo

Mailinglisten-Archive

MySQL-Tuning

MySQL-Tuning

Michael Donning mysql-de_(at)_lists.bttr.org
Wed, 10 Apr 2002 09:23:37 +0200


Hi Christian,

die Anzahl der apache Prozesse hat zunächst mal grundsätzlich nicht
unbedingt was mit der Anzahl der mysql-connections zu tun. Apache richtet
sich nach der aktuellen Last und seinen Konfigurationswerten
(*SpareServers).

Lt. Handbuch sollte eine Erhöhung der max_connections auf <=500
grundsätzlich kein Problem darstellen, solange einige heaps nicht zu groß
konfiguriert sind (siehe dazu max_connections im manual).

Gruss, Michael

es folgen die (aus versehen (mailer vergurkte irgendwie das reply-to)) per
e-mail ausgetauschten mails.

---------------christians mail----------------------------
>>Oder weil irgendein langwieriger Aktualisierungslauf oder eine langwierige
>>Transaktion einen Lock auf beteiligte Tabellen gelegt haben und alle
anderen
>> Prozesse darauf warten.

Die Seite ist eine Community, komplett datenbankgestützt, mit eigentlich
einfachen, nicht komplexen
Queries.

Die PConnects habe ich gestern entfernt und neu gestartet, jetzt sind nur
noch ca. 7-8 MySQL-Prozeße in der Prozeßliste, aber dafür sind über 110
Apache-Daemons am Laufen...und den Fehler
"too many connections" bekomme ich immer noch.

Soll ich einfach das max_connections erhöhen??

Was kann ich tun damit diese Fehlermeldung nicht mehr kommt?? Vorher hatte
ich einen shared server und habe die Fehlermeldung selten erhalten und jetzt
doch recht oft...trotz eigenen Servers.

Für Tipps und Hinweise bin ich dankbar!

Ciao
Christian
--------------meine vorangegangene mail ------------
Hi damit, hier endlich mal jemand antwortet :)

> -----Original Message-----
> From: Christian Thiele [mailto:ChristianThiele_(at)_gmx.de]
> Ich bekomme ab und an den Fehler "too many connections"...kann ich die
> max_connections Zahl problemlos erhöhen oder gibts da
> irgendwelche Probleme?
Mehr connections brauchen mehr Speicher, aber ein bisschen hast Du ja.
Ansonsten siehe Handbuch bzgl. max_connections

Oft ist aber die Frage wieso plötzliche so viele Connections auflaufen eher
zu stellen. Z.B. weil die eine oder andere Abfrage eine schlechte
Performance hat und so den Server lange (z.B. >1 sec) stark belastet.
Lange Queries lassen sich protokollieren (siehe long_query_time)

Oder weil irgendein langwieriger Aktualisierungslauf oder eine langwierige
Transaktion einen Lock auf beteiligte Tabellen gelegt haben und alle anderen
Prozesse darauf warten.

Man könnte ggf. wait_timeout setzen, wenn der Verdacht besteht, daß
Verbindungen nicht korrekt beendet werden (z.B. weil ein script
'hängt'/programmierfehler?). Das gilt natürlich nicht für die Verwendung von
pconnect.

>
> Kann ich in PHP mysql_pconnect() nutzen um die Zahl niedriger zu
> halten?? In

Ich arbeite mit perl daher bin ich kein PHP spezi, aber ich meine gehört zu
haben, daß das bei Verwendung von apache nicht viel bringt, da dann pconnect
connections lediglich je "session" (sprich: client-ip) zusammenfasst.
(man möge mich korrigieren)

> der Prozeßliste von MySQL stehen viele Prozeße auf SLEEP...woran
> liegt das??

? keine Ahnung


>
> Es ist ein Linux 7.3 mit 900 Mhz Pentium und 512 MB RAM und 20 GB HDD
>
> Danke!
>
ich hoffe es gibt noch ein paar weitere Antworten, die meinige wird w. nicht
ausreichen.

cu/ru,

Michael Donning
----------------------------------------------------------------

---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive