The INNODB_FT_DELETED
table stores
rows that are deleted from the FULLTEXT
index
for an InnoDB
table. To avoid expensive index
reorganization during DML operations for an
InnoDB
FULLTEXT
index, the
information about newly deleted words is stored separately,
filtered out of search results when you do a text search, and
removed from the main search index only when you issue an
OPTIMIZE TABLE
statement for the
InnoDB
table. For more information, see
Optimizing InnoDB Full-Text Indexes.
This table is empty initially. Before querying it, set the value
of the innodb_ft_aux_table
system
variable 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 InnoDB INFORMATION_SCHEMA FULLTEXT Index Tables.
The INNODB_FT_DELETED
table has these
columns:
DOC_ID
The document ID of the newly deleted row. 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 contains no suitable column. This value is used when you perform text searches, to skip rows in theINNODB_FT_INDEX_TABLE
table before data for deleted rows is physically removed from theFULLTEXT
index by anOPTIMIZE TABLE
statement. For more information, see Optimizing InnoDB Full-Text Indexes.
Example
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_FT_DELETED;
+--------+
| DOC_ID |
+--------+
| 6 |
| 7 |
| 8 |
+--------+
Notes
You must have the
PROCESS
privilege to query this table.Use the
INFORMATION_SCHEMA
COLUMNS
table or theSHOW COLUMNS
statement to view additional information about the columns of this table, including data types and default values.For more information about
InnoDB
FULLTEXT
search, see InnoDB Full-Text Indexes, and Full-Text Search Functions.