文件首頁
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 參考手冊  /  ...  /  如果您遇到資料表損壞,如何建立測試案例

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

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

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

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

  2. 備份資料表以防止維修執行錯誤操作的可能性極低的情況發生。

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

  4. 第二次備份資料表。

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

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

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

  8. 還原備份。

  9. 重新啟動 mysqld 伺服器,啟用二進位日誌。

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

  11. 如果資料表再次損毀,或您可以使用上述指令導致 mysqld 伺服器當機,表示您已找到可重現的錯誤。請使用第 1.6 節「如何回報錯誤或問題」中提供的說明,透過 FTP 將資料表和二進位日誌上傳到我們的錯誤資料庫。如果您是支援服務客戶,可以使用 MySQL 客戶支援中心 (https://mysql.dev.org.tw/support/) 來通知 MySQL 團隊此問題,並盡快修復。