MySQL抛出错误的密钥文件错误

时间:2015-10-30 15:30:13

标签: mysql sql database

我有一个庞大的数据库(每个表中包含近20万行和许多这样的表)。我必须对它进行查询。数据存储在MySQL中,我不能使用任何其他数据库。在我的查询中,我必须执行UNION个表。我的查询是这样的:

select * from table1 
UNION 
select * from table2
...
select * from tablen;

但是当我这样做时,我收到了这个错误

  

表'/tmp/#sql_d3d_0.MYI'的密钥文件不正确;尝试修复   它

我认为这种情况正在发生,因为加入了太多数据表太多的表。如何优化我的查询以便它不会产生此问题并且查询变得更快?

1 个答案:

答案 0 :(得分:-1)

当您使用连接发出请求时,MySQL会创建一个临时表来回答您的请求。您获得的错误意味着您的请求在服务器上非常难。

也许扩大你的记忆,

  • wait_timeout = 600
  • max_allowed_pa​​cket = 64M

或简化您的请求。