Ankündigung

Einklappen
Keine Ankündigung bisher.

probleme mit MySQL-Performance

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ehloo
    hat ein Thema erstellt probleme mit MySQL-Performance.

    probleme mit MySQL-Performance

    Hallo zusammen,

    bin langsam am ende mit den Nerven... und hoffe dass man mir helfen kann.

    Ich von einem älteren Server (von 1und1) zu einem anderen Anbieter gewechselt. Im Gegensatz zum alten Server hat der neue Server hat 16 GB Ram und 8 CPUs, also quasi doppel und dreifach mehr Hardware-Power und Bandbreite.

    Soweit so gut.

    Theoretisch müssten ["sollten"] die MySQL-Abfragen mindestens genauso schnell wie auf dem alten Server durchlaufen....

    Leider ist es in der Praxis nicht so, obwohl die Datenbanken exakt die gleichen;

    Bei einer Abfrage läuft es sogar ins Timeout: eigentlich sollte das zu einer Index-Problem hindeuten, allerdings sind die Indexe exakt gleich gesetzt...


    Ich bin nun ratlos...

    Hoffe auf wertvolle Ratschläge

  • Jens Clasen
    antwortet
    Weil identisches Verhalten nur gleiche Symptome, nicht aber zwingend gleiche Ursache heißt.

    Ein Datenbankserver, der z.B. auf die falsche Storage Engine hin optimiert wurde, der ist mit und ohne Indizees bei Verwendung einer anderen Engine unter Umständen lahm und läuft bei aufwendigen Queries auch gerne mal in Timeouts.

    Falsch gesetzte Indizees wiederum können auch auf einem richtig konfigurierten Server zum selben Fehlerbild führen, als wenn gar keine existieren würden.

    Da so ziemlich alle Informationen über Server und Projekt offensichtlich geheim sind, kann hier eigentlich nur im Nebel gestochert werden.

    Gruß Jens

    Einen Kommentar schreiben:


  • mquadrat
    antwortet
    Mag mir noch jemand erklären, warum das ein Index-Problem sein soll, wenn das Verhalten laut ehloo ohne Indizes identisch ist? [Hab heute meinen zweiten Kaffee noch nicht gehabt]

    Einen Kommentar schreiben:


  • eagle275
    antwortet
    es gibt ein sehr gutes Buch von O'Reilly (?) "High Performance MySQL" - dabei geht es unter anderem auch um Beschleunigung mittels Replikation (da stehen dann 2 Datenbank-Server bereit ... ) und weitere Mittel, um es zu beschleunigen. Vorher solltest du aber deinen Datenbank-Server erstmal dazu bringen, den VIELEN RAM deines Servers auch anständig zu benutzen. Hinweise zu Konfigurationsvariablen hast du ha bereits erhalten. Im Zweifel lies dazu in der Oracle-Anleitung für mysql :
    http://dev.mysql.com/doc/refman/5.1/de/index.html - ich hab bei mir noch 5.1, ich weiß nicht, ob das auch für 5.5 schon vorliegt, aber die Konfigurationsvariablen ändern sich ja nicht von heut auf gestern

    und lass bitte den Unsinn, zum gleichen Thema ein 2tes Posting aufzumachen ... EINS reicht völlig

    Lass dir deine fraglichen Abfragen bitte im Browser ausgeben (den Abfragetext), kopiere ihn, öffne phpmyadmin und dann im sql-Fenster gibst du ein
    Code:
    explain
    und fügst deine Abfrage hinter dem explain (und einem folgenden Leerzeichen) ein - dann sagt dir mysql, ob es Indizes verwendet

    Einen Kommentar schreiben:


  • ehloo
    antwortet
    das habe ich gecheckt habe schon beide werte auf 2GB hochgesetzt, hat auch nichts gebracht.

    ((

    Einen Kommentar schreiben:


  • Jens Clasen
    antwortet
    Zitat von php1704 Beitrag anzeigen
    Check mal die Einstellungen "key_buffer", wenn du MyISAM verwendest,
    und "innodb_buffer_pool_size" für InnoDB.
    Das wäre sicherlich sinnvoller, als hier weiter wild rum zu raten. Es gibt übrigens auch noch ein paar andere relevante Einstellungsmöglichkeiten - deshalb auch meine in #4 geäußerte Informationsnachfrage, die so sträflich ignoriert wurde.

    Gruß Jens

    Einen Kommentar schreiben:


  • ehloo
    antwortet
    Zitat von eagle275 Beitrag anzeigen
    ansonsten mach's wie ich , gib Windows(Server) die Schuld </OT>


    Leider muss das Tool auf Win2008 laufen

    Einen Kommentar schreiben:


  • eagle275
    antwortet
    ansonsten mach's wie ich , gib Windows(Server) die Schuld </OT>

    Einen Kommentar schreiben:


  • php1704
    antwortet
    Check mal die Einstellungen "key_buffer", wenn du MyISAM verwendest,
    und "innodb_buffer_pool_size" für InnoDB.

    Grüße.

    Einen Kommentar schreiben:


  • ehloo
    antwortet
    Die Idexe hatte auch son deaktiviert, allerdings hat sich nichts geändert.

    Ich habe Vollzugriff auf den Server.


    Ich habe das Gefühl, dass die Indizes nicht laufend aktualisiert und im RAM gehalten werden. Ist es irgendwie möglich die indizes manuell ins RAM zu laden?

    Einen Kommentar schreiben:


  • mquadrat
    antwortet
    Deaktivier doch zum Testen einfach die Indizes.

    Wie weit hast du Zugriff auf den Server?

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Bitte Forenstruktur beachten!

    [MOD: verschoben]

    Einen Kommentar schreiben:


  • ehloo
    antwortet
    Hat jemand noch eine Idee?

    Einen Kommentar schreiben:


  • Jens Clasen
    antwortet
    Nö, nicht zwingend, bzw. unter Umständen nur indirekt.

    Gruß Jens

    Einen Kommentar schreiben:


  • ehloo
    antwortet
    Habe gerade festgestellt, dass wenn ich die Tabelle lösche und anschließend neu wieder neu anlege und dann die Daten aus der Sicherung (dump) wieder einlese ==> dann funktioniert es zwar, allerdings bis zum nächsten Insert-Befehl...

    Da muss irgendwas noch mit den Indexen sein? ODER?

    Einen Kommentar schreiben:

Lädt...
X