什么是经常出现的解决方案#126 – 表’/tmp/#sql_4a05_0.MYI’的密钥文件不正确;尝试在mysql中修复它?

我有一个名为answer的数据库表,当我将数据插入其中时,数据被插入但它给另一个表带来了以下问题
‘#126 – 表’/tmp/#sql_4a05_0.MYI’的密钥文件不正确;试着修复它’
然后我通过使用此中给出的解决方案解决了这个问题
link
但是当我再次将数据插入答案表时会出现此问题.

另一件事是当我导出该数据库并使用某个地方(地点B)来自地方A时,它又一次工作我从地方A中删除数据库并将数据库从地点B导入到地点A(其中有更多数据,我插入了B).但是在将数据导入到位置A时,它不会导入表“回答”的所有数据并给出以下错误
ERROR 1114(HY000):桌子已满
我在下面使用了溶剂
link但我无法解决这个问题.任何人都可以解决这个问题.

解决方法:

该错误可能不是由您的表引起的,而是由filesort或其他查询操作期间创建的临时表引起的.这些临时表以MyISAM格式存储在您的tmpdir中.如果tmpdir中没有足够的空间来容纳临时表,则可能会出现此错误.

由于临时表太大而不是永久表是一个问题,因此对永久表运行REPAIR TABLE无法解决问题.

解决方案是将tmpdir更改为具有更多可用空间的位置.另请注意,如果您有许多并发运行的查询,并且所有查询都在tmpdir中使用了部分空间,则可用空间仍然可能耗尽.

您还可以尝试改进查询优化,因此使用filesort或其他临时表使用的查询更少.或者您可以重新设计查询,以便处理更少的数据行.

上一篇:php – 在Xampp中连接sqlsrv


下一篇:MySQL错误1064语法,但一切似乎都很好