2009-08-04 136 views
3

我只是試圖將表從MyISAM轉換爲INNODB。這是用testopia進行bugzilla升級。將表從MyISAM轉換爲INNODB

這個簡單的命令失敗。 ALTER TABLE table_name TYPE = INNODB;

ERROR 1214(HY000):所使用的表類型不支持FULLTEXT索引

我知道它不支持FULLTEXT索引,從來沒有少我想把它轉換。我必須在轉換之前將全文索引放在表格上嗎?有沒有辦法查詢它們並全部刪除它們?

回答

5

首先,看你CREATE TABLE聲明:

SHOW CREATE TABLE tablename 

它會告訴你所有的全文索引是這樣的:

…, 
FULLTEXT KEY key_name (column_list), 
… 

丟棄所有的這些鍵:

ALTER TABLE tablename DROP INDEX key_name; 
… 

,然後轉換:

ALTER TABLE tablename ENGINE=InnoDB; 
+0

工作。或者,有沒有辦法保存數據?我應該估計這些數據的重要性。 – user150484 2009-08-04 17:10:33

+0

當然,只需備份它:)'mysqldump --all-databases> backup.sql'。 'FULLTEXT'索引是輔助數據源,即。即它們只包含表格本身中包含的數據。除非您的服務器出現任何問題,否則不會丟失任何您無法恢復的信息。 – Quassnoi 2009-08-04 17:15:47

+0

我會做一個轉儲並保存。你說我永遠不需要它?如果這聽起來不錯。現在我進入我的下一個錯誤;) – user150484 2009-08-04 21:06:01