PythonQ 240-8XX Manual de usuario Pagina 716

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 768
  • Tabla de contenidos
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 715
Anhang D: Anmerkungen zur Portierung auf andere Systeme 695
Wenn Sie einen Speicher¨uberlauffehler vermuten, onnen Sie MySQL mit --
with-debug=full kompilieren, was zus¨atzlich einen (SAFEMALLOC)-Pr¨ufer f¨ur die
Speicherzuweisung installiert. Das Laufenlassen mit SAFEMALLOC ist jedoch recht
langsam. Wenn Sie daher Performance-Probleme bekommen, sollten Sie mysqld mit der
--skip-safemalloc-Option starten. Das schaltet die Speicher¨uberlaufpr¨ufung f¨ur jeden
Aufruf von malloc und free ab.
Wenn mysqld nicht mehr abst¨urzt, wenn Sie ihn mit --with-debug kompilieren, haben
Sie wahrscheinlich einen Compiler-Bug oder einen Timing-Bug innerhalb von MySQL ge-
funden. In diesem Fall onnen Sie versuchen, -g f¨ur die CFLAGS- und CXXFLAGS-Variablen
oben hinzuzuf¨ugen und nicht mehr --with-debug zu benutzen. Wenn mysqld jetzt stirbt,
onnen Sie wenigstens mit gdb mit ihm verbinden oder gdb auf die Core-Datei benutzen,
um herauszufinden, was passiert ist.
Wenn Sie MySQL zum Debuggen konfigurieren, onnen Sie viele zus¨atzliche Sicher-
heitpr¨uffunktionen hinzuf¨ugen, die die Gesundheit von mysqld beobachten. Wenn Sie etwas
“Unerwartetes” finden, wird ein Eintrag nach stderr geschrieben, den safe_mysqld in die
Fehler-Log-Datei leitet! Das heißt auch, dass Sie bei unerwarteten Problemen mit MySQL
und der Benutzung einer Quelldistribution als erstes MySQL zum Debuggen konfigurieren
sollten! (Die zweite Sache are nat¨urlich, eine E-Mail an [email protected]
zu schicken und um Hilfe zu bitten. Bitte benutzen Sie das mysqlbug-Skript ur alle
Bug-Berichte oder Fragen hinsichtlich der MySQL-Version, die Sie benutzen!
In der Windows-MySQL-Distribution wird mysqld.exe vorgabem¨aßig mit Unterst¨utzung
f¨ur Trace-Dateien kompiliert.
D.1.2 Trace-Dateien erzeugen
Wenn der mysqld-Server nicht startet oder wenn Sie den mysqld-Server schnell zum Absturz
bringen onnen, onnen Sie versuchen, eine Trace-Datei zu erzeugen, um das Problem zu
finden.
Hierf¨ur brauchen Sie einen mysqld, der zum Debuggen kompiliert ist. Sie onnen das mit
mysqld -V pr¨ufen. Wenn die Versionsnummer mit -debug endet, ist Unterst¨utzung f¨ur
Trace-Dateien einkompiliert.
Starten Sie den mysqld-Server mit einem Trace-Log in /tmp/mysqld.trace (oder
C:\mysqld.trace unter Windows):
mysqld --debug
Unter Windows sollten Sie auch den --standalone-Flag benutzen, um mysqld nicht als
Systemdienst zu starten.
Machen Sie folgendes in einem DOS-Fenster:
mysqld --debug --standalone
Danach onnen Sie das mysql.exe-Kommandozeilenwerkzeug in einem zweiten
DOS-Fenster benutzen, um das Problem zu reproduzieren. Sie onnen den obigen
mysqld-Server mit mysqladmin shutdown herunter fahren.
Beachten Sie, dass die Trace-Datei sehr Gr wird! Wenn Sie eine kleinere Trace-Datei
haben wollen, onnen Sie etwa folgendes tun:
mysqld --debug=d,info,error,query,general,where:O,/tmp/mysqld.trace
Vista de pagina 715
1 2 ... 711 712 713 714 715 716 717 718 719 720 721 ... 767 768

Comentarios a estos manuales

Sin comentarios