6.6.4.4 使用 myisamchk 获取表信息
myisamchk 支持以下选项,用于执行除表检查和修复外的操作:
-
--analyze
,-a
Command-Line Format --analyze
分析键值的分布。这可以提高 join 性能,使 join 优化器更好地选择join 表的顺序和使用哪些索引。要获取关于键分布的信息,请使用myisamchk --description --verbose
tbl_name
命令或语句SHOW INDEX FROM
。tbl_name
-
--block-search=
,offset
-b
offset
Command-Line Format --block-search=offset
Type 数字 找到偏移量给定的块所属的记录。
-
--description
,-d
Command-Line Format --description
打印表的描述信息。指定
--verbose
选项一次或两次可以获得更多信息。请参阅第6.6.4.5节,“使用myisamchk获取表信息”。 -
--set-auto-increment[=
,value
]-A[
value
]强制为新记录设置自增编号,以从给定的值开始(或更高,如果表中已经存在具有相同自增值的记录)。如果未指定
value
,则新记录的自增编号将从当前表中的最大值加1开始。 -
--sort-index
,-S
Command-Line Format --sort-index
对索引树块进行高低顺序排序。这可以优化 seeks 和使使用索引的表扫描更快。
-
--sort-records=
,N
-R
N
Command-Line Format --sort-records=#
Type 数字 根据特定的索引对记录进行排序。这使得您的数据更加局部化,并可能加速基于范围的
SELECT
和ORDER BY
操作,这些操作使用了该索引。 (第一次使用该选项对表进行排序可能非常慢。)要确定表的索引号,可以使用SHOW INDEX
,它显示了表的索引,以便与myisamchk相同顺序。索引从1开始编号。如果键未压缩(
PACK_KEYS=0
),它们具有相同的长度,因此当myisamchk对记录进行排序和移动时,它只覆盖记录在索引中的偏移量。如果键已压缩(PACK_KEYS=1
),则myisamchk必须先解压键块,然后重新创建索引并再次压缩键块。 (在这种情况下,重新创建索引比更新每个索引的偏移量更快。)