有時我得到一個錯誤,如「表被標記爲損壞並被修復」。該數據庫(表)正在使用MyISAM。最近一直在發生。可能是什麼原因?最近我正在執行批量插入MyISAM表損壞
INSERT INTO table (..., ..., ...) VALUES (...), (...), (...) ...
,它只是掛起。或花了很長時間來完成它似乎掛在我身上。第二天,當我檢查表被標記爲腐敗再次。當我嘗試使用mysqlcheck -r它說所有表確定當它達到那個「腐敗」的表,它再次掛在那裏...
所以,我能做些什麼來防止這種情況。可能的原因是什麼。數據庫託管第三方,我該如何調試?
是InnoDB更可靠的使用引擎嗎?我聽說MyISAM速度更快,但也有人說InnoDB速度可以很快,但它需要更多的優化。我可以得出結論,InnoDB是更可靠的東西,但總體來說比較慢,甚至優化?
現在,當我嘗試執行像select,check table或mysqlcheck -r這樣的查詢時,甚至會顯示create table,它只會掛在那裏。我能做什麼? – iceangel89 2009-06-14 02:22:41
你有修理嗎?它仍在運行(你可以做「顯示進程列表」)。很可能你不能訪問表或它的元數據,直到它完成(它有一個寫鎖定)。修復可能需要一段時間才能完成,因此必須重建索引。 – 2009-06-14 04:37:38