MySQL auf Windows: Lange Zugriffszeiten unter Linux

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • MySQL auf Windows: Lange Zugriffszeiten unter Linux

    Hallo.
    Ich arbeite in meiner Freizeit in einer Gruppe mit, in der wir gemeinsam verschiedene Softwareprojekte realisieren. Dazu treffen wir uns jeden Dienstag.
    Unsere Versionsverwaltung (SVN) und die MySQL-Datenbank liegen auf einem Server, der mit Windows 2000 betrieben wird. Die meisten von uns verwenden auch Windows-Clients. Zwei unter uns, unter Anderem ich selbst, verwenden allerdings Linux auf unseren Notebooks.
    Soweit die Vorgeschichte.

    Zum Problem:
    Zugriffe von den Linux-Clients per Browser auf den MySQL-Server (speziell mysql_connect) dauern sehr lange, ich schätze 10-20 Sekunden. Diese Zeit muss ich also beim Aufbau einer jeden Seite warten, die auf unsere Datenbank zugreift.
    Die Windows-Clients erzielen normale Zugriffszeiten.

    Woran könnte das liegen?
    Vielen Dank
    Toni
    edit: Ich habe das Thema nun auch hier angesprochen. Bitte um Entschuldigung für's crossposten.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von t0n1 ()

  • Hallo,

    das ist mal eine seltene Konstellation. Linux auf den Clients. Windows auf dem Server.

    Nunja.. erstmal: Ist sichergestellt, dass du zum Zeitpunkt des Testens als einziger auf den Server zugreifst.
    Laufen andere MySQL Prozesse?

    Quellcode

    1. SHOW PROCESSLIST


    Installiere mal bitte ein phpmyadmin auf dem Server und schaue ob du/andere von dort einen schnelleren Zugriff haben.
  • Die Konstellation ist durchaus ungewöhnlich.
    Wir sind fast ausschließlich Schüler in der Gruppe und 1-3 (Wirtschafts-)Informatiker, die uns bei Problemen helfen. Das ganze wird gesponsort von einem Unternehmen. Mehr Informationen gibt es bei Interesse hier. Es ist also dazu gedacht, interessierten Schülern eine Möglichkeit der Weiterbildung zu geben. Einer dieser Schüler bin ich ;)
    Der Laptop auf dem die Serverdienste laufen, wird vom Unternehmen gestellt, daher die "Server-auf-Windows"-Konstellation. Nur 2 von uns nutzen Linux auf ihren eigenen Notebooks.

    Zurück zum Problem:
    Ich greife zum Zeitpunkt des Tests nicht immer alleine auf den Server zu. Da wir aber maximal 10 Personen sind, sollte das nicht so sehr ins Gewicht fallen. Außerdem tritt das Problem ständig auf.
    Die Prozesse kann ich erst wieder am Dienstag überprüfen - wie gesagt, es ist kein privater PC auf dem der Server läuft.
    phpmyadmin nutzen wir bereits. Deine Frage kann ich allerdings nicht verstehen. Also alle Windowsnutzer haben schnellen Zugriff, alle Linuxer müssen warten.

    Vielleicht noch kurz allgemein:
    Die MySQL-DB liegt auf dem Server, die PHPs usw. liegen bei jedem auf einem lokalen Webserver. Also müssen beide Server miteinander kommunizieren. (Ich hoffe, ihr versteht, was ich meine.)
  • Hi,
    interessantes Projekt. Wir haben in der Schule noch nicht so professionell gearbeitet. Freut mich, dass ihr mit Subversion arbeitet ;)

    Mit der phpmyadmin-Frage möchte ich nur herausfinden ob ihr über eine generell langsame Verbindung zum Server verfügt - oder ob es wirklich an MySQL liegt. (das halte ich nämlich für unwahrscheinlich)
  • Es ist kein Schulprojekt. Es wird wie gesagt Schulunabhängig von diesem Unternehmen veranstaltet. Ich finde die Chance die uns damit gegeben wird auch sehr attraktiv.

    Wir haben es mit unterschiedlichen PHP-Versionen als auch Konfigurationen ausprobiert. Ich glaube nicht, dass es daran liegt. Ich werde trotzdem nachher mal Infos posten. Ich muss dann nur fix an den anderen PC. Wird also gleich nachgereicht.

    Bei anderen Anwendungen auf dem Server (z.B. beim Arbeiten auf dem Server mit phpmyadmin) ist keine Verzögerung zu erkennen, alles geht gewohnt schnell. Nur wenn mein lokaler Webserver (also eine PHP darauf) auf das mysql auf dem Server zugreifen will, dauert es lange...

    edit:
    Ich habe gerade eine vielversprechende Antwort im Unixboard erhalten:
    Zitat von lordlamer
    hört sich nach DNS an.
    Ich denke der Mysql Server versucht ein Reverse Lookup deiner IP. Starte den Mysql Server einfach ohne dieses Reverselookup.


    edit2:
    So, jetzt kommen die Infos :)
    Also den Webserver habe ich mir nicht selbst eingerichtet, sondern damals einfach das LAMPP von apachefriends.org genommen. Für eine reine Testumgebung ohne Fummelei tat das bisher bei mir immer zufriedenstellend seinen Dienst.
    Im Anhang habe ich mal die komplette PHPinfo, da diese hier den Rahmen sprengen würde.
    Dateien
    • phpinfo.pdf

      (128,59 kB, 508 mal heruntergeladen, zuletzt: )

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von t0n1 ()

  • Bist du dem ersten Tip mal nachgegangen?

    zumindest ist es einfach zu testen:
    You can disable DNS hostname lookups by starting mysqld with the --skip-name-resolve option. However, in this case, you can use only IP numbers in the MySQL grant tables.


    Allerdings dürfte dann nur die erste Anfrage so lange dauern. Danach hätte MySQL den DNS Eintrag nämlich "eigentlich" gecached.