• index_type 

Some storage engines permit you to specify an index type when creating an index. The syntax for the index_type  specifier is USING type_name . 

Example: 

CREATE TABLE lookup (id INT, INDEX USING BTREE (id)) ENGINE = MEMORY; 

The preferred position for USING  is after the index column list. It can be given before the column list, but support for use of the option in that position is deprecated and you should expect it to be removed in a future MySQL release. 

• index_option 

index_option  values specify additional options for an index. 

• KEY_BLOCK_SIZE 

For MyISAM  tables, KEY_BLOCK_SIZE  optionally specifies the size in bytes to use for index key blocks. The value is treated as a hint; a different size could be used if necessary. A KEY_BLOCK_SIZE value specified for an individual index definition overrides the table-level KEY_BLOCK_SIZE  value. 

For information about the table-level KEY_BLOCK_SIZE  attribute, see Table Options. 

• WITH PARSER 

The WITH PARSER  option can be used only with FULLTEXT  indexes. It associates a parser plugin with the index if full-text indexing and searching operations need special handling. InnoDB  and MyISAM support full-text parser plugins. If you have a MyISAM  table with an associated full-text parser plugin, you can convert the table to InnoDB  using ALTER TABLE . 

• COMMENT 

Index definitions can include an optional comment of up to 1024 characters. 

You can set the InnoDB MERGE_THRESHOLD  value for an individual index using the index_option COMMENT  clause. See Section 15.8.11, “Configuring the Merge Threshold for Index Pages” . 

• VISIBLE , INVISIBLE 

Specify index visibility. Indexes are visible by default. An invisible index is not used by the optimizer. Specification of index visibility applies to indexes other than primary keys (either explicit or implicit). For more information, see Section 8.3.12, “Invisible Indexes” . 

• ENGINE_ATTRIBUTE  and SECONDARY_ENGINE_ATTRIBUTE  options (available as of MySQL 8.0.21) are used to specify index attributes for primary and secondary storage engines. The options are reserved for future use. 

For more information about permissible index_option  values, see Section 13.1.15, “CREATE INDEX Statement” . For more information about indexes, see Section 8.3.1, “How MySQL Uses Indexes” . 

• reference_definition 

For reference_definition  syntax details and examples, see Section 13.1.20.5, “FOREIGN KEY Constraints” . 

