Ich erhalte die Fehlermeldung, dass der Tabellentyp keine FULLTEXT-Indizes unterstützt. Wie kann ich das erreichen?
Hier ist mein Tisch:
CREATE TABLE gamemech_chat (
id bigint(20) unsigned NOT NULL auto_increment,
from_userid varchar(50) NOT NULL default '0',
to_userid varchar(50) NOT NULL default '0',
text text NOT NULL,
systemtext text NOT NULL,
timestamp datetime NOT NULL default '0000-00-00 00:00:00',
chatroom bigint(20) NOT NULL default '0',
PRIMARY KEY (id),
KEY from_userid (from_userid),
FULLTEXT KEY from_userid_2 (from_userid),
KEY chatroom (chatroom),
KEY timestamp (timestamp)
) ;
* *
Mysql --version
ich einen älteren MySQL-Dienst ausgeführt habe , obwohl ich die neueste Installation korrekt angezeigt habe. Ich hatte zum ersten Stopp und Deinstallation des alten Mysql Service: superuser.com/a/452264/74576 , dannC:\wamp\bin\mysql\mysql5.6.17\bin>mysqld --install
, dann Windows - Startmenü> Suchen> Dienstleistungen> Mysql> StartDas Problem trat aufgrund eines falschen Tabellentyps auf. MyISAM ist der einzige Tabellentyp, den MySQL für Volltextindizes unterstützt.
Um diesen Fehler zu beheben, führen Sie folgendes SQL aus.
CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM;
quelle
Nur MyISAM erlaubt FULLTEXT, wie hier gezeigt .
Versuche dies:
CREATE TABLE gamemech_chat ( id bigint(20) unsigned NOT NULL auto_increment, from_userid varchar(50) NOT NULL default '0', to_userid varchar(50) NOT NULL default '0', text text NOT NULL, systemtext text NOT NULL, timestamp datetime NOT NULL default '0000-00-00 00:00:00', chatroom bigint(20) NOT NULL default '0', PRIMARY KEY (id), KEY from_userid (from_userid), FULLTEXT KEY from_userid_2 (from_userid), KEY chatroom (chatroom), KEY timestamp (timestamp) ) ENGINE=MyISAM;
quelle
Aus offizieller Referenz
https://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html
InnoDB mit MySQL 5.5 unterstützt keine Volltextindizes.
quelle
Gehen Sie einfach wie folgt vor:
Öffnen Sie Ihre .sql-Datei mit Notepad oder Notepad ++
Finden Sie InnoDB und ersetzen Sie alle (ca. 87) durch MyISAM
Speichern und jetzt können Sie Ihre Datenbank ohne Fehler importieren.
quelle
************* Gelöst - # 1214 - Der verwendete Tabellentyp unterstützt keine FULLTEXT-Indizes ***************
Es ist sehr einfach, dieses Problem zu beheben. Die Leute antworten hier mit sehr schwierigen Worten, die für die nicht technischen Leute nicht leicht verständlich sind.
Ich erwähne hier Schritte in sehr einfachen Worten, um Ihr Problem zu lösen.
1.) Öffnen Sie Ihre .sql-Datei mit Notepad, indem Sie mit der rechten Maustaste auf Datei> Bearbeiten klicken oder einfach eine Notepad-Datei öffnen und die Datei per Drag & Drop auf Notepad ziehen. Die Datei wird dann geöffnet. (Hinweis: Bitte ändern Sie die Erweiterungs-SQL-Datei nicht, da sie immer noch Ihre SQL-Datenbank ist. Bewahren Sie außerdem eine Kopie Ihrer SQL-Datei auf, um sich vor Unfällen zu schützen.)
2.) Klicken Sie auf Notepad-Menü Bearbeiten> Ersetzen (Ein Fenster öffnet sich mit Suchen nach & Ersetzen durch Felder)
3.) Geben Sie in Find What Field ENGINE = InnoDB & In Replace With Field ENGINE = MyISAM ein
4.) Klicken Sie nun auf Alle ersetzen Knopf
5.) Klicken Sie auf STRG + S oder Datei> Speichern
6.) Laden Sie jetzt diese Datei hoch und ich bin sicher, dass Ihr Problem behoben ist ....
quelle