Hallo,
zu den Hauptzeiten hat mein MySQL Server so seine Probleme, es kommt immer die Fehlermeldung: user:xxx hat max_user_connections
Ich habe einen eigenen Managed Server, muss ihn also nicht teilen.
Mein Provider hat mir als Support Lösung folgendes gemailt:
- nutzen Sie mehr statische Seiten (nicht möglich!)
- verbessern Sie Ihre MySQL Anfrageroutinen
Nun meine Frage: Kann man viel rausholen, wenn man versucht aller SQL Anfragen neuzuschreiben und dabei besser auf die Join Bedingungen achtet? Meine DB ist ca. 500 MB gross und steht eigentlich unter Dauerlast.
Der Webserver macht keine Probs, nur der DB Server.
Kann es auch daran liegen, dass ich manchmal folgende Anfragen nutze:
(geht man davon aus, dass in Tabelle1 500000 Zeilen und in Tabelle2 5000 Zeilen sind)
SELECT tab1.name FROM tabelle1 tab1, tabelle2 tab2 WHERE tab1.tab2_id=tab2.id
statt:
SELECT tab1.name FROM tabelle1 AS tab1 INNER JOIN tabelle2 AS tab2 ON tab1.tab2_id=tab2.id
Wenn ich beide Anfragen auf der Console ausführe (liefern gleiches Ergebnis), dann brauchen beiden fast identisch gleich lange. Ich weiß nur nicht, wie dies sich auf den Einsatz von MySQL mit PHP auf dem Webserver auswirkt.
Würde mich über ausführliche Antworten freuen.
Vielen Dank.
zu den Hauptzeiten hat mein MySQL Server so seine Probleme, es kommt immer die Fehlermeldung: user:xxx hat max_user_connections
Ich habe einen eigenen Managed Server, muss ihn also nicht teilen.
Mein Provider hat mir als Support Lösung folgendes gemailt:
- nutzen Sie mehr statische Seiten (nicht möglich!)
- verbessern Sie Ihre MySQL Anfrageroutinen
Nun meine Frage: Kann man viel rausholen, wenn man versucht aller SQL Anfragen neuzuschreiben und dabei besser auf die Join Bedingungen achtet? Meine DB ist ca. 500 MB gross und steht eigentlich unter Dauerlast.
Der Webserver macht keine Probs, nur der DB Server.
Kann es auch daran liegen, dass ich manchmal folgende Anfragen nutze:
(geht man davon aus, dass in Tabelle1 500000 Zeilen und in Tabelle2 5000 Zeilen sind)
SELECT tab1.name FROM tabelle1 tab1, tabelle2 tab2 WHERE tab1.tab2_id=tab2.id
statt:
SELECT tab1.name FROM tabelle1 AS tab1 INNER JOIN tabelle2 AS tab2 ON tab1.tab2_id=tab2.id
Wenn ich beide Anfragen auf der Console ausführe (liefern gleiches Ergebnis), dann brauchen beiden fast identisch gleich lange. Ich weiß nur nicht, wie dies sich auf den Einsatz von MySQL mit PHP auf dem Webserver auswirkt.
Würde mich über ausführliche Antworten freuen.
Vielen Dank.
Kommentar