我遇到了InnoDB的问题(表是最初的MyISAM,但是之前将它转换为InndoB)表; 我正在尝试运行此查询:
SELECT
posts.id,
posts.post_title
FROM
rss_posts AS posts
INNER JOIN rss_feeds AS feeds ON posts.blog_id=feeds.id
WHERE
feeds.blog_language=1
ORDER BY
posts.post_date_db DESC
LIMIT
10;
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Query : SELECT posts.id,posts.post_title FROM rss_posts AS posts INNER JOIN vw_rss_feeds AS feeds ON posts.blog_id=feeds.id WHER...
Error Code : 126
Incorrect key file for table '/tmp/#sql_7375_0.MYI'; try to repair it
Run Code Online (Sandbox Code Playgroud)
我不能对所涉及的桌子进行维修; 但是我在两张桌子上都运行了CHECK并且看起来很好.我还在两个表上都做了一个OPTIMIZE,并通过以下方式重建了表.
INSERT INTO new_table SELECT * FROM old_table;
Run Code Online (Sandbox Code Playgroud)
然后我将新表重命名为旧表名.....但我仍然遇到这个问题.
为了尝试找出导致它的表,我删除了引用"rss_feeds"表的查询中的代码....所以现在查询看起来像这样.
SELECT
posts.id,
posts.post_title
FROM
rss_posts AS posts
ORDER BY
posts.post_date_db DESC
LIMIT
10;
Run Code Online (Sandbox Code Playgroud)
那很有效. …