最常見的錯誤是人們不指出他們正在使用的MySQL分發的版本號,或不指出在什平台上平台安裝了 MySQL (包括平台版本號)。這是極其相關的信息,並且沒有它99%錯誤報告是無用的!我們經常得到這樣的提問“為什它不給我工作?”,然我們發現所需的功能還沒有在該版本的 MySQL 中實現,或在一份報告中描述的一個錯誤已經在更新的MySQL 版本修正了。有時錯誤是依賴平台,在這種情況下,不知道平台操作系統和版本號根本不可能修正任何東西。
你正在使用的 MySQL 分發的版本號(例如, MySQL 3.22.22 )。你可以執行mysqladmin version找到你正在運行哪個版本。mysqladmin可以在你的MySQL安裝目錄的'bin'目錄下面找到。
你正在使用的機器的制造商和型號。
操作系統名字和版本。對大多數操作系統,你可以通過執行一條Unix命令uname -a 得到有關信息。
有時存儲器的數量(物理和虛擬的)是有意義的,如果有疑問,包含這些值。
如果你正在使用一個MySQL源代碼分發 ,則需要使用的編譯器的名稱和版本號。如果你有一個二進制代碼的分發,就需要該分發的名字。
如果問題在編譯期間發生,則包含準確的錯誤消息,並且也包含問題發生的文件中出錯代碼周圍的一些上下文。
如果任何數據庫表與問題有關,包含從 mysqldump --db_name tbl_name1 tbl_name2 …的輸出結果。這是很容易做到的,並且它是一個獲得有關任何數據庫表信息的有效方法,將幫助我們創造一個匹配你所遇到問題的環境。
對與速度或SELECT語句有關的問題,你總是應該包括EXPLAIN SELECT...的輸出和至少SELECT語句產生的行數。你給出有關你的情況越多的信息,某些人越能幫助你。例如,下列的例子是一份很好的錯誤報告(當然它應該用與 mysqlbug 腳本郵寄):運行 mysql 命令行工具的例子(注意對其輸出超過80列顯示設備的語句使用\G終止符):
mysql> SHOW VARIABLES;
mysql> SHOW COLUMNS FROM ...\G
mysql> EXPLAIN SELECT ...\G
mysql> FLUSH STATUS;
mysql> SELECT ...;
including the time taken to run the query>
mysql> SHOW STATUS;
進入【UNIX論壇】