Datenbankfehler aufgrund max_queries_per_hour

  • So, nun brauche ich mal einen fachmännischen Rat zu einem Thema, bei der ich mich nicht so sattelfest fühle. Folgendes ist vorgefallen:

    Ich habe auf einer Test-Installation gearbeitet, die seit April letzten Jahres ohne Probleme lief und an der ich verschiedene Dinge, wie Themes und Plugins, gerne austeste, bevor ich sie auf eine Live-Umgebung loslasse. Auch gestern hatte ich eine neue Version - eigentlich RC - eines Plugins getestet, doch ganz plötzlich ging nichts mehr. Was ich auch versuchte aufzurufen, ich landete auf der Installationsseite von WordPress, wo man den Titel und den Admin (Name, PW, E-Mail) einträgt, also offensichtlich wurde die DB nicht erkannt.

    Die Installation liegt bei einem angelsächsischen Hoster, mit dem ich bisher keinerlei Schwierigkeiten hatte und wo ich sehr viel Freiraum habe. Also habe ich mich dort eingeloggt, um zu schauen, ob beim Provider selbst ein Problem besteht, was aber nicht der Fall war. Danach versuchte ich über phpMyAdmin die Datenbank aufzurufen, bekam jedoch die folgende Fehlermeldung:

    Zitat

    #1226 - User 'st****ker' has exceeded the 'max_queries_per_hour' resource (current value: 50000)


    Daraufhin habe ich ein Support-Ticket geschrieben, der auch prompt behandelt wurde:

    Zitat

    ... would like to suggest you few things which might help you:
    1. Use mysql_connect() instead of mysql_pconnect() unless you have a good reason to do so.
    2. Always put a mysql_close() in the scripts you are using.

    Further I have increased the limit so you should not face the problem again.If you do not have any further queries on this issue, you are welcome to rate and close this ticket.
    Please get back to us if you need any further assistance.

    Ich habe dann das neu installierte Plugin deaktiviert (Ordner umbenannt) und nach einer guten Stunde konnte ich die Website wieder aufrufen.

    So, und nun zur eigentlichen Frage (wird ja auch Zeit nach der langen Einleitung ;) ):

    Ich habe den Provider gebeten, in den Error-Logs nachzuschauen, welches Skript die hohen Zugriffzahlen verursacht hat. Ich dachte, wenn ich ihm die Datenbank und den Hostnamen sage und die Zeit, als der Fehler aufgetreten ist, wüsste er, wo zu schauen ist. Aber ich erhielt folgende Antwort:

    Zitat

    Due to the clustered structure of our systems there is no single log file to use as your site is served by many servers.
    It is not possible for us to check the exact script which is causing this error. We will suggest you to use mysql_close() in the scripts you are using.

    Ich habe versucht zu insistieren, die Angaben explizit wiederholt und nochmals geschrieben, dass es sich um eine WordPress-Installation handelt - leider erfolglos.

    Kann das sein, dass mit diesen Angaben eine Zuordnung zu einem Errorlog nicht möglich ist - oder müsste eine übergeordnete Instanz dazu angesprochen werden, weil der "gewöhnliche" Support (Ticketing-System) tatsächlich keine solchen Möglichkeiten hat?

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ich bin auch nicht gerade der Spezialist in Sachen Server-Support, aber mein Hoster kann genau sehen wer und wodurch hohe Zugriffszahlen verursacht werden. Und Anhand der genauen Zeitangabe ist es doch ein Leichtes in das Error-Log zu schauen. Es kann natürlich sein, dass der Hoster sehr viele Error im Log hat, aber dort müsste ja zu filtern sein, um welchen internet IP/welche DB/welche Domain es sich handelt, denn die Request werden ja an eine bestimmte Adresse gestellt.

    Ich nehme mal an, dass Du wirklich nur an den "gewöhnlichen" Support gelangt bist und nicht an einen Server-Admin. Vielleicht ist es denen auch zu viel Arbeit ;-)

    Das Geheimnis des Könnens liegt im Wollen!
    [size=12]Bitte keine Hilfegesuche per PN (auch keine "privaten" Links). Das ist ein öffentliches Forum.[/SIZE]

  • Im ErrorLog wird da nicht viel stehen denke ich, den der Fehler wird ja direkt beim Connect verursacht, da ja bereits der Aufbau zur Datenbank verboten wird und das macht kein plugin sondern wordpress itself;)

    50000 Queries sind schon ne Menge, kommt aber drauf an wieviele Aufrufe man so hat, wenn man pro Seitenaufruf etwa 20-60 SQl Queries hat und nur ein paar hundert besucher ist das limit schnell erreicht, deshalb hat der support ja auch dieses erhöht :-)

    Ausserdem denke ich auch nicht dass es aufgabe des Supportes ist zu analysieren wo zu viele queries verursacht werden (zumindest nicht kostenfrei)

    Ich analysiere nur selten Datenbanken, ich weiß das man sich Logs in PHp-Admin erstellen lassen kann, weiß nur nicht ob man dazu root sein muss :D

    Es gibt auch Plugins wie http://wordpress.org/extend/plugins/sqlmon zur analyse, normal sind zwischen 20 und 60 Queries pro Seitenaufruf

    Digitaler Rucksack Nomade

  • Erstmal gucken welches das überhaupt ist :D das Plugin das upgedated wurde nun einfach zu beschuldigen halte ich für riskant... Wenn sein Blog mit 50000Queries limitiert darf er jeden Tag auch nur etwa 1000 Seitenaufrufe haben (bei 50 Queries). Mit Sql Mon kann man sich alle Queires eines Seitenaufrufes anzeigen lassen und dann kann man sehen was dort evtl Ursache ist :)

    Digitaler Rucksack Nomade

  • Hey, super spannend, ich lerne wahnsinnig viel von Euch.

    michi: ich werde mal SQLMon installieren, und dann schauen, ob ich damit weiter komme. Meine Überlegung zu den Errorlogs war gewesen, dass das Überschreiten der Limite eine Meldung auslösen würde, der in den Log geschrieben wird, bevor eben der Datenbankzugriff gesperrt wird.

    Und: ich bin weit davon entfernt, ein Plugin zu "beschuldigen". Zumal es in den Vorgängerversionen nie irgendwelche Fehler produziert hat. Zur Berechnung: das Limit ist auf 50000 Queries pro Stunde gesetzt, nicht pro Tag. Mit dem Autor stehe ich auch in Kontakt, bisher bin ich der Einzige, der so etwas berichtet hat an ihn (es ist ein persönlicher Kontakt, der schon mehrere Jahre besteht, und ich habe ihn nicht öffentlich angeschrieben, daher glaube ich ihm das). Mal schauen, was noch kommt ...

    codestyling: ich komme gerne auf Deine Frage zurück, und nenne Dir sehr gern das Plugin. Darf ich Dich hier per PN anschreiben?

  • wupps, mein fehler :D Ok per Hour ist dann schon kritisch :-o, mit sqlmon dürfte sich das aber recht schnell klären lassen :-) dort werden auch exakt die sql-befehle genannt die ausgeführt werden :)

    Digitaler Rucksack Nomade

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!