文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


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

7.9.1.1 編譯 MySQL 以進行除錯

如果您遇到一些非常具體的問題,您可以隨時嘗試除錯 MySQL。為此,您必須使用 -DWITH_DEBUG=1 選項來設定 MySQL。您可以使用:mysqld --help 來檢查 MySQL 是否已使用除錯功能編譯。如果 --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 預設是以支援追蹤檔案的方式編譯的。