The INNODB_FT_INDEX_TABLE table displays
information about the inverted index used to process text searches
against the FULLTEXT index of an
InnoDB table.
Before you query this table, set the configuration variable
innodb_ft_aux_table to the name
(including the database name) of the table that contains the
FULLTEXT index, for example
test/articles.
For related usage information and examples, see Section 14.15.4, “InnoDB INFORMATION_SCHEMA FULLTEXT Index Tables”.
Table 21.12 INNODB_FT_INDEX_TABLE Columns
| Column name | Description |
|---|---|
WORD | A word extracted from the text of the columns that are part of a
FULLTEXT. |
FIRST_DOC_ID | The first document ID that this word appears in the
FULLTEXT index. |
LAST_DOC_ID | The last document ID that this word appears in the
FULLTEXT index. |
DOC_COUNT | The number of rows this word appears in the FULLTEXT
index. The same word can occur several times within the
cache table, once for each combination of
DOC_ID and POSITION
values. |
DOC_ID | The document ID of the row containing the word. This value might reflect
the value of an ID column that you defined for the
underlying table, or it can be a sequence value generated
by InnoDB when the table does not
contain a suitable column. |
POSITION | The position of this particular instance of the word within the relevant
document identified by the DOC_ID
value. |
Notes:
This table initially appears empty, until you set the value of
the configuration variable
innodb_ft_aux_table. The
following example demonstrates how to use the
innodb_ft_aux_table option to
show information about a FULLTEXT index for
a specified table. Before information for newly inserted rows
appears in INNODB_FT_INDEX_TABLE, the
FULLTEXT index cache must be flushed to
disk. This is accomplished by running an
OPTIMIZE TABLE operation on the
indexed table with
innodb_optimize_fulltext_only=ON.
mysql>use test;mysql>CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title,body) ) ENGINE=InnoDB;mysql>INSERT INTO articles (title,body) VALUES ('MySQL Tutorial','DBMS stands for DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'), ('MySQL vs. YourSQL','In the following database comparison ...'), ('MySQL Security','When configured properly, MySQL ...');mysql>SET GLOBAL innodb_optimize_fulltext_only=ON;Query OK, 0 rows affected (0.00 sec) mysql>OPTIMIZE TABLE articles;+---------------+----------+----------+----------+ | Table | Op | Msg_type | Msg_text | +---------------+----------+----------+----------+ | test.articles | optimize | status | OK | +---------------+----------+----------+----------+ 1 row in set (0.00 sec) mysql>SET GLOBAL innodb_ft_aux_table = 'test/articles';Query OK, 0 rows affected (0.00 sec) mysql>USE INFORMATION_SCHEMA;mysql>SELECT word, doc_count, doc_id, position FROM INNODB_FT_INDEX_TABLE LIMIT 5;+------------+-----------+--------+----------+ | word | doc_count | doc_id | position | +------------+-----------+--------+----------+ | 1001 | 1 | 4 | 0 | | after | 1 | 2 | 22 | | comparison | 1 | 5 | 44 | | configured | 1 | 6 | 20 | | database | 2 | 1 | 31 | +------------+-----------+--------+----------+
Use DESCRIBE or
SHOW COLUMNS to view additional
information about the columns of this table including data
types and default values.
You must have the PROCESS
privilege to query this table.
For more information about InnoDB
FULLTEXT search, see
Section 14.8.10, “InnoDB FULLTEXT Indexes”, and
Section 12.9, “Full-Text Search Functions”.