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


MySQL 8.4 參考手冊  /  ...  /  如果您遇到資料表損毀時,如何建立測試案例

7.9.1.7 如果您遇到資料表損毀時,如何建立測試案例

下列程序適用於 MyISAM 資料表。如需關於遇到 InnoDB 資料表損毀時應採取的步驟的資訊,請參閱 第 1.6 節,「如何回報錯誤或問題」

如果您遇到損毀的 MyISAM 資料表,或者如果 mysqld 在某些更新陳述式之後總是失敗,您可以執行以下操作來測試問題是否可重現

  1. 使用 mysqladmin shutdown 停止 MySQL 精靈。

  2. 建立資料表的備份,以防止修復執行錯誤的可能性極低的狀況。

  3. 使用 myisamchk -s database/*.MYI 檢查所有資料表。使用 myisamchk -r database/資料表.MYI 修復任何損毀的資料表。

  4. 建立資料表的第二個備份。

  5. 如果需要更多空間,請從 MySQL 資料目錄中移除(或移開)任何舊的日誌檔案。

  6. 啟動已啟用二進位日誌的 mysqld。如果您想要找到導致 mysqld 崩潰的陳述式,您也應該啟動已啟用一般查詢日誌的伺服器。請參閱 第 7.4.3 節,「一般查詢日誌」,以及 第 7.4.4 節,「二進位日誌」

  7. 當您取得崩潰的資料表時,請停止 mysqld 伺服器。

  8. 還原備份。

  9. 啟用二進位日誌的情況下重新啟動 mysqld 伺服器。

  10. 使用 mysqlbinlog 二進位日誌檔案 | mysql 重新執行陳述式。二進位日誌會儲存在名稱為 hostname-bin.NNNNNN 的 MySQL 資料庫目錄中。

  11. 如果資料表再次損毀,或者您可以使用上述命令讓 mysqld 停止運作,則您已發現可重現的錯誤。請依照 第 1.6 節,「如何回報錯誤或問題」中提供的指示,使用 FTP 將資料表和二進位日誌傳輸到我們的錯誤資料庫。如果您是支援客戶,可以使用 MySQL 客戶支援中心 (https://mysql.dev.org.tw/support/) 來通知 MySQL 團隊問題,並盡快修正。