Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 1621 to 1630 of 1731 « Previous | Next »
Sysadmins Nightly Mental Pain (SNMP)

Heute habe ich Das Böse gesehen. Und überlebt. Lest meinen Tagebucheintrag während ich dem Trunke verfalle um das Vergessen zu suchen:

Kris vs. Net SNMP, Runde 1 - Das Perl-Match.

Neues an der PHP6 Front

So eben gab Kaj Arnö in seinem Blog bekannt, daß MySQL im März 2007 eine neue Library unter der PHP License veröffentlichen wird.

Für MySQL’s PHP team (Ulf Wendel, Andrey Hristov und mich) bedeutet dies nicht nur eine neue Herausforderung und die damit verbundene Arbeit, sondern auch die Chance bestehendes zu verbessern und zu optimieren. Durch das neue MySQL Modell, die Differenzierung zwischen Community und Enterprise, erhalten wir zusätzlich die Möglichkeit, für PHP essentielle Dinge (die leider noch nicht alle ihren Weg in die MySQL Code base gefunden haben) schneller zu implementieren, und dem Benutzer zur Verfügung zu stellen, ohne auf Release-Cyclen Rücksicht nehmen zu müssen.
Ob per IRC oder Mail, als Maintainer der mysql extensions erhielt ich den letzten Stunden viele Fragen, teilweise begleitet von Skepsis oder auch von Enthusiasmus.

[Mehr]
Slides zum Performance Tuning Vortrag

Slides zum Performance-Tuning Vortrag. Und hier sind die Slides zum Performance-Tuning-Vortrag, den ich auf der European MySQL Customer Conference in München gehalten habe.

Die MySQL-Artikel in diesem Blog sind in der Kategorie MySQL zu finden. Der von mir im Vortrag angesprochene Beitrag Leben mit Fehlern - der Schlüssel zum Scaleout ist nun ebenfalls verlinkt.

Performance Tuning Vortrag in München

In dieser Meldung verweist Heise auf die MySQL Anwenderkonferenz in München. Ich bin laut Programm für den Performance Tuning Vortrag vorgesehen und muß ggf. auch noch für einen Kollegen einspringen, der gerade von der Grippe niedergestreckt wurde.

Ein anderes Thema wird wohl die Reorganisation des Servers in Community und Enterprise Edition und das Release von "Merlin" als MySQL Network Monitor- und Advisor sein.

Herzlichen Glückwunsch zur 1.0, …

[Mehr]
SERVER_QUERY_NO_INDEX_USED, SERVER_QUERY_NO_GOOD_INDEX_USED

Die MySQL-Server Optionen –log-slow-queries und –log-queries-using-no-indexes sollten jedem MySQL-Anwender geläufig sein. Wenn nicht, schnell die Links verfolgen und die Wissenslücke schließen.

Nicht bekannt waren mir die Flags SERVER_QUERY_NO_INDEX_USED und SERVER_QUERY_NO_GOOD_INDEX_USED. Ich bin das erste Mal über die beiden Flags gestolpert als ich mich fragte wie ein Test für die PHP-Funktion mysqli_report() auszusehen hat. mysqli_report() ist eine überaus nützliche Funktion, welche die ansonsten wenig redsame ext/mysqli-API dazu bringt jedes noch so kleine Problem in Form einer PHP-Warning oder eines …

[Mehr]
SERVER_QUERY_NO_INDEX_USED, SERVER_QUERY_NO_GOOD_INDEX_USED

Die MySQL-Server Optionen –log-slow-queries und –log-queries-using-no-indexes sollten jedem MySQL-Anwender geläufig sein. Wenn nicht, schnell die Links verfolgen und die Wissenslücke schließen.

Nicht bekannt waren mir die Flags SERVER_QUERY_NO_INDEX_USED und SERVER_QUERY_NO_GOOD_INDEX_USED. Ich bin das erste Mal über die beiden Flags gestolpert als ich mich fragte wie ein Test für die PHP-Funktion mysqli_report() auszusehen hat. mysqli_report() ist eine überaus nützliche Funktion, welche die ansonsten wenig redsame ext/mysqli-API dazu bringt jedes noch so kleine Problem in Form einer PHP-Warning oder eines …

[Mehr]
SERVER_QUERY_NO_INDEX_USED, SERVER_QUERY_NO_GOOD_INDEX_USED

Die MySQL-Server Optionen –log-slow-queries und –log-queries-using-no-indexes sollten jedem MySQL-Anwender geläufig sein. Wenn nicht, schnell die Links verfolgen und die Wissenslücke schließen.

Nicht bekannt waren mir die Flags SERVER_QUERY_NO_INDEX_USED und SERVER_QUERY_NO_GOOD_INDEX_USED. Ich bin das erste Mal über die beiden Flags gestolpert als ich mich fragte wie ein Test für die PHP-Funktion mysqli_report() auszusehen hat. mysqli_report() ist eine überaus nützliche Funktion, welche die ansonsten wenig redsame ext/mysqli-API dazu bringt jedes noch so kleine Problem in Form einer PHP-Warning oder eines …

[Mehr]
MySQL Performanceprobleme mit einem Profiler analysieren

Oprofile ist ein Profiler. Und zwar einer, der die Performance Measurement Instrumentation verwendet, die in moderne CPUs eingebaut ist, wenn diese vorhanden ist. Der Profiler braucht also keine speziell für Profiling compilierten Binaries, sondern zieht sich statische Samples des Programmzählers aus dem laufenden System und analysiert diese: Es findet heraus, welcher Prozeß gerade aktiv ist, welche Bibliothek in diesem Prozeß gerade verwendet wird und wenn Symboltabellen vorhanden sind (Kein "strip" auf die Bibliothek oder das Programm angewendet), dann weiß Oprofile sogar, welche Funktion oder Methode gerade aktiv ist.

Das kann man auch auf ein laufendes MySQL anwenden. Dies hier zum Beispiel ist ein mysqld, der mit einem Haufen MyISAM Tabellen arbeitet und nicht zu busy ist. Man kann sehen, daß aus irgendeinem Grund sehr viel Zeit …

[Mehr]
mysqli converter

Um die Migrierung bestehender Projekte von PHP’s mysql auf die neue mysqli Erweiterung zu vereinfachen, haben Ulf Wendel und Andrey Hristov ein Konvertierungswerkzeug zur Verfügung gestellt, welches den PHP Programmierer bei der Migrierung unterstützt.

Basierend auf PHP’s tokenizer wird der alte Quellcode analysiert, und mysqli code erzeugt. Wo dies nicht möglich ist, sei es durch Benutzung veralteter Funktionen (z.B. mysql_escape_string) oder komplex verschachteltem Code (welcher durch den Tokenizer nicht mehr korrekt aufgespalten kann) liefert der Converter Fehler und Lösungsvorschläge.

Links:

MySQL Forge Artikel: Converting to mysqli

MySQLi Converter

Kris vs. 2xMSA 30

Ein MSA-30 Array mit 14 Platten. Liebes Tagebuch!

Heute bin ich gegen eine HP 585 und zwei MSA 30 angetreten und ich bin mir nicht ganz sicher, wer gewonnen hat. Aber laß mich von vorne erzählen.

Wie Du weißt, liebes Tagebuch, berechnet sich die Anzahl der Zugriffe, die man von einer einzelnen Platte pro Sekunde erwarten kann, wie folgt: 1000ms/(Average Seek Time in ms + Rotational Delay in ms + Transfer Time in ms). Die Average Seek Time kann bei einer guten Platte schon mal 4 ms klein sein, bei schlechten Platten auch mal 8ms groß.

Die Rotational Delay ist bei 18000 rpm bei 300 Umdrehungen pro Sekunde, als 600 Halbdrehungen pro Sekunde oder 1/600 Sekunde = 1.6ms. Bei Laptop-Platten mit 6000 rpm ist sie dreimal größer, also 5ms. Die Transfer Time kann man für den Rest der Betrachtungen auch getrost vergessen. Somit haben wir eine Access Time von insgesamt 5ms bis 12ms rauf. Das übersetzt sich zu …

[Mehr]