1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

MySQL 8.0 Extreme Performanceschwierigkeiten

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von CMBurns, 17 März 2019.

  1. CMBurns

    CMBurns Neuer Benutzer

    Hallo zusammen,

    nachdem alle Websuchen nicht geholfen haben, bin ich auf euer Forum gestoßen. Ein Forum ist auch der Auslöser meiner Schwierigkeiten. Ich bin gerade dabei, von einer alten Linuxmaschine auf ein Win2016 umzusteigen, da sich mit dem alten OS u.a. php nicht mehr aktualisieren ließ.

    An sich läuft auch alles recht performant, allerdings nur so lange, wie die Abfragen nicht zu komplex werden. Das hier kommt aus einem alten Stück Code, der vom Entwickler nicht mehr gewartet wurde.

    SELECT
    b.id_board, b.name AS bname,
    c.id_cat, c.name AS cname,
    m.id_topic, m.id_msg,
    t.id_member_started, t.id_first_msg, t.id_last_msg, m.body, m.smileys_enabled,
    m.subject, m.poster_time, m.thank_you_post_counter, m.thank_you_post
    FROM smf_messages AS m
    INNER JOIN smf_topics AS t ON (t.id_first_msg = m.id_msg)
    INNER JOIN smf_boards AS b ON (b.id_board = t.id_board)
    LEFT JOIN smf_categories AS c ON (c.id_cat = b.id_cat)
    WHERE m.id_member = 144
    AND m.thank_you_post = 1
    AND 1=1
    ORDER BY m.id_msg DESC
    LIMIT 0, 30

    Laufzeit auf der alten Maschine (MySQL 5.1.66) 0,25 Sekunden, auf der neuen Maschine (8.0.15) 215 Sekunden.

    Ich bin inzwischen ein wenig planlos (bin erfahrener Amateur beim Thema DB), habe aber mehr und mehr den Verdacht, dass in der Konfig etwas krumm ist.

    Danke für eure Anregungen.
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Mit Konfig-Parametern kann man die Performance typischerweise vielleicht um 10% ver(schlimm)bessern. Windows würde ich schon mal nicht als Plattform für Datenbanken empfehlen. Windows mag ja gut als Gaming-Plattform sein, aber nicht für sowas. Wäre es PostgreSQL, würde ich jetzt nach EXPLAIN (ANALYSE, BUFFERS) Deiner Abfrage fragen, aber MySQL hat ja kein (vernünftiges) Explain. Fehlende Indexe? Das letzte Element Deiner Where-Condition ist übrigens hyperfluid.
     
  3. Walter

    Walter Administrator Mitarbeiter

    Vermutlich hast Du unter Windows nur eine Standard-Konfiguration und hattest unter Linux eine vernünftige Konfiguration - oder aber Linux kommt mit einer Standard-Konfiguration einfach besser zurecht.

    Poste doch mal vom alten und vom neuen System die Konfigurationsdatei (my.cnf) und welche Art von Tabellen Du nutzt (MyIsam oder Innodb).
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden