Sur la plupart des systèmes, vous pouvez démarrer
        mysqld à partir de gdb
        pour obtenir plus d'informations si mysqld
        plante.
      
        Avec quelques anciennes versions de gdb sous
        Linux vous devez exécuter run --one-thread
        si vous voulez être capables de déboguer les threads de
        mysqld threads. Dans ce cas, vous ne pouvez
        n'avoir qu'un thread actif à la fois. Nous vous recommandons de
        mettre à jour gdb à la version 5.1 dès que
        possible vu que le débogage des threads fonctionne mieux avec
        cette version !
      
        Lors de l'utilisation de mysqld sous
        gdb, vous devez désactiver le tra¸age de la
        pile avec --skip-stack-trace pour pouvoir
        trouver les erreurs de segmentations avec
        gdb.
      
        Il est très difficile de déboguer MySQL sous
        gdb si vous effectuez plusieurs nouvelles
        connexions tout le temps vu que gdb ne
        libère pas la mémoire occupée par les anciens threads. Vous
        pouvez contourner ce problème en démarrant
        mysqld avec -O thread_cache_size=
        'max_connections +1'. Dans la plupart des cas, le
        simple fait d'utiliser -O
        thread_cache_size=5' vous aidera beaucoup !
      
        Si vous voulez obtenir un core dump sur Linux si
        mysqld se termine avec un signal
        SIGSEGV, vous pouvez démarrer
        mysqld avec l'option
        --core-file. Ce fichier noyau peut être
        utilisé pour effectuer des tra¸ages qui peuvent vous aider à
        trouver pourquoi mysqld s'est terminée :
      
shell> gdb mysqld core
gdb>   backtrace full
gdb>   exit
See Section A.4.2, « Que faire si MySQL plante constamment ? ».
        Si vous utilisez gdb 4.17.x ou plus récent
        sous Linux, vous devez installer un fichier
        .gdb, avec les informations suivantes, dans
        votre répertoire courant :
      
set print sevenbit off handle SIGUSR1 nostop noprint handle SIGUSR2 nostop noprint handle SIGWAITING nostop noprint handle SIGLWP nostop noprint handle SIGPIPE nostop handle SIGALRM nostop handle SIGHUP nostop handle SIGTERM nostop noprint
        Si vous rencontrez des problèmes lors du débogage des threads
        avec gdb, vous devez obtenir la version 5.x
        de gdb et essayer cela à la place. La
        nouvelle version de gdb a une meilleur
        gestion des threads !
      
        Voilà un exemple de comment déboguer
        mysqld :
      
shell> gdb /usr/local/libexec/mysqld
gdb> run
...
backtrace full # A faire lorsque mysqld crashe
        Incluez la sortie suivante dans un mail généré avec
        mysqlbug et envoyez le sur les listes de
        diffusion. See Section 1.4.1.1, « Les listes de diffusion de MySQL ».
      
        Si mysqld ne répond plus, vous pouvez
        utiliser des outils système tel que strace
        ou /usr/proc/bin/pstack pour savoir où
        mysqld s'est bloqué.
      
strace /tmp/log libexec/mysqld
        Si vous utilisez l'interface DBI de Perl,
        vous pouvez activer le débogage en utilisant la méthode
        trace ou en définissant la variable
        d'environnement DBI_TRACE.
      
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

