Rechercher dans le manuel MySQL
29.5.1.1 Compiling MySQL for Debugging
If you have some very specific problem, you can always try to
debug MySQL. To do this you must configure MySQL with the
-DWITH_DEBUG=1
option. You can
check whether MySQL was compiled with debugging by doing:
mysqld --help. If the
--debug
flag is listed with the
options then you have debugging enabled. mysqladmin
ver also lists the mysqld version
as mysql ... --debug in this case.
If mysqld stops crashing when you configure
it with the -DWITH_DEBUG=1
CMake
option, you probably have found a compiler bug or a timing bug
within MySQL. In this case, you can try to add
-g
using the
CMAKE_C_FLAGS
and
CMAKE_CXX_FLAGS
CMake options
and not use -DWITH_DEBUG=1
. If
mysqld dies, you can at least attach to it
with gdb or use gdb on
the core file to find out what happened.
When you configure MySQL for debugging you automatically
enable a lot of extra safety check functions that monitor the
health of mysqld. If they find something
“unexpected,” an entry is written to
stderr
, which
mysqld_safe directs to the error log! This
also means that if you are having some unexpected problems
with MySQL and are using a source distribution, the first
thing you should do is to configure MySQL for debugging. If
you believe that you have found a bug, please use the
instructions at Section 1.7, “How to Report Bugs or Problems”.
In the Windows MySQL distribution,
mysqld.exe
is by default compiled with
support for trace files.
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-compiling-for-debugging.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.