文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手冊頁 (TGZ) - 258.5Kb
手冊頁 (Zip) - 365.5Kb
資訊 (Gzip) - 4.0Mb
資訊 (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  編譯 MySQL 以進行除錯

7.9.1.1 編譯 MySQL 以進行除錯

如果您遇到一些非常特定的問題,您可以隨時嘗試除錯 MySQL。為此,您必須使用 -DWITH_DEBUG=1 選項來設定 MySQL。您可以藉由執行下列動作來檢查是否已使用除錯功能編譯 MySQL:mysqld --help。如果 --debug 旗標與選項一起列出,則表示您已啟用除錯功能。mysqladmin ver 也會在此情況下將 mysqld 版本列為 mysql ... --debug

如果您在使用 -DWITH_DEBUG=1 CMake 選項設定 mysqld 後,mysqld 不再崩潰,您可能已發現 MySQL 中的編譯器錯誤或時序錯誤。在這種情況下,您可以嘗試使用 CMAKE_C_FLAGSCMAKE_CXX_FLAGS CMake 選項加入 -g,而不要使用 -DWITH_DEBUG=1。如果 mysqld 停止運作,您至少可以使用 gdb 連接至它,或在核心檔案上使用 gdb 來找出發生的情況。

當您設定 MySQL 以進行除錯時,您會自動啟用許多額外的安全檢查函數,以監控 mysqld 的健康狀況。如果它們發現任何未預期的情況,則會將一個條目寫入 stderr,而 mysqld_safe 會將其導向至錯誤日誌!這也表示如果您在使用來源發行版本時遇到一些 MySQL 的未預期問題,您應該做的第一件事是設定 MySQL 以進行除錯。如果您認為您已發現錯誤,請使用 第 1.6 節「如何回報錯誤或問題」中的說明。

在 Windows MySQL 發行版本中,mysqld.exe 預設會編譯為支援追蹤檔案。