我将 CodeIgniter 框架用于我的一个 Web 应用程序。
我在运行应用程序的开发环境中没有任何问题,而且在大多数情况下,我的应用程序在生产环境中运行良好。
但是,我和我的用户收到了一些关于数据库的零星错误。
- 表 '/mysql-tmp/#sql_78b5_0.MYI' 的密钥文件不正确;
- 从存储引擎收到错误 28
- 从存储引擎得到错误-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 语句,但在我发送它们之前它们都可以工作。
我只是想了解什么(除了磁盘空间)可能导致这个问题。