Hallo,
ich brauch mal eure Hilfe.
Bin mir nicht sicher, ob es eher hier hin, oder ins SQL Forum gehört, aber da es kein Syntaxproblem oder so ist, denk ich, dass es hier besser passt.
Es geht um folgendes:
Es war Weihnachten und die Internetseite hatte statt den üblichen Besuchern nun knapp 10k-15000.
Dabei hat es laut Aussage des Webhosters den MySQL-Server in die Knie gezwungen, sodass es teilweise einen Totalausfall gab.
Dies möchte ich beim nächsten Mal möglichst verhindern.
Letztes Jahr gab es einen ähnlichen Ansturm, allerdings hielt da der gemietete Webspace (kein Server) den Besuchern stand. In der Zwischenzeit hab ich da einige Joinabfragen eingefügt und ich denke, dass es vlt daran liegt.
In den Laufzeitinformationen(PMA) hab ich folgende Infos gefunden:
Da auf dem Server ja mehrere Kunden sind, weiß ich nun nicht, ob diese Angaben von mir sind, oder eventuell von einem anderen.
Kann ich irgendwie nachgucken, ob meine Joins da zutreffen?
Würde zwar denken, dass ich die Tabellen normalisiert habe, aber nunja.
Würde es sonst eventuell Helfen statt mysql_query() oder so dauernt zu schreiben, das Ganze in eine DB Klasse umzuschreiben?
Die ganze Seite ist atm so gecodet und basiert auf keinem CMS oder Framework.
Ich hoffe, dass man mit der Frage was anfangen kann, bzw. mit dem Problem.
Vlt waren es auch einfach zuviele Besucher für das Webhosting-paket, aber ich möchte zumindest alle Ursachen meinerseits ausschließen.
mfg
ich brauch mal eure Hilfe.
Bin mir nicht sicher, ob es eher hier hin, oder ins SQL Forum gehört, aber da es kein Syntaxproblem oder so ist, denk ich, dass es hier besser passt.
Es geht um folgendes:
Es war Weihnachten und die Internetseite hatte statt den üblichen Besuchern nun knapp 10k-15000.
Dabei hat es laut Aussage des Webhosters den MySQL-Server in die Knie gezwungen, sodass es teilweise einen Totalausfall gab.
Dies möchte ich beim nächsten Mal möglichst verhindern.
Letztes Jahr gab es einen ähnlichen Ansturm, allerdings hielt da der gemietete Webspace (kein Server) den Besuchern stand. In der Zwischenzeit hab ich da einige Joinabfragen eingefügt und ich denke, dass es vlt daran liegt.
In den Laufzeitinformationen(PMA) hab ich folgende Infos gefunden:
Select_full_join 5,920 k Anzahl der Joins ohne Schlüssel. Wenn dieser Wert nicht 0 ist sollten die Indizes der Tabellen sorgfältig überprüft werden.
Select_range_check 9,825 Anzahl der Joins ohne Schlüssel, bei denen nach jeder Zeile auf Schlüsselbenutzung geprüft wurde. Wenn dieser Wert nicht 0 ist sollten die Indizes der Tabellen sorgfältig überprüft werden.
Select_range_check 9,825 Anzahl der Joins ohne Schlüssel, bei denen nach jeder Zeile auf Schlüsselbenutzung geprüft wurde. Wenn dieser Wert nicht 0 ist sollten die Indizes der Tabellen sorgfältig überprüft werden.
Kann ich irgendwie nachgucken, ob meine Joins da zutreffen?
Würde zwar denken, dass ich die Tabellen normalisiert habe, aber nunja.
Würde es sonst eventuell Helfen statt mysql_query() oder so dauernt zu schreiben, das Ganze in eine DB Klasse umzuschreiben?
Die ganze Seite ist atm so gecodet und basiert auf keinem CMS oder Framework.
Ich hoffe, dass man mit der Frage was anfangen kann, bzw. mit dem Problem.
Vlt waren es auch einfach zuviele Besucher für das Webhosting-paket, aber ich möchte zumindest alle Ursachen meinerseits ausschließen.
mfg
Kommentar