Zum Inhalt springen

Zwei Anfängerfragen zu MySQL


NooJoo

Empfohlene Beiträge

Hallo

Ich arbeite jetzt (ein wenig) in der "Webserver"-Abteilung, u.a. gibts da mehrere Server, die (via Tomcat) aus ner MySQL-Datenbank HTML-Seiten generieren.

Von dieser Webserver-Software (einge"kauft" von einer Fraunhofer-Gesellschaft) haben wir ca. 10 Stück, auf manchen Servern laufen 3 oder Instanzen. Diese Umgebung ist "historisch gewachsen", d.h. bzgl. Einstellungen oder Software-Version "evtl." uneinheitlich.

Nun möchte ich Hauptspeichernutzung und Platten-I/O minimieren, bzw. sicherstellen, dass da nix mehr rauszuholen ist.

Einer der Server nutzt 16 GB RAM und 4 (virtuelle Prozessoren) (ist ein SLES 10 SP2 x64) (auf Windows läuft die Software nicht), andere ungefähr die Hälfte.

Alle Server sind in ner ESX-Farm, also Hardware-Ressourcen leicht hinzufügbar / entfernbar.

Zum einen ist bei Datenbanken eine "Möglichkeit", die Geschwindigkeit zu erhöhen, die Verwendung von Indexen. Wie kriege ich raus, ob auf den "richtigen" Spalten Indexe sind? Gibts da eine Art "Query Analyzer" oder "Query Optimizer", (ich glaube für Oracle gibts da eine teure Extrasoftware namens TOAD).

Dazu müsste ich wahrscheinlich die MySQL-Anfragen, die das Tomcat benutzt, irgendwie "mitschneiden". Wie?

Einen MySQL-Dump einer kompletten Instanz habe ich mal auf meinen Win7-Hobel rübergeholt: 6 MB Dateigrösse. Wie weiter?

In der Vergangenheit hat auch ein "Spezialist" eine MySQL -Datenbank auf 2 MB Hauptspeichernutzung begrenzt, da hat die Datenbank für 300 Anfragen bearbeitet und den Rest dann nicht mehr.

Wie kriege ich raus, ob auch hier eine Hauptspeichergrenze sinnvoll ist, oder ob eher nicht?

Danke für eure Geduld

Link zu diesem Kommentar
Auf anderen Seiten teilen

es gibt einen eingebauten "analyzer" der allerdings nix automatisch mach. heißt jedes statement muss von hand überprüft werden (bzw scripte dafür geschrieben werden).

das ganze funktioniert in dem man EXPLAIN vor das eigentliche SELECT statement schreibt (INSERT, DELETE und UPDATE könnte man testen in dem man einfach die WHERE bedingung an ein SELECT hängt).

es gibt auch tools die das automatisch können, zB: MySQL :: MySQL Query Analyzer oder MONyog MySQL Monitor - Download MONyog MySQL Monitor Demo by Webyog Softworks Private Limited - Business Software, Information Database Software

Die sind aber nicht kostenlos. (zumindest fällt mir da nix ein)

zum "mitschneiden" der queries: MySQL :: MySQL 5.1 Reference Manual :: 5.2.3 The General Query Log und MySQL :: MySQL 5.1 Reference Manual :: 5.2.5 The Slow Query Log

hauptspeichergrenze halt ich nicht für sinnvoll, eher die einstellungen von mysql ändern damit nicht mehr als XX MB Ram verbraucht werden. allerdings sind 2MB extrem wenig.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...