Syntax
------ 
ANALYZE [NO_WRITE_TO_BINLOG | LOCAL] TABLE tbl_name
[,tbl_name ...] 
 [PERSISTENT FOR [ALL|COLUMNS ([col_name [,col_name ...]])] 
 [INDEXES ([index_name [,index_name ...]])]] 
 
Description
----------- 
ANALYZE TABLE analyzes and stores the key distribution for a
table (index statistics). During the analysis, the table is
locked with a read lock. This statement works with MyISAM,
Aria and InnoDB tables. For MyISAM tables, this statement is
equivalent
to using myisamchk --analyze.
 
For more information on how the analysis works within
InnoDB, see
InnoDB Limitations.
 
MariaDB uses the stored key distribution to decide the order
in which
tables should be joined when you perform a join on something
other than
a constant. In addition, key distributions can be used when
deciding
which indexes to use for a specific table within a query.
 
This statement requires SELECT and INSERT privileges for the
table.
 
By default, ANALYZE TABLE statements are written to the
binary log and will be replicated. The NO_WRITE_TO_BINLOG
keyword (LOCAL is an alias) will ensure the statement is not
written to the binary log. 
 
ANALYZE TABLE is also supported for partitioned tables. You
can use ALTER TABLE ... ANALYZE PARTITION to analyze one or
more partitions.
 
The Aria storage engine supports progress reporting for the
ANALYZE TABLE statement.
 
Engine-Independent Statistics
 
In MariaDB 10.0 and later, ANALYZE TABLE supports
engine-independent statistics. See Engine-Independent Table
Statistics: Collecting Statistics with the ANALYZE TABLE
Statement for more information.
 


URL: https://mariadb.com/kb/en/analyze-table/