非常に特定された問題がある場合は、MySQL のデバッグを試みることができます。 これを実行するには、-DWITH_DEBUG=1
オプションを指定して MySQL を構成する必要があります。 mysqld --help を実行すると、MySQL がデバッグ付きでコンパイルされたかどうかを確認できます。 --debug
フラグがオプションとともに示される場合は、デバッグが有効にされています。この場合は、mysqladmin ver でも mysqld バージョンが mysql ... --debug として示されます。
mysqld に -DWITH_DEBUG=1
CMake オプションを指定して構成するとクラッシュして停止する場合は、MySQL 内のコンパイラのバグまたはタイミングのバグが検出された可能性があります。 この場合は、-DWITH_DEBUG=1
を使用せずに、CMAKE_C_FLAGS
および CMAKE_CXX_FLAGS
CMake オプションを使用して -g
の追加を試みることができます。 mysqld が異常終了した場合は、少なくとも gdb を使用してそれに接続するか、コアファイルに対して gdb を使用して、発生した事象を確認できます。
MySQL をデバッグ用に構成すると、mysqld のヘルスをモニターする多くの追加の安全チェック機能が自動的に有効になります。 「予期しない」現象が検出された場合、stderr
にエントリが書き込まれ、これは mysqld_safe によってエラーログに送られます。 これは、MySQL に予期しない問題があり、ソース配布を使用している場合、最初にデバッグ用に MySQL を構成する必要があることも意味します。 バグを見つけたと思われる場合は、セクション1.6「質問またはバグをレポートする方法」の手順を使用してください。
Windows の MySQL 配布では、mysqld.exe
はデフォルトでトレースファイルをサポートするようにコンパイルされています。