phpbar.de logo

Mailinglisten-Archive

[php] Datenbank Tabellentypen

[php] Datenbank Tabellentypen

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Die Nov 8 17:40:51 CET 2005


Hi Harald,

ANGEL Harald schrieb:
> Hallo php Gemeinde!
> Ich hab eine kleine Community mit ca 12.000 Usern die auf einer MySQL
> 4.0.24_Debian-10sarge1 DB läuft.
> Ab 450 gleichzeitigen Usern wird das ganze "unverwendbar"... Mein Provider
> sagt, dass die große Last am Datenbankserver wegen einer schlecht
> konfigurierten Datenbank kommt.
> Ich bin aber auf dem Gebiet nicht grad der erfahrenste.. Drum steh ich
> jetzt so schlau da wie vorher...
> Auf mysql.com hab ich von verschiedenen Tabellentypen gelesen:
> http://dev.mysql.com/doc/refman/4.0/de/table-types.html
>
> Im Moment hab ich MyISAM.
> Bringt eine Umstellung auf InnoDB eine Verringerung der Last? Oder gehen
> dann nur zB INSERTS schneller?
> Kann man Tabellen umwandeln? Oder muss man die neu anlegen?
> Kann man auf die Tabellen mit dem gleichen SQL-Syntax zugreiffen? Oder
> gibt's da Unterschiede?
> Hat irgendjemand sonst Tipps bzgl Datenbank Tuning bei sehr hohen
> Zugriffszahlen?
> (Indizese hab ich nat. angelegt.)

also wenn der Provider so genau weiß, woran das liegt, dann kann er sicher
auch begründen, warum das so ist... ;-)

Deine Frage ist ansonsten nicht so einfach zu beantworten. Zuviele Dinge
spielen da hinein. Z.B. auch die Datenbankstruktur. Dann natürlich auch
die Anwendung. Wieviele und wie komplexe Datenbankabfragen führst Du pro
Seitenaufruf aus? Wieviele Daten werden dabei im Ergebnis zurückgeliefert
usw. Setzt Du Caching-Mechanismen ein? Usw. Speicherverbrauch ist auch
wichtig. Es muß also gar nicht direkt an der Datenbank liegen.

Eine hilfreiche, für Dich zielführende Antwort wird Dir keiner geben
können, der nicht vorher einen tieferen Blick in Deine Datenbank und Deine
Anwendung geworfen hat.

Bevor Du irgendetwas änderst, solltest Du zunächst einmal prüfen, wo in
Deiner Anwendung die Zeit liegen bleibt. Messe einmal die Zeit, die Du für
den Aufbau einer Datenbankverbindung, für die Ausführung der einzelnen
SQL-Befehle etc. brauchst. Wenn Du etwas Glück hast, wird Dir etwas
auffallen. Dann kannst Du das Problem gezielt angehen. Vielleicht lassen
sich z.B. Deine SQL-Befehle noch optimieren.

Ich würde also nicht im Nebel herumstochern und einfach irgendetwas
ändern, in der Hoffnung, daß das schon paßt. Ich meine, Du hattest das
Problem ja schon einmal und hast dann den Provider gewechselt. Gehe das
Problem systematisch an. :-)


Viele Grüße

Lutz


php::bar PHP Wiki   -   Listenarchive