Mysql
 sql >> Database >  >> RDS >> Mysql

Problema con gli indici MySQL FULLTEXT

Stai usando il tipo sbagliato di tabella. Mysql supporta alcuni tipi diversi di tabelle, ma le più comunemente utilizzate sono MyISAM e InnoDB. MyISAM (in MySQL 5.6+anche tabelle InnoDB) sono i tipi di tabelle supportate da MySQL per gli indici full-text.

Per controllare il tipo di tabella emetti la seguente query sql:

SHOW TABLE STATUS

Osservando il risultato restituito dalla query, trova la tabella e il valore corrispondente nella colonna Motore. Se questo valore è qualcosa tranne MyISAM o InnoDB, Mysql genererà un errore se stai tentando di aggiungere indici FULLTEXT.

Per correggere questo problema, puoi utilizzare la query sql di seguito per modificare il tipo di motore:

ALTER TABLE <table name> ENGINE = [MYISAM | INNODB]

Informazioni aggiuntive (ritenuto utile):MySQL utilizza diversi tipi di storage del motore per ottimizzare la funzionalità necessaria di tabelle specifiche. Esempio MyISAM è il tipo predefinito per i sistemi operativi (oltre a Windows), preforma SELECT e INSERT rapidamente; ma non gestisce le transazioni. InnoDB è l'impostazione predefinita per Windows, può essere utilizzato per le transazioni. Ma InnoDB richiede più spazio su disco sul server.