1

我将 CodeIgniter 框架用于我的一个 Web 应用程序。

我在运行应用程序的开发环境中没有任何问题,而且在大多数情况下,我的应用程序在生产环境中运行良好。

但是,我和我的用户收到了一些关于数据库的零星错误。

  1. 表 '/mysql-tmp/#sql_78b5_0.MYI' 的密钥文件不正确;
  2. 从存储引擎收到错误 28
  3. 从存储引擎得到错误-1

数据库错误消息如下所示:

错误 -2013-01-15 13:56:35 --> 数据库错误消息:

错误号:126

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

SELECT bw.bw_id ,bw.wod_date ,CASE WHEN ifnull(bw.simple_title,'') = '' THEN 'No name given' ELSE simple_title END AS simple_title ,COUNT(mw.bw_id) ASrecorded_wod FROM box_wod bw LEFT JOIN member_wod mw ON bw.bw_id = mw.bw_id AND mw.member_id = 15 WHERE box_id = 3 GROUP BY bw.bw_id, bw.wod_date, simple_title, mw.bw_id ORDER BY bw.wod_date DESC

文件名:/hermes/.../box_model.php

行号:400

我对答案的搜索都指向一条路径:可用磁盘空间。

我试图向我的托管服务提供商指出这一点,但他们声称这不是问题:

我已经检查了您报告的问题。没有 MySQL 服务器问题。我检查了提供的错误日志,您的数据库表似乎存在问题。目前,您的网站运行良好,没有任何问题。请检查您的数据库表。

“表'/mysql-tmp/#sql_78b5_0.MYI'的密钥文件不正确;” 如果您还有其他问题,请更新支持控制台。

我已经对我所有的桌子进行了维修;我的数据库大约是一兆字节。我仍然得到这个问题。

是否有任何其他设置问题(CI 或我的数据库)可能导致此问题?

CI 框架是否会创建可能损坏的临时表?

我确实写了我的 SQL 语句,但在我发送它们之前它们都可以工作。

我只是想了解什么(除了磁盘空间)可能导致这个问题。

4

1 回答 1

0

简而言之,答案是你得到你所支付的。

我的托管服务提供商在服务器上发生了一些事情。在支持下来回走了很多次后,他们擦干了这个问题。此外,它们不会让用户访问存储您的代码的服务器;所以除了在我的开发机器上运行良好的代码之外,我没有什么可以解决的。

因此,我选择搬到新的托管服务提供商,问题就消失了。

于 2013-02-04T15:50:41.423 回答