Aishe: Maximale Laufzeit einer Query

Schönen Guten Tag!

Ich würde gerne auf meinem MySQL Server die Laufzeit der Querys beschränken.
Und zwar habe ich das Problem das einige Querys sehr lange laufen (z.B. selects auf phpbb_search_wordmatch von PhpBB3) und mir den Server etwas "dicht" machen.

Wenn mir jemand einen Tipp geben könnte nach was ich suchen muss, wäre ich sehr dankbar. Gegoogelt habe ich schon wie ein Weltmeister, bin aber noch nicht fündig geworden.

Vielen Dank vorab für Eure Hilfe.

Gruß
Aishe

  1. Und zwar habe ich das Problem das einige Querys sehr lange laufen (z.B. selects auf phpbb_search_wordmatch von PhpBB3) und mir den Server etwas "dicht" machen.

    meinst du abfragen auf die wordmatch-tabelle oder die querys, die diese tabelle erst befüllen? - die wordmatch-tabelle ist dafür da, extrem viel zeit bei der pseudo-volltextsuche zu sparen

    Wenn mir jemand einen Tipp geben könnte nach was ich suchen muss, wäre ich sehr dankbar. Gegoogelt habe ich schon wie ein Weltmeister, bin aber noch nicht fündig geworden.

    wenn du probleme hast, dass dein server bei einer abfrage auf diese tabelle in die knie geht, solltest du dir ernsthaft gedanken um deinen server machen - die wordmatch-tabelle hat genau 2 felder und wenn sie _wirklich_ groß wird etwa eine million datensätze - eine abfrage drauf muss durchflutschen wie nix

    1. Hallo Suit!

      Danke für deine schnelle Antwort. Betroffen sind die Abfragen auf die Tabelle. Hier habe ich mal einen Auszug aus dem "mytop".

      Id      User         Host/IP     DB      Time    Cmd Query or State
            --      ----         -------     --      ----    --- ----------
        544405  6462m153        10.0.1.3    1536        12  Query SELECT m.word_id FROM phpbb_search_wordmatch m, phpbb_search_wordlist
        544235  6462m153        10.0.1.3    1536        13  Query SELECT m.word_id FROM phpbb_search_wordmatch m, phpbb_search_wordlist
        543772  6462m153        10.0.1.3    1536       151  Query SELECT m.word_id FROM phpbb_search_wordmatch m, phpbb_search_wordlist
        542846  6462m153        10.0.1.4    1549       430  Query SELECT /*!40001 SQL_NO_CACHE */ * FROM phpbb\_posts\_text
        536958  6987m159        10.0.1.3    1593      1649  Query SELECT word_id FROM phpbb_search_wordmatch GROUP BY word_id HAVING CO

      Eine der Abfragen hängt da schon 1649 Sekunden rum....

      Das ist meine my.cnf

      port=3306
      skip-external-locking
      skip-bdb
      skip-innodb
      skip-log-warnings
      key_buffer_size=8M
      max_allowed_packet=16M
      table_cache=256
      sort_buffer_size=128K
      read_buffer_size=128K
      myisam_sort_buffer_size=128K
      thread_cache_size=8
      query_cache_size=4M
      query_cache_min_res_unit=1024
      query_cache_limit=1M
      thread_concurrency=2
      interactive_timeout=1800
      wait_timeout=1800
      max_connections=1000

      Meinst du ich könnte das was "tunen" ??

      Viele Grüße
      Aishe

      1. Eine der Abfragen hängt da schon 1649 Sekunden rum....

        kick die abfrage mal - ggf hängt sie nur

        Das ist meine my.cnf

        Meinst du ich könnte das was "tunen" ??

        hier kann ich dir leider nicht helfen, ist nicht ganz mein gebiet

      2. Hello,

        Wer hat diese Einstellungen festgelegt?

        key_buffer_size=8M
        max_allowed_packet=16M
        table_cache=256
        sort_buffer_size=128K
        read_buffer_size=128K
        myisam_sort_buffer_size=128K
        thread_cache_size=8
        query_cache_size=4M
        query_cache_min_res_unit=1024
        query_cache_limit=1M
        thread_concurrency=2
        interactive_timeout=1800
        wait_timeout=1800
        max_connections=1000

        unter http://dev.mysql.com/doc/refman/5.0/en/configure-options.html und ganz speziell
        unter http://dev.mysql.com/doc/refman/5.0/en/option-files.html#option-files-preconfigured

        findest Du ein paar standarisierte Option-Files
        siehe: 4.2.3.2.2. Preconfigured Option Files

        Diese Files sind abhängig von Deiner Installation und Version und werden mit der MySQL-Dsitribution mitgeliefert. Suche sie in Deiner Installation und vergleiche sie.

        Mir erscheinen 8M für den key_buffer sehr gering. Setze ihn mal auf 32M und schau, was passiert.
        Das hängt natürlich auch vom Verfügbaren Arbeitsspeicher ab...

        Liebe Grüße aus Syburg bei Dortmund

        Tom vom Berg

        --
        Nur selber lernen macht schlau
        http://bergpost.annerschbarrich.de
        1. Hallo Tom!

          Danke für deine Hilfe...
          Ich werde das mit dem key_buffer mal ausprobieren.
          Die Links werde ich auch gleich einmal durcharbeiten.

          Dir noch einen schönen Tag.

          Gruß
          Aishe