當您遇到問題時,首先應該做的是找出哪個程式或設備導致了問題。
如果您有以下症狀之一,則很可能是硬體問題(例如記憶體、主機板、CPU 或硬碟)或核心問題。
鍵盤無法運作。這通常可以透過按下 Caps Lock 鍵來檢查。如果 Caps Lock 指示燈沒有變化,您必須更換鍵盤。(在執行此操作之前,您應該嘗試重新啟動電腦並檢查連接到鍵盤的所有纜線。)
滑鼠指標沒有移動。
機器沒有回應遠端機器的 ping。
其他與 MySQL 無關的程式行為不正確。
您的系統意外重新啟動。(有缺陷的使用者層級程式絕不應能夠使您的系統崩潰。)
在這種情況下,您應該從檢查所有纜線開始,並執行一些診斷工具來檢查您的硬體!您還應該檢查您的作業系統是否有任何修補程式、更新或服務包,可能可以解決您的問題。另請檢查您的所有函式庫(例如
glibc
)是否為最新版本。使用具有 ECC 記憶體的機器來儘早發現記憶體問題總是好的。
如果您的鍵盤鎖定,您可以從另一台機器登入您的機器並執行
kbd_mode -a
來恢復。請檢查您的系統記錄檔(
/var/log/messages
或類似檔案)以了解問題的原因。如果您認為問題出在 MySQL 中,您還應該檢查 MySQL 的記錄檔。請參閱第 7.4 節,「MySQL 伺服器記錄」。如果您不認為有硬體問題,您應該嘗試找出哪個程式導致了問題。嘗試使用 top、ps、工作管理員或一些類似的程式來檢查哪個程式佔用了所有 CPU 或鎖定了機器。
使用 top、df 或類似的程式來檢查您是否耗盡了記憶體、磁碟空間、檔案描述符或其他一些關鍵資源。
如果問題是一些失控的程序,您始終可以嘗試將其殺死。如果它不想結束,則可能是作業系統中的錯誤。
如果您已經檢查了所有其他可能性,並得出結論認為 MySQL 伺服器或 MySQL 用戶端導致了問題,那麼現在是建立錯誤報告的時候了,請參閱第 1.6 節,「如何回報錯誤或問題」。在錯誤報告中,嘗試完整描述系統的行為方式以及您認為正在發生的情況。此外,說明您為什麼認為 MySQL 導致了問題。請考慮本章中描述的所有情況。準確說明您檢查系統時出現的任何問題。針對程式和記錄檔中的任何輸出和錯誤訊息,使用「複製並貼上」方法。
嘗試詳細描述哪個程式無法運作以及您看到的所有症狀。過去我們收到許多錯誤報告只說明 「系統無法運作。」。這沒有提供我們有關問題可能為何的任何資訊。
如果程式失敗,知道以下資訊總是很有用的:
該程式是否發生區段錯誤(是否傾印核心)?
該程式是否佔用了所有可用的 CPU 時間?請使用 top 檢查。讓程式執行一段時間,它可能只是在評估一些計算密集型的東西。
如果 mysqld 伺服器導致問題,您是否可以使用 mysqladmin -u root ping 或 mysqladmin -u root processlist 從中取得任何回應?
當您嘗試連線到 MySQL 伺服器時,用戶端程式會說什麼?(例如,嘗試使用 mysql)。用戶端是否卡住?您是否從程式取得任何輸出?
當傳送錯誤報告時,您應該遵循第 1.6 節,「如何回報錯誤或問題」中描述的綱要。