ruben: mysqladmin flush-hosts

Hallo Forum!

Ich habe ein Problem und keine Ahnung, wieso es auftritt.
Seit kürzestem tritt auf meinem Web-Host der folgende Fehler auf "Host 'gamma.xisto.com' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts'". Was das bedeutet, habe ich inzwischen rausgefunden, der Host von dem aus ich die Datenbank benutze wurde gesperrt, weil er mehr als 20 mal eine fehlerhafte Verbindung hervorgerufen hat.
Ich hab versucht, mich schlau zu machen und herausgefunden, dass man das verhindern sollte, indem man "schön" codet und Verbindungen stets mit mysql_close schließt (auch, wenn ich wiederum gesagt gekriegt habe, dass man in PHP4 das nicht mehr zu tun braucht, da alle Mysql-Verbindungen beim Ende des Dokuments abgeschlossen werden.
Nun bin ich also auf der Suche nach der Ursache für dieses Verhalten und inzwischen recht verzweifelt. Mein Host ist ein kostenloser und hat dementsprechend nicht den geduldigsten Support.
Die Sache ist: Ich dachte erst, es wäre ein Fehler in meiner Seite, der irgendwelche Verbindungen abbricht und deswegen Fehlverhalten verursacht, aber nun habe ich meine Datenbank ge-backuppt und gelöscht, sowie die einzigen beiden Prozesse, die auf die Datenbank zugreifen (meine Seite und ein Backup-CronJob von SourceForge) mit Passwort versehen /bzw. gelöscht.
Trotzdem: ungefähr eine Stunde nach dem Flush trat das Problem wieder auf.
Ich kann mir eigentlich nicht vorstellen, das Opfer von Hackern geworden zu sein, da meine Website nicht viel Aufmerksamkeit anzieht.
Kann mir jemand sagen, wie ich die Ursachen des Problems ausmachen kann?
Ich habe Konsolen-Zugriff, allerdings nicht alle Privilege, mein Error_log enthält per Voreinstellung keine SQL-Fehlermeldungen soweit ich weiß. Ich "dirigiere" meine Seite mit Cpanel, kennt man ja..

vielen Dank falls jemand einen Schimmer hat, was mir hier passiert,
Ruben

  1. echo $begrüßung;

    Seit kürzestem tritt auf meinem Web-Host der folgende Fehler auf "Host 'gamma.xisto.com' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts'". Was das bedeutet, habe ich inzwischen rausgefunden, der Host von dem aus ich die Datenbank benutze wurde gesperrt, weil er mehr als 20 mal eine fehlerhafte Verbindung hervorgerufen hat.

    Verwendest du vielleicht mysql_pconnect() statt mysql_connect()?
    Du schriebst nicht, ob du nun die mysql_close()-Anweisungen eingebaut hast, oder nur darüber philosophiert hast. Hast du, und was ergab diese Änderung?

    Hast du mal im Fehlerfall ein SHOW PROCESSLIST ausgeführt?

    echo "$verabschiedung $name";

    1. Verwendest du vielleicht mysql_pconnect() statt mysql_connect()?

      Nein.

      Du schriebst nicht, ob du nun die mysql_close()-Anweisungen eingebaut hast, oder nur darüber philosophiert hast. Hast du, und was ergab diese Änderung?

      Beides. Vorher bin ich mit dem close Befehl, wie mir im Nachhinein auffiel, sehr schlampig umgegangen, so dass unter Umständen ein Befehl nicht abgeschlossen wurde. Wie liegt es denn? Muss man schliessen, oder muss man nicht? Und ist das Grund genug fuer einen Fehler?
      Die Sache ist halt, dass ich meinen schlampigen Code schon seit einiger Zeit so ausfuehre.
      Was ich mich grade frage: Mir wurde vom Support gesagt, dass der Befehl mysqladmin flush-hosts die Hosts fuer den ganzen Server (gamma.xisto.com) flushed. Kann es sein, dass es gar nicht ich bin, der den Fehler auslöst, sondern ein Mitnutzer? Hab von denen noch nichts derartiges gehört wohl..
      Wie ich bereits sagte, ich hatte beim letzten Auftreten ja die Datenbanken gelöscht und die (meines Erachtens nach einzige) fehlerträchtigen Programme nicht aufgerufen.

      Hast du mal im Fehlerfall ein SHOW PROCESSLIST ausgeführt?

      Nein, kannt ich nicht. Was heisst im Fehlerfall? Sobald mir SQL den flush-host-Fehler ausliefert oder in dem Script in dem der Fehler auftritt (kenn ich ja nicht). Ich probiers jetzt einfach mal in der Konsole aus (wie gesagt, im Moment ist der Host wieder gesperrt und die Datenbanken sind ja gelöscht).

      Danke,
      Ruben

    2. Hast du mal im Fehlerfall ein SHOW PROCESSLIST ausgeführt?

      Kleines Update, hab das jetzt mal über Commandline (mysqladmin processlist) getan.
      Es gibt aber keine Prozesse, bei gelöschten Datenbanken, wen wundert's. Was ich mich trotzdem frage ist: warum werden Hosts gesperrt, wenn keine Datenbanken vorliegen..