myisamchk supports the following options for actions other than table checks and repairs:
Analyze the distribution of key values. This improves join
performance by enabling the join optimizer to better choose
the order in which to join the tables and which indexes it
should use. To obtain information about the key
distribution, use a myisamchk --description
command or the
SHOW INDEX FROM
Find the record that a block at the given offset belongs to.
Print some descriptive information about the table.
option once or twice produces additional information. See
Section 18.104.22.168, “Obtaining Table Information with myisamchk”.
AUTO_INCREMENT numbering for new
records to start at the given value (or higher, if there are
existing records with
values this large). If
AUTO_INCREMENT numbers for
new records begin with the largest value currently in the
table, plus one.
Sort the index tree blocks in high-low order. This optimizes seeks and makes table scans that use indexes faster.
Sort records according to a particular index. This makes
your data much more localized and may speed up range-based
BY operations that use this index. (The first time
you use this option to sort a table, it may be very slow.)
To determine a table's index numbers, use
SHOW INDEX, which displays a
table's indexes in the same order that
myisamchk sees them. Indexes are numbered
beginning with 1.
If keys are not packed (
they have the same length, so when
myisamchk sorts and moves records, it
just overwrites record offsets in the index. If keys are
myisamchk must unpack key blocks first,
then re-create indexes and pack the key blocks again. (In
this case, re-creating indexes is faster than updating
offsets for each index.)