目标很简单,但很不寻常。我写了一个数据库自动修复脚本(因为其中一个表不时崩溃,可能是由于非常大量的插入和不断删除),我想测试它。问题是,我需要故意崩溃一个表,我不知道如何。有什么建议吗?
答案 0 :(得分:7)
在MyIsam中,运行OPTIMIZE TABLE
并在其运行时将其终止。该表将被标记为崩溃。
答案 1 :(得分:5)
你可以通过将.MYI文件截断为4k(假设它大于4k)来使MyISAM表看起来崩溃。然后执行FLUSH TABLE,然后执行需要使用索引的查询。
如果表格自发崩溃,那么
MyISAM表不应该自动崩溃,但是你可以预期它们会在不正常关机后崩溃。不干净的停机不应该经常发生,如果是,这是一个操作问题。询问您的运营工程师发生了什么。通常很清楚查看mysql服务器错误日志会发生什么。