目的
MySQLの全文検索(ngram)でストップワード(a,theなど)を利用している場合、ストップワードが含まれる検索ができない。そのため、ストップワードをOFF、インデックスの再構築をして、検索でヒットするように変更する。
例)cat→ca atは両方ともaが含まれ全文検索インデックスに登録されない
現在の設定を確認
mysql> SHOW VARIABLES LIKE 'innodb_ft_enable_stopword';
+---------------------------+-------+
| Variable_name | Value |
+---------------------------+-------+
| innodb_ft_enable_stopword | ON |
+---------------------------+-------+
1 row in set (0.01 sec)
設定を追加
my.cnf
innodb_ft_enable_stopword=0
再起動
/etc/init.d/mysqld restart
インデックスを再構築
SET GLOBAL innodb_optimize_fulltext_only=ON;
OPTIMIZE TABLE (テーブル名);
SET GLOBAL innodb_optimize_fulltext_only=OFF;