为什么mySQL索引基数可能会从> 0变为null?

时间:2013-10-08 21:02:49

标签: mysql indexing cardinality

我在Centos上运行mySQL 5.6,并且遇到了性能问题。尝试正确设置空表索引的基数时,有一些错误的开始。但是一旦完成并且我的空表的索引设置正确(为0,而不是NULL),我就开始填充表格。

我定期检查,看到基数稳步上升。然后我开始了另一份工作,看着数字继续增长。最后,我同时启动了两个作业(我应该提到,这些作业与服务器进程通信,通过与mySQL的单个连接来串行化并发请求)。几乎立即我看到基数开始变为NULL。

我可以列出更多信息(如果被问到的话,还会有),但我想知道在插入表时,索引的基数是否突然变为空的任何正当理由。

2 个答案:

答案 0 :(得分:0)

你使用myisam?您需要使用命令

填充它
Analyze table yourtable 

要填充它,mysql需要注意生成的唯一索引是主键

答案 1 :(得分:0)

基数在NULL

之后显示为ALTER TABLE ... DISABLE KEYS;

确保按键已启用! ALTER TABLE ... ENABLE KEYS;