MySQL неверный ключевой файл для таблицы

У меня есть следующая таблица с именем posts

Column              Type            Null    Default Comments
postId              bigint(20)      No      0    
source              varchar(10)     No       
profanity           tinyint(1)      No      0    
postCreated         bigint(15)      Yes     NULL     
postMessage         varchar(255)    Yes     NULL     
possibleDuplicate   varchar(255)    Yes     NULL    Used for checking for duplicate messages 
postUrl             varchar(255)    Yes     NULL     
postType            varchar(10)     No       
postTag             tinyint(11)     No      0    
media               varchar(255)    Yes     NULL    first result of COALESCE media1-4 
media1              varchar(255)    Yes     NULL     
media2              varchar(255)    Yes     NULL     
media3              varchar(255)    Yes     NULL     
media4              varchar(255)    Yes     NULL     
latitude            varchar(255)    Yes     NULL     
longitude           varchar(255)    Yes     NULL     
userId              bigint(20)      Yes     NULL     
username            varchar(255)    Yes     NULL     
userFullname        varchar(255)    Yes     NULL     
userProfilePicture  varchar(255)    Yes     NULL 

Имеет следующее indexes:

Keyname         Type    Unique  Packed  Column          Cardinality Collation   Null    Comment
PRIMARY         BTREE   Yes     No      postId          355837      A           No  
                                        postTag         355837      A           No
postCreated     BTREE   No      No      postCreated     355837      A           Yes 
postTagIndex    BTREE   No      No      postTag         16          A           No  
                                        postCreated     355837      A           Yes
                                        profanity       355837      A           No
source          BTREE   No      No      source          139         A           No  
                                        postTag         265         A           No
filters         BTREE   No      No      postTag         16          A           No      used when filtering results
                                        profanity       16          A           No
                                        postMessage     355837      A           Yes
                                        postCreated     355837      A           Yes

Когда я запускаю этот запрос:

SELECT
    *
FROM
    `posts`
WHERE
    (
        `postTag` = 24
        AND `profanity` != 0
    )
AND (
    (
        `source` = "instagram"
        AND SUBSTRING(`postMessage`, 1, 4) != 'RT @'
        AND `profanity` = - 1
    )
    OR (
        `source` = "twitter"
        AND SUBSTRING(`postMessage`, 1, 4) != 'RT @'
        AND `profanity` = - 1
    )
)
ORDER BY
    `postCreated` DESC
LIMIT 0,
 25

Все хорошо, но когда я запускаю этот запрос:

SELECT
    *
FROM
    `posts`
WHERE
    (
        `postTag` = 24
        AND `profanity` != 0
    )
AND (
    (
        `source` = "instagram"
        AND SUBSTRING(`postMessage`, 1, 4) != 'RT @'
        AND `profanity` = - 1
    )
    OR (
        `source` = "twitter"
        AND SUBSTRING(`postMessage`, 1, 4) != 'RT @'
        AND `profanity` = - 1
    )
)
GROUP BY  `possibleDuplicate`
ORDER BY
    `postCreated` DESC
LIMIT 0,
 25

Я получаю следующую ошибку:

[Err] 126 - Неверный ключевой файл для таблицы '/tmp/#sql_6e6_0.MYI'; попробуй починить

Это происходит только когда я добавляю GROUP BYpossibleDuplicate на запрос.possibleDuplicate в основном текстовый, иногда пустой. В данный момент в таблице около 358399 строк. Надеюсь, кто-нибудь может помочь мне исправить это.

0 ответов

Другие вопросы по тегам