min_prefix_len можно установить только для каждого индекса, но если вы не беспокоитесь о том, чтобы тратить дополнительные ресурсы, вы можете установить min_prefix_len = 3 для всего индекса, а затем просто контролировать поведение в своем приложении, чтобы запретить поиск по @name весли длина ключевого слова меньше 5. Например:
Ключевое слово = abc:
mysql> select * from idx_min where match('@class abc*|@name abc');
+------+--------+--------+
| id | class | name |
+------+--------+--------+
| 1 | abcdef | ghijkl |
+------+--------+--------+
1 row in set (0.01 sec)
Ключевое слово = abcde:
mysql> select * from idx_min where match('@class abc*|@name (abcde|abcde*)');
+------+--------+--------+
| id | class | name |
+------+--------+--------+
| 1 | abcdef | ghijkl |
+------+--------+--------+
1 row in set (0.00 sec)
Ключевое слово = ghi:
mysql> select * from idx_min where match('@class ghi*|@name ghi');
Empty set (0.00 sec)
Keyword = ghijk:
mysql> select * from idx_min where match('@class ghi*|@name (ghijk|ghijk*)');
+------+--------+--------+
| id | class | name |
+------+--------+--------+
| 1 | abcdef | ghijkl |
+------+--------+--------+
1 row in set (0.00 sec)
Т.е. просто помните, что в этом случае у вас есть префиксы> = 3 символа для @name и добавьте логику в ваше приложение, чтобы поставить * при необходимости.